Neurale Netwerken Kunstmatige Intelligentie Rijksuniversiteit Groningen Mei 2005 hc 5 • Hopfield netwerken • boek: H7 overzicht • het idee 7.1 – 7.3 • het netwerk 7.4, 7.9 • de energie 7.4 • het leren 7.5 – 7.7 • het “traveling sales person” probleem 7.8 herinneren in een Hopfield netwerk • als iets wordt aangeboden dat lijkt op een ‘T’, zegt het netwerk dat het een ‘T’ is • analoog met vage herinnering die wordt geassocieerd met het volledige plaatje, evolution under clamp liedje of wat dan ook fig. 7.12 stored pattern sensory cues stored patterns are attractors • #inputs = #outputs input: sensory cue output: stored pattern • opnieuw energie minimaliseren, stable states • dit keer is elk minimum een goede oplossing • basins of attraction, elke input geeft als output de “stored pattern” die het dichtst bij is The ball comes to rest in the same place each time, because it “remembers” where the bottom of the bowl is. • huidige state x(t) en opgeslagen patterns x1, x2, ..., xn zijn vectoren • het systeem evolueert van x(0) naar één van de stable states x1, x2, ..., xn • xi (1 ≤ i ≤ n) correspondeert met een energie minimum Ei (basin of attraction) (0,0) x(0) x1 = x(4) x(1) x(3) x(2) overzicht • het idee 7.1 – 7.3 • het netwerk 7.4, 7.9 • de energie 7.4 • het leren 7.5 – 7.7 • het “traveling sales person” probleem 7.8 van single layer perceptron naar Hopfield net begin met een single layer net met even veel inputs als outputs en full connectivity de volgende verbindingen verdwijnen: input1 – output1, input2 – output2, input3 – output3 recurrente verbindingen worden toegevoegd van single layer perceptron naar Hopfield net de inputs worden onderdeel van de output neuronen van single layer perceptron naar Hopfield net de inputs worden onderdeel van de output neuronen van single layer perceptron naar Hopfield net van single layer perceptron naar Hopfield net symmetrie : ij _ wij w ji geen _ reflexiviteit : i _ wii 0 Hopfield (1982) • aan het begin van elke run wordt er een “sensory cue” aangeboden • de output van een neuron is steeds input voor alle andere neuronen, waardoor de network state kan veranderen • het netwerk convergeert naar een “stored pattern” de state van het netwerk • alle mogelijke states van een Hopfield net met drie neurons • elke state correspondeert met een binair getal • een netwerk met n neuronen heeft 2n states 0 0 0 0 1 0 0 1 2 0 1 0 3 0 1 1 4 1 0 0 5 1 0 1 6 1 1 0 7 1 1 1 uitgewerkt voorbeeld p. 98, 99 stel, de externe input is x(0) = (0, 0, 0) 1 het netwerk bevindt zich in state 0 (0,0,0) en neuron 1 vuurt 1 -2 -2 1 1 3 2 1 Het netwerk bevindt zich nu in state 4 (1,0,0) en neuron 3 vuurt 1 1 -2 -2 1 1 3 2 1 Het netwerk blijft in state 4 (1,0,0) en neuron 2 vuurt 1 1 -2 -2 1 1 3 2 1 Het netwerk bevindt zich nu in state 6 (1,1,0) 1 state 6 is een stable state welk neuron ook vuurt, het netwerk blijft in state 6 1 -2 -2 1 1 3 2 1 de basins of attraction: {4, 2, 0, 5, 7} → 6 {1, 2, 0, 5, 7} → 3 basins of attraction overlappen, waar je terecht komt is afhankelijk van de volgorde waarin de neuronen vuren nondeterminisme 1 1 -2 -2 1 1 3 2 1 overzicht • het idee 7.1 – 7.3 • het netwerk 7.4, 7.9 • de energie 7.4 • het leren 7.5 – 7.7 • het “traveling sales person” probleem 7.8 energie van verbindingen 1 0 hoge eij state verandert 1 - + i j 1 1 lage eij state blijft gelijk eij wij xi x j 1 i j 0 1 energie tabel bij xi , xj Є {0,1} wij positief wij negatief xi xj eij xi xj eij 0 0 0 0 0 0 0 1 0 0 1 0 1 0 0 1 0 0 1 1 -wij 1 1 -wij eij = -wijxixj energie tabel bij xi, xj Є {-1,1} wij positief xi wij negatief xj eij xi xj eij -1 -1 -wij -1 -1 -wij -1 1 wij -1 1 wij 1 -1 wij 1 -1 wij 1 -wij 1 -wij 1 1 eij = -wijxixj afleiding ΔE: E e ij wij xi x j pairs E pairs 1 wij xi x j 2 i, j E 1 1 1 w x x w x x wik xi xk ij i j ki k i 2 ik 2 i 2 i j k E 1 wij xi x j wki xk xi 2 ik i j k E S xk wki xi i E S x k a k __ E ' S x'k a k E E ' E __ xk x'k x'k E xk a k ΔE is in elke situatie negatief, true gradient descent E xk a k ak ≥ 0 neuron k zal “aan” gaan of “aan” blijven Δxk ≥ 0 (Δxk is 0 of 2) ΔE = -Δxkak ≤ 0 ak < 0 neuron k zal “uit” gaan of “uit” blijven Δxk ≤ 0 (Δxk is 0 of -2) ΔE = -Δxkak ≤ 0 (non)determinisme • asynchrone update gaat gepaard met nondeterminisme • bij elke update kiezen welk neuron vuurt • alternatief: synchroon updaten, alle neuronen vuren tegelijk effect van synchrone update • hogere ruimte complexiteit, de vorige en huidige globale state van het netwerk moeten worden opgeslagen • geen overlappende basins of attraction meer eenduidige state transition diagrams, uit elk neuron vertrekt maar één pijl met probability 1: fig. 7.11 • in tegenstelling tot het nondeterministische transition diagram van fig. 7.6 overzicht • het idee 7.1 – 7.3 • het netwerk 7.4, 7.9 • de energie 7.4 • het leren 7.5 – 7.7 • het “traveling sales person” probleem 7.8 leren • one-shot-learning • schaling van {0, 1} naar {-1, 1} N wij v v p 1 p i p j v v wij p i p j v v wij p i p j de Hebb leer regel • Hebb (1949): “When an axon of cell A is near enough to excite cell B and repeatedly or persistently firing it, some growth process or metabolic change takes place in one or both cells such that A’s efficiency as one of the cells firing B, is increased.” • James (1892): When two elementary brain processes have been active together or in immediate succession, one of them recurring, tends to propagate its excitement to the other. • in ANNs: “Als twee cellen dezelfde waarde hebben, wordt de verbinding positiever, als ze verschillende waardes hebben wordt de verbinding negatiever.” Hebb algoritme 1. willekeurig training pattern aanbieden 2. voor elke verbinding: pas <eq. 7.8> toe • • maak positieve weight change als twee cellen dezelfde waarde hebben maak negatieve weight change als twee cellen verschillende waardes hebben wij x x p i p j spurious stable states • inverse patronen, zijn niet echt spurious (arbitraire labels -1 en 1) • daarnaast zijn er andere spurious stable states: mengsels van de opgeslagen patronen • de energie van de spurious stable states is altijd hoger of gelijk aan de opgeslagen patronen (en hun inversen), daar kan je gebruik van maken de analoge versie • Hopfield (1984) • states: N neuronen → hoeken van een ND hyperkubus • sigmoid ipv. threshold; niet alleen de hoeken, maar de hele kubus • leaky integrator dynamics • biologisch plausibel • hardware implementatie • opnieuw: ontsnappen uit locale minima, dit keer dmv. sigmoid overzicht • het idee 7.1 – 7.3 • het netwerk 7.4, 7.9 • de energie 7.4 • het leren 7.5 – 7.7 • het “traveling sales person” probleem 7.8 TSP • zoek de korste route door alle steden • TSP Є class of combinatorial problems exponentiële worst-case-time-complexity • variant op TSP: chip layout design TSP oplossen met Hopfield net applet standaard Hopfield net applet NN vs ML • neurale netwerken zullen nooit hun doel verliezen als onderzoeksmiddel, maar het engineering doel is onzeker, NN verliest steeds vaker van ML en HMM, maar NN heeft één heel groot voordeel: • leren kost veel tijd en computerkracht, maar het eindresultaat is een elegant programma van een paar kB dat binnen 0 seconden het antwoord geeft • de snelheid is vele malen hoger dan bij machine learning technieken volgende college • Kohonen • boek H8