Neuronová síť

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Neuronová síť je jeden z výpočetních modelů používaných v umělé inteligenci. Jejím vzorem je chování odpovídajících biologických struktur. Umělá neuronová síť je struktura určená pro distribuované paralelní zpracování dat.

Skládá se z umělých (nebo také formálních) neuronů, jejichž předobrazem je biologický neuron. Neurony jsou vzájemně propojeny a navzájem si předávají signály a transformují je pomocí určitých přenosových funkcí. Neuron má libovolný počet vstupů, ale pouze jeden výstup.

Neuronové sítě se používají mimo jiné i pro rozpoznávání a kompresi obrazů nebo zvuků, předvídání vývoje časových řad (např. burzovních indexů), někdy dokonce k filtrování spamu. V lékařství slouží k prohlubování znalostí o fungování nervových soustav živých organismů. Například perceptronová síť vznikla původně jako simulace fyziologického modelu rozpoznávání vzorů na sítnici lidského oka.

Model umělého neuronu[editovat | editovat zdroj]

Model umělého neuronu

Je popsána celá řada modelů neuronů. Od těch velmi jednoduchých používající nespojité přenosové funkce, až po velmi složité popisující každý detail chování neuronu živého organismu. Jedním z nejpoužívanějších je model popsaný McCullochem a Pittsem:

Y=S(\sum_{i=1}^N (w_i{}x_i{}) + \Theta)

kde:

  • x_i{} jsou vstupy neuronu
  • w_i{} jsou synaptické váhy
  • \Theta je práh
  • S(x) je přenosová funkce neuronu (někdy aktivační funkce)
  • Y je výstup neuronu

Velikost vah w_i{} vyjadřuje uložení zkušeností do neuronu. Čím je vyšší hodnota, tím je daný vstup důležitější. V biologickém neuronu práh \Theta označuje prahovou hodnotu aktivace neuronu. Tzn. je-li \sum_{i=1}^N (w_i{}x_i{}) menší než práh, neuron je v pasivním stavu.

Podle povahy vstupních (a výstupních) dat můžeme neurony dělit na binární a spojité. Podle typu neuronu a typu neuronové sítě se použije vhodná přenosová funkce.

Přenosové funkce[editovat | editovat zdroj]

Skoková přenosová funkce
Sigmoidální přenosová funkce
  • Skoková přenosová funkce vrací pro vstup menší než daná mez nulu, pro větší vrací jedna. f(x)=0 pro x<\Theta a f(x)=1 pro x\geq\Theta
  • Sigmoidální přenosová funkce je ve tvaru f(x)=\frac{1}{1+e^{-kx}}. Její hodnoty se blíží v minus nekonečnu nule a v nekonečnu jedničce. Pro nulu je hodnota 0,5. Výhodou sigmoidální přenosové funkce oproti skokové je existence spojité první derivace v každém bodě.
Přenosová funkce hyperbolické tangenty
Přenosová funkce radiální báze
  • Přenosová funkce hyperbolické tangenty je ve tvaru f(x)=\frac{2}{1+e^{-kx}}-1.Její hodnoty se blíží -1 v minus nekonečnu a jedničce v nekonečnu. Pro nulu je hodnota 0.
  • Přenosová funkce radiální báze je ve tvaru f(x)=e^{-kx^2}. Její hodnoty se blíží nule v minus nekonečnu a nule v nekonečnu. Pro nulu je maximální hodnota 1.

Architektury sítě[editovat | editovat zdroj]

Podle způsobů propojení neuronů a jejich přenosové funkce existuje více různých architektur neuronových sítí, například:

Učení neuronové sítě[editovat | editovat zdroj]

Cílem učení neuronové sítě je nastavit síť tak, aby dávala přesné výsledky. V biologických sítích jsou zkušenosti uloženy v dendritech. V umělých neuronových sítích jsou zkušenosti uloženy v jejich matematickém ekvivalentu - váhách. Učení neuronové sítě rozlišujeme na učení s učitelem a učení bez učitele. Fáze učení neuronové sítě bývá nazývána adaptivní. Po naučení neuronové sítě je síť ve fázi vybavování.

Učení s učitelem[editovat | editovat zdroj]

Podrobnější informace naleznete v článku Učení s učitelem.

Podobně jako v biologických sítích je zde využita zpětná vazba. Neuronové síti je předložen vzor. Na základě aktuálního nastavení je zjištěn aktuální výsledek. Ten porovnáme s vyžadovaným výsledkem a určíme chybu. Poté spočítáme nutnou korekci (dle typu neuronové sítě) a upravíme hodnoty vah či prahů, abychom snížili hodnotu chyby. Toto opakujeme až do dosažení námi stanovené minimální chyby. Poté je síť adaptována.

Učení bez učitele[editovat | editovat zdroj]

Podrobnější informace naleznete v článku Učení bez učitele.

Při učení bez učitele nevyhodnocujeme výstup. Při tomto učení nám výstup není znám. Síť dostává na vstup sadu vzorů, které si sama třídí. Buď si vzory třídí do skupin a reaguje na typického zástupce, nebo si přizpůsobí topologii vlastnostem vstupu.

Externí odkazy[editovat | editovat zdroj]