Neuonové sítě Doc. RND. Iveta Mázová, CSc. Kateda teoetcké nfomatky Matematcko-fyzkální fakulta Unvezty Kalovy v Paze
Neuonové sítě Kohonenovy mapy a hybdní modely Doc. RND. Iveta Mázová, CSc. Kateda teoetcké nfomatky Matematcko-fyzkální fakulta Unvezty Kalovy v Paze
Kohonenovy mapy Teuvo Kohonen fonetcký psací stoj Topologcké okolí NE j (O) NE j (t 1 ) I. Mázová: Neuonové sítě (NAIL002) 3
Kohonenovy mapy (2) x 1 x N výstupní neuony Učení: bez učtele Rozpoznávání Použtí: Fonetcký psací stoj Ekonome I. Mázová: Neuonové sítě (NAIL002) 4
Kohonenův model algotmus učení Motvace: Mřížka, na níž jsou uspořádané neuony, umožňuje dentfkac nejblžších sousedů daného neuonu v půběhu učení se aktualzují váhy příslušných neuonů jejch sousedů Cíl: sousední neuony by měly také eagovat na velm podobné sgnály I. Mázová: Neuonové sítě (NAIL002) 5
Kohonenůvmodel algotmus učení (2) Poblém (1-dm): Rozčlenění n ozměného postou pomocí jednoozměného řetězce Kohonenovských neuonů Neuony uspořádané do posloupnost a označené od 1 do n x I. Mázová: Neuonové sítě (NAIL002) 6
Kohonenůvmodel algotmus učení (3) Poblém (1-dm pokačování): Jednoozměná mřížka neuonů: Každý neuon dostává n ozměný vstup a na základě n ozměného váhového vektou w = w,, spočítá svou exctac ( ) 1 K w n Cíl: specalzace každého neuonu na jnou oblast vstupního postou (tuto specalzac chaaktezuje maxmální exctace příslušného neuonu po vzoy z dané oblast) I. Mázová: Neuonové sítě (NAIL002) 7 x
Kohonenůvmodel algotmus učení (4) Poblém (1-dm pokačování): Kohonenovské neuony počítají Eukldovskou vzdálenost mez vstupem x a příslušným váhovým vektoem w nejblžšímu neuonu bude odpovídat maxmální exctace I. Mázová: Neuonové sítě (NAIL002) 8
Kohonenůvmodel algotmus učení (5) Defnce okolí: V jednoozměné Kohonenově mapě patří do okolí neuonu k s poloměem 1 neuony k 1 a k + 1 Neuony na obou koncích jednoozměné Kohonenovy mapy mají asymetcké okolí V 1 ozměné Kohonenově mapě patří do okolí neuonu k o poloměu všechny neuony, kteé jsou od k vzdáleny až o pozc doleva č dopava Obdobně po víceozměné Kohonenovy mapy a zvolenou metku na mřížce (čtvecová, hexagonální, ) I. Mázová: Neuonové sítě (NAIL002) 9
Kohonenůvmodel algotmus učení (6) Funkce lateální nteakce Φ(,k): ~ síla lateální vazby mez neuony a k během učení Příklad: Φ(,k)=1 z okolí k s poloměem a Φ(,k)=0 ostatní Funkce mexckého klobouku a další I. Mázová: Neuonové sítě (NAIL002) 10
Kohonenovy samooganzující se příznakové mapy: algotmus Kok 1: Zvol hodnoty vah mez N vstupmín a M výstupním neuony jako malé náhodné hodnoty. Zvol počáteční polomě okolí a funkc lateální nteakce Φ. Kok 2: Předlož nový ténovací vzo. Kok 3: Spočítej vzdálenost d j mez vstupním a váhovým vektoem po každý výstupní neuon j pomocí: d j = N 1 = 0 () t w () t ( x ) Kde x (t) je vstupem neuonu v čase t a w j (t) je váhou synapse ze vstupního neuonu k výstupnímu neuonu j v čase t. Tuto vzdálenost lze upavt váhovým koefcentem a předat kompetční vstvě. j I. Mázová: Neuonové sítě (NAIL002) 11 2
Kohonenovy samooganzující se příznakové mapy: algotmus (2) Kok 4: Vybe (např. pomocí lateální nteakce) takový výstupní neuon c, kteý má mnmální d j a označ ho jako vítěze. Kok 5: Váhy se aktualzují po neuon c a všechny neuony v okolí defnovaném pomocí N c. Nové váhy jsou: w j (t+1) = w j (t) + α(t) Φ(c,j) ( x (t) w j (t) ) Po j N c ; 0 N-1 α(t) je vglanční koefcent ( 0 < α(t) < 1), kteý klesá v čase (vglance ~ bdělost). I. Mázová: Neuonové sítě (NAIL002) 12
Kohonenovy samooganzující se příznakové mapy: algotmus (3) Po volbu α(t) by mělo platt: α Př pocesu učení tak vítězný neuon upaví svůj váhový vekto směem k aktuálnímu vstupnímu vektou. Totéž platí po neuony v okolí vítěze. Hodnota funkce Φ(c,j) klesá s ostoucí vzdáleností neuonů od středu okolí N c. Kok 6: Přejd ke Koku 2. () 2 t α () t < = t = 1 t = 1 I. Mázová: Neuonové sítě (NAIL002) 13
Analýza konvegence ~ stablta řešení a uspořádaný stav Stablta řešení za předpokladu, že síť už dospěla do jstého uspořádaného stavu: 1) Jednoozměný případ: a) nteval [a,b], 1 neuon s váhou x, neuvažováno okolí: a F 1 x F 2 b konvegence x do středu [a,b] I. Mázová: Neuonové sítě (NAIL002) 14
Analýza konvegence ~ stablta řešení a uspořádaný stav (2) Adaptační pavdlo: x n = x n-1 + η ( ξ x n-1 ) x n, x n-1 váhy v čase n a n-1 ξ... náhodně zvolené číslo z ntevalu [ a, b ] Po 0 < η <1nemůže posloupnost x 1,x 2, opustt [ a, b] Omezená je očekávaná hodnota x váhy x dx Očekávaná hodnota devace x v čase je nulová: = 0 dt (jnak by mohlo být x < a anebo x > b ) dx a + b Potože: = η ( ξ x ) = η x dt 2 bude: x = ( a + b ) 2 I. Mázová: Neuonové sítě (NAIL002) 15
Analýza konvegence ~ stablta řešení a uspořádaný stav (3) b) nteval [a,b], n neuonů s vaham x 1, x 2,, x n neuvažováno okolí, váhy jsou uspořádány monotónně: a < x 1 <x 2 < <x n <b konvegence vah k b a x = a + ( 2 1 ) 2 n I. Mázová: Neuonové sítě (NAIL002) 16
Analýza konvegence ~ stablta řešení a uspořádaný stav (4) 2) Dvouozměný případ: nteval [ a, b ] [ c, d ], n n neuonů neuvažováno okolí, monotónní uspořádání vah: j k w < w po j w 1 j 2 < w 1 kj 2 po j < < k k Redukce poblému na dva jednoozměné I. Mázová: Neuonové sítě (NAIL002) 17
Analýza konvegence ~ stablta řešení a uspořádaný stav (5) 2) Dvouozměný případ (pokačování): n j Nechť w j = w1 označuje půmě vah neuonů v n = 1 j tém sloupc j k j Potože w1 < w1 po j < k, budou w 1 monotónně uspořádané: a < w1 < w1 < K < b 1 2 Půmě vah bude v pvním sloupc osclovat kolem 1 očekávané hodnoty w 1 Podobně po neuony v každém řádku konvegence ke stablnímu stavu (po dostatečně malý paamet učení) 1 1 I. Mázová: Neuonové sítě (NAIL002) 18
Analýza konvegence ~ stablta řešení a uspořádaný stav (6) PROBLÉMY: ozvnutí planání mřížky a podmínky, za kteých k němu dojde metastablní stavy a nevhodná volba funkce lateální nteakce (přílš ychlý pokles) konvegence po 1-dmenzonální případ za předpokladu ovnoměného ozložení a adaptačního plavdla w new k = w + γ ξ old k ( old w ) kde k označuje vítězný neuon a jeho dva sousedy (Cottell & Fot, 1986) I. Mázová: Neuonové sítě (NAIL002) 19 k
Vaanty algotmu učení po Kohonenovy mapy Učení s učtelem: (LVQ ~ Leanng Vecto Quantzaton) LVQ1: Motvace: - ) by měl patřt ke stejné třídě jako nejblžší w nechť c x w je ndex w = ag mn ležícího nejblíž x x { } k ( c ~ vítězný neuon) I. Mázová: Neuonové sítě (NAIL002) 20
I. Mázová: Neuonové sítě (NAIL002) 21 Vaanty algotmu učení po Kohonenovy mapy (2) LVQ1 (pokačování): adaptační pavdla ( 0 < α(t) < 1 ): ( ) ( ) ( ) ( ) ( ) [ ] ( ) () () () () [ ] ( ) ( ) c t w t w w x t w t x t t w t w w x t w t x t t w t w c c c c c c c c = + = + + = + jestlže 1 jsou klasfkov ány jnak a jestlže 1 jsou klasfkov ány stejně a jestlže 1 α α
Vaanty algotmu učení po Kohonenovy mapy (3) LVQ2.1: Motvace: adaptace dvou nejblžších sousedů současně Jeden z nch musí patřt ke spávné třídě a duhý k nespávné Navíc musí být x z okolí dělcí nadplochy mez w a w j (~ z okénka ) Je-l d (esp. d j ) Eukldovská vzdálenost mez x a w x w j (esp. mez a ), lze okénko defnovat pomocí vztahu: d d j 1 mn, > s, kde s = d j d 1 + (dopoučované hodnoty w (~ šířky okénka ): 0.2 0.3 ) x w w I. Mázová: Neuonové sítě (NAIL002) 22
Vaanty algotmu učení po Kohonenovy mapy (4) LVQ2.1 (pokačování): adaptační pavdla ( 0 < α(t) < 1 ): w t + 1 = w t α t x t w j t + 1 = w j t + α t x t w a w j leží nejblíže k přtom x a patří ke stejné třídě a a w w x j patřík ůzným třídám x x ( ) ( ) ( )[ ( ) w ( )] t ( ) () () () w () t je z okénka [ ] I. Mázová: Neuonové sítě (NAIL002) 23 j
Vaanty algotmu učení po Kohonenovy mapy (5) LVQ3 (motvace): apoxmace ozložení tříd a stablzace řešení adaptační pavdla ( 0 < α(t) < 1 ): w t + 1 = w t α t x t w j t + 1 = w j t + α t x t w w w w j x x x x ( ) ( ) ( )[ ( ) w ( )] t ( ) () () () w () t [ ] a leží nejblíže k ; přtom a j patříke stejné třídě a a patřík ůzným třídám a je z okénka w k ( t + 1) = w k ( t ) + εα ( t )[ x ( t ) w k ( t )] po k {, j } jestlže, w w patří do stejné třídy x j I. Mázová: Neuonové sítě (NAIL002) 24 j
Vaanty algotmu učení po Kohonenovy mapy (6) LVQ3 (pokačování): volba paametů: 0.1 ε 0.5 0.2 w 0.3 I. Mázová: Neuonové sítě (NAIL002) 25
Vaanty algotmu učení po Kohonenovy mapy (7) Další vaanty: Vícevstvé Kohonenovy mapy Stom abstakce Sítě se vstřícným šířením (Countepopagaton) Učení s učtelem dvě fáze učení Kohonenovská (klastovací) vstva Gossbegovská vstva (adaptace vah jen po vítězné neuony z Kohonenovské vstvy I. Mázová: Neuonové sítě (NAIL002) 26
Sítě se vstřícným šířením výstupní neuony y 1 y M Učení: s učtelem Rozpoznávání Použtí: Heteoasocatvní paměť vstupní neuony x 1 x N I. Mázová: Neuonové sítě (NAIL002) 27
Učící algotmus po sítě se vstřícným šířením (1) Kok 1: Zvolte náhodné hodnoty synaptckých vah. Kok 2: Předložte nový ténovací vzo ve tvau (vstup, požadovaný výstup). Kok 3: Vybete v Kohonenově vstvě neuon c, jehož synaptcké váhy nejlépe odpovídají předloženému vzou x ( t). Po tento neuon tedy bude platt, že vzdálenost e k mez příslušným váhovým vektoem v k ( t) a předloženým vzoem x ( t) je mnmální. Použít lze např. Eukldovskou metku, potom: e c = mn k e k = mn k ( x () t v () t ) k 2 I. Mázová: Neuonové sítě (NAIL002) 28
Učící algotmus po sítě se vstřícným šířením (2) Kok 4: Aktualzujeme váhy v k mez vstupním neuonem a neuony Kohonenovské vstvy, kteé se nacházejí v okolí N c neuonu c tak, aby lépe odpovídaly předloženému vzou x t : v k α (t), kde 0 < α (t) < 1, je paamet učení po váhy mez vstupní a Kohonenovskou vstvou, kteý klesá v čase. t představuje současný a t + 1 následující kok učení. () ( t + 1) = v ( t) + α( t) ( x ( t) v ( t) ) k k I. Mázová: Neuonové sítě (NAIL002) 29
Učící algotmus po sítě se vstřícným šířením (3) Kok 5: Aktualzujte váhy w c mez vítězným neuonem c z Kohonenovské vstvy a neuony Gossbegovské vstvy tak, aby výstupní vekto y lépe odpovídal požadované odezvě d : w cj (t) je váha synaptckého spoje mez c-tým neuonem Kohonenovské vstvy a j-tým neuonem Gossbeovské vstvy v čase t,w cj (t + 1) označuje hodnotu této synaptcké váhy v čase t + 1. β je kladná konstanta ovlvňující závslost nové hodnoty synaptcké váhy na její hodnotě v předchozím koku učení. Kladná konstanta γ představuje paamet učení vah mez Kohonenovskou a Gossbegovskou vstvou, z c označuje aktvtu vítězného neuonu Kohonenovské vstvy. Kok 6: Přejděte ke koku 2. w cj ( t + 1) = ( 1 β ) wcj ( t) + γ zcd j I. Mázová: Neuonové sítě (NAIL002) 30
RBF-sítě (Radal Bass Functons) Hybdní achtektua (Moody & Daken) Učení s učtelem z 1 z2 z 3 z n lneání asocáto w 11 w 1n x 1 x 2 x 3 x n Kohonenovská vstva n neuonů s Gaussovskou přenosovou funkcí vstupní neuony I. Mázová: Neuonové sítě (NAIL002) 31
RBF-sítě (Radal Bass Functons) Každý neuon j počítá svůj výstup g j (t) podle: x w 1, K, w m g j ( x) = exp exp... vstupní vekto k ( x w ) j 2 j 2σ 2 ( x w ) 2σ... váhové vektoy skytých neuonů σ, K 1,σ m... konstanty (nastavené např. podle vzdálenost mez příslušným váhovým vektoem a jeho nejblžším sousedem) k 2 k 2 I. Mázová: Neuonové sítě (NAIL002) 32
I. Mázová: Neuonové sítě (NAIL002) 33 RBF-sítě (Radal Bass Functons) výstup každého sytého neuonu je nomován vzájemné popojení všech neuonů váhy z 1,, z m lze nastavt např. pomocí algotmu zpětného šíření: d... požadovaný výstup p... počet ténovacích vzoů γ... paamet učení ( ) ( ) ( ) = Δ = = = n p n p p z x g d x g z E z d z x g E 1 2 1 2 1 γ
ART Adaptve Resonance Theoy (Capente & Gossbeg) výstup x 0 x 1 x 2 vstup I. Mázová: Neuonové sítě (NAIL002) 34
ART Adaptve Resonance Theoy (2) (Capente & Gossbeg) ART 1: Bnání vstupy, učení bez učtele Lateální nhbce po učení výstupního neuonu s maxmální odezvou Váhy po zpětnou vazbu (z výstupních neuonů směem ke vstupním) po poovnání skutečné podobnost s ozpoznaným vzoem I. Mázová: Neuonové sítě (NAIL002) 35
ART Adaptve Resonance Theoy (3) (Capente & Gossbeg) ART 1 (pokačování): Vglanční test paamet bdělost Mechansmus po vypnutí výstupního neuonu s maxmální odezvou stablta plastcta sítě síť má velké poblémy př jen tochu zašuměných vzoech naůstá počet ukládaných vzoů I. Mázová: Neuonové sítě (NAIL002) 36
ART 1 algotmus učení Kok 1: Incalzace t j ( 0 ) = 1 0 N-1 b j ( 0 ) = 1 / ( 1 + N ) 0 j M-1 ρ 0 ρ 1 b j ( t ) ~ váha mez vstupním neuonem a výstupním neuonem j v čase t t j ( t ) ~ váha mez výstupním neuonem j a vstupním neuonem v čase t (učují vzo specfkovaný výstupním neuonem j ) ρ ~ páh bdělost (učuje, jak blízko musí být předložený vstup k uloženému vzou - aby mohly patřt do stejné kategoe) I. Mázová: Neuonové sítě (NAIL002) 37
ART 1 algotmus učení (2) Kok 2: Předlož nový vstup Kok 3: Spočítej aktvac výstupních neuonů μ j μ j N = 1 = 0 b j ( t ) x ; 0 j M 1 ~ výstup výstupního neuonu j x ~ tá složka vstupního vektou ( { 0, 1 } ) Kok 4: Vybe uložený vzo, kteý nejlépe odpovídá předloženému vzou (např. pomocí lateální μ = max μ nhbce): { } j j I. Mázová: Neuonové sítě (NAIL002) 38 j
ART 1 algotmus učení (3) Kok 5: Test bdělost x = N 1 = 0 jestlže přejd ke Koku 7 jnak přejd ke Koku 6 x T x x a N 1 = 0 t j x Kok 6: Zmazení nejlépe odpovídajícího neuonu > ρ T výstup neuonu j* vybaného v Koku 4 je dočasně nastaven na nulu (a neúčastní se maxmalzace v Koku 4). Poté přejd ke Koku 4. x I. Mázová: Neuonové sítě (NAIL002) 39 =
ART 1 algotmus učení (4) Kok 7: Aktualzace nejlépe odpovídajícího neuonu t t + 1 = t t x b j j ( ) ( ) ( t + 1) Kok 8: Přejd ke Koku 2 a opakuj = 0.5 () t (Předtím znovu zapoj všechny neuony zmazené v Koku 6) j + t j N 1 = 0 () t I. Mázová: Neuonové sítě (NAIL002) 40 t x j x
Kaskádová koelace (Fahlman & Lebee, 1990) ~ obustní ostoucí achtektua Systém začíná poces učení s přímým popojením vstupů na výstup Postupně jsou přdávány skyté neuony Vstupy každého nového neuonu jsou popojeny se všem původním vstupy se všem dříve vytvořeným neuony I. Mázová: Neuonové sítě (NAIL002) 41
Kaskádová koelace (2) (Fahlman & Lebee, 1990) I. Mázová: Neuonové sítě (NAIL002) 42
Kaskádová koelace (3) (Fahlman & Lebee, 1990) Učení sítě (pobíhá ve dvou fázích): a) V pvní fáz se jž exstující síť adaptuje pomocí algotmu Quckpop Jestlže se do učté doby chyba na výstupu sítě njak podstatně nezmenší, přdá se sít nový neuon Jestlže je aktuální hodnota chyby dostatečně nízká, algotmus končí I. Mázová: Neuonové sítě (NAIL002) 43
Kaskádová koelace (4) (Fahlman & Lebee, 1990) Učení sítě (pokačování): b) Nově přdávaný neuon je ze skupny kanddátů adaptovaných tak, aby maxmalzoval koelac mez svým výstupem a chybou na výstupu sítě přdávaný neuon se naučl nějaký příznak, kteý vysoce koeluje se zbytkovou chybou Vstupní váhy přdávaného neuonu budou zmazeny Doučeny budou váhy od přdávaného neuonu na výstup I. Mázová: Neuonové sítě (NAIL002) 44
Kaskádová koelace (5) (Fahlman & Lebee, 1990) Učení sítě (pokačování): Cílem př učení skytých neuonů je maxmalzovat S: S p = = 1 ( V V )( E E ) p.. počet ténovacích vzoů V.. výstup přdávaného neuonu po tývzo V.. půměný výstup přdávaného neuonu E.. chyba po tývzo E.. půměná chyba I. Mázová: Neuonové sítě (NAIL002) 45
Kaskádová koelace (6) (Fahlman & Lebee, 1990) Učení sítě (pokačování): S w k = p = 1 σ ( E E ) f I, k σ.. znaménko koelace mez přdávaným neuonem a výstupem.. devace přenosové funkce po vzo k.. k tý vstup přdávaného neuonu po vzo f I, I. Mázová: Neuonové sítě (NAIL002) 46