Neuronová síť je matematický model složený z velkého množství vzájemně propojených výpočetních jednotek – neuronů. Síť se neučí pomocí explicitních instrukcí, ale úpravou síly spojení (vah) mezi těmito neurony na základě předložených příkladů.
Standardní (dopředná) neuronová síť je organizována do vrstev:
—
Umělý neuron je v podstatě matematická funkce, která provádí tři kroky:
1. **Vážený součet:** Každý vstup do neuronu má svou **váhu (weight)**, která určuje jeho důležitost. Tyto vstupy se sečtou. 2. **Bias (Zkreslení):** K součtu se přidá konstanta, která neuronu umožňuje lépe se přizpůsobit datům. 3. **Aktivační funkce:** Výsledek projde funkcí (např. ReLU nebo Sigmoid), která rozhodne, zda a jak silně bude neuron "pálit" (aktivovat se) dále do sítě.
—
Učení neuronové sítě je iterační proces, který probíhá ve dvou fázích:
Data projdou sítí od vstupu k výstupu a síť vygeneruje předpověď. Na začátku je tato předpověď náhodná a chybná.
1. **Loss Function (Ztrátová funkce):** Vypočítá se rozdíl (chyba) mezi předpovědí sítě a skutečným správným výsledkem. 2. **Optimizer:** Algoritmus (např. Gradient Descent) projde síť pozpátku a mírně upraví váhy u všech neuronů tak, aby byla chyba příště menší.
Tento proces se opakuje milionykrát (na tzv. epochy), dokud síť nedosahuje vysoké přesnosti.
—
Podle toho, jak jsou neurony propojeny, rozlišujeme různé typy sítí pro různé úlohy:
—
Trénování sítí vyžaduje obrovské množství matematických operací (násobení matic). Proto se místo klasických procesorů (CPU) používají:
Související články:
Tagy: it ai neural-networks deep-learning math data-science