Uczenie II: Samoorganizacja i korekcja błędów

advertisement
Wykład 6
Neuropsychologia komputerowa
Uczenie II
Samoorganizacja i korekcja błędów
Włodzisław Duch
UMK Toruń
Google: W Duch
Uczenie: rodzaje
1. Jak powinien wyglądać idealny system, który się uczy?
2. Jak uczy się człowiek?
Detektory (neurony) mogą
zmieniać lokalne parametry ale
chcemy osiągnąć zmianę
działania całej sieci
przetwarzającej informację.
Rozważymy dwa rodzaje
uczenia, wymagające innych
mechanizmów:
• Uczenie się wewnętrznego modelu środowiska (spontaniczne).
• Uczenie się zadania, postawionego przed siecią (nadzorowane).
• Połączenie jednego i drugiego.
Uczenie działań
Jeden neuron wyjściowy niewiele może się nauczyć.
Działanie = transformacja sensomotryczna, percepcja-działanie.
Stymulacja i wybór odpowiedniego działania, interpretacji,
oczekiwań, planu ...
Jakiego rodzaju formy uczenia pozwala to wyjaśnić?
Jakie formy uczenia wymagają dodatkowych mechanizmów?
Symulacja
Wybieramy Self_org.proj z Ch4.
Na siatce 5x5 mamy albo jedną linię
poziomą lub pionową (10 wzorców),
albo kombinację dwóch linii (45
wzorców).
Korelacja pomiędzy wszystkimi
pikselami dla całej bazy wzorców da
jednakową wartość.
Uczenie jest możliwe tylko dla
poszczególnych linii.
Cud: reguła Hebba + kWTA
wystarcza by sieć nauczyła się
tworzyć prawidłowe reprezentacje
wewnętrzne!
Symulacja
4x5 = 20 neuronów ukrytych, kWTA.
Po nauczeniu (ok. 30 epok prezentacji
wszystkich par linii), pojawiają się
jednostki selektywnie działające dla
pojedynczych linii, a więc tylko 2 dla
dwóch, kombinatoryczna reprezentacja!
Początkowe reakcje jednostek na wzorce
są przypadkowe, ale zwycięzca się szybko
wzmacnia. Zostaje trochę (5) nieaktywnych
jednostek, potrzebnych do nauczenia się
nowych wzorców.
Jest samoorganizacja, nie ma jednak
reprezentacji topograficznej, bo sąsiednie
jednostki reagują na całkiem inne cechy.
Dodatkowe okienko: ile unikalnych wzorców wewnętrznych dla
pojedynczych linii: 10 to znaczy, że wszystkie prawidłowe.
Mapy senso-motoryczne
Samoorganizację modeluje się na wiele sposobów; proste modele
pomocne są w wyjaśnieniu jakościowych cech map topograficznych.
Rys za:
P.S. Churchland, T.J.
Sejnowski,
The computational
brain.
MIT Press, 1992
Mapy motoryczne i somatosensoryczne
To bardzo uproszczony obraz, w rzeczywistości większość
neuronów jest wielomodalna, neurony w korze ruchowej reagują na
bodźce czuciowe, słuchowe i wzrokowe (neurony lustrzane), wiele
wyspecjalizowanych obwodów percepcji-działania-nazywania.
Reprezentacja palców: plastyczność
Ręka
Przed
stymulacją
Twarz
Po
stymulacji
Najprostsze modele
SOM lub SOFM (Self-Organized Feature Mapping) – self-organizing
feature map, jeden z najbardziej popularnych modeli.
Jak mapy topograficzne mogą się utworzyć w mózgu?
Lokalne połączenia neuronów tworzą grupy silnie ze sobą
oddziaływujących, słabiej na większe odległości i hamujących
pobliskie grupy.
Historia:
von der Malsburg i Willshaw (1976), uczenie konkurencyjne,
Hebbowskie z potencjałem „Mexican hat”, głównie układ wzrokowy.
Amari (1980) – modele warstwowe tkanki neuronowej.
Kohonen (1981) – uproszczenie bez hamowania; tylko dwa
niezbędne czynniki: konkurencja i kooperacja.
SOM: idea
Dane: wektory XT = (X1, ... Xd) z d-wymiarowej przestrzeni.
Siatka węzłów z lokalnymi procesorami (neuronami) w każdym węźle.
Lokalny procesor # j ma d parameterów adaptacyjnych W(j).
Cel: dostosuj parametry W(j) tak by modelować klastry w p-ni X.
Trenowanie SOM
o
x=dane
o=pozycje wag
neuronów
x
o
o
o
o x
o
o
x
o
xo
N-wymiarowa
przestrzeń danych
o
o
o
wagi wskazują
na punkty w N-D
siatka neuronów
w 2-D
Demonstracje uczenia konkurencyjnego w Java:
http://www.neuroinformatik.ruhr-uni-bochum.de/
ini/VDM/research/gsn/DemoGNG/GNG.html
SOM algorithm: competition
Nodes should calculate similarity of input data to their parameters.
Input vector X is compared to node parameters W.
Similar = minimal distance or maximal scalar product.
Competition: find node j=c with W most similar to X.
XW
( j)

 X
i
 Wi
( j)

2
i
c  arg min X  W ( j )
j
Node number c is most similar to the input vector X
It is a winner, and it will learn to be more similar to X, hence this is
a “competitive learning” procedure.
Brain: those neurons that react to some signals pick it up and learn.
SOM algorithm: cooperation
Cooperation: nodes on a grid close to the winner c should behave
similarly. Define the “neighborhood function” O(c):

h( r, rc , t )  h0 (t )exp  r  rc /  c 2 (t )
2

t – iteration number (or time);
rc – position of the winning node c (in physical space, usually 2D).
||r-rc|| – distance from the winning node, scaled by c(t).
h0(t) – slowly decreasing multiplicative factor
The neighborhood function determines how strongly the
parameters of the winning node and nodes in its neighborhood will
be changed, making them more similar to data X
SOM algorithm: dynamics
Adaptation rule: take the winner node c, and those in its
neighborhood O(rc), change their parameters making them more
similar to the data X
For i  O  c 
W( i )  t  1  W( i )  t   h  ri , rc ,t   X  t   W( i )  t  
Select randomly new sample vector X, and repeat.
Decrease h0(t) slowly until there will be no changes.
Result:
• W(i) ≈ the center of local clusters in the X feature space
• Nodes in the neighborhood point to adjacent areas in X space
Mapy i zniekształcenia
Initial distortions may slowly disappear or may get frozen ... giving the
user a completely distorted view of reality.
Demonstracje za pomocą GNG
Growing Self-Organizing Networks demo
Parametery programu SOM:
t – iteracje
e(t) = ei (ef / ei )t/tmax
(t) = i (f / i )t/tmax
określa krok uczenia
określa rozmiar sąsiedztwa

h(r, rc , t, e ,  )  e (t )exp  r  rc /  2 (t )
2
Mapy 1x30 pokazują formację krzywych Peano.
Można spróbować odtworzyć mapy Penfielda.

Mapowanie kWTA CPCA
Niestety uczenie Hebbowskie nie wystarczy by nauczyć się dowolnej
relacji pomiędzy wejściem i wyjściem.
Przykład z
Rozdziału 5,
opisany w 5.2.
Ch5, pat_assoc.proj
Symulacje dla 3
zadań, od łatwego
do niemożliwego,
bo wszystkie
korelacje <xiyj> są
identyczne.
Takie zadanie jest
nieseparowalne.
Uczenie zadań
Z takim zadaniem nie mamy trudności, a uczenie Hebbowskie nie
wystarczy by się go nauczyć; nie można się nauczyć dowolnej relacji
pomiędzy wejściem i wyjściem.
Może to zrobić uczenie oparte na korekcji błędów.
Skąd bierze się cele? Od „nauczyciela”, lub konfrontując z
przewidywaniami modelu wewnętrznego.
a) jawny sygnał
wyjściowy i jego
korekta (typowe);
b) wewnętrzne
oczekiwanie i korekta;
c) oczekiwania
rezultatów ruchu
d) rekonstrukcja
wewnętrzna
Niezgodność modalności
Reguła Delta
Idea:
wagi wik należy tak
korygować by zmieniały się
mocno dla dużych błędów i
nie ulegały zmianie jeśli
błędu nie ma, więc
Dwik ~ ||tk – ok|| si
Zmiana wagi jest
proporcjonalna do wielkości
pobudzenia przez wejścia si
Faza + jest prezentacją
celu, faza – wynikiem sieci.
To jest reguła Delta.
Oczekiwania mają się zrównać z
generowanymi sygnałami.
Przypisywanie zasług
Credit/blame assignment
Dwik =e ||tk – ok|| si
Błąd jest lokalny, dla wzorca k.
Jeśli powstał duży błąd i wyjście ok jest znacznie mniejsze niż
oczekiwane to neurony wejściowe o dużej aktywności jeszcze ją
zwiększą. Jeśli wyjście ok jest znacznie większe niż oczekiwane to
neurony wejściowe o dużej aktywności znacznie ją zmniejszą.
Np. wejścia si to ilość kalorii w różnym pożywieniu, wyjście to
umiarkowana waga; za dużo to trzeba zmniejszyć wysokokaloryczne
wagi (spożycie), za mało to trzeba zwiększyć.
Reprezentacje tworzone przez proces minimalizacji błędu są wynikiem
najlepszego przypisania zasług do wielu jednostek, a nie największej
korelacji (jak w modelach Hebbowskich).
Uczenie zadań
Chcemy: uczenie Hebbowskie i uczenie wykorzystujące korekcję
błędów, jednostki ukryte i biologicznie uzasadnione modele.
Kombinacja korekcji błędów i korelacji da się uzgodnić z tym co
wiadomo o LTP/LTD
Dwij = e [  xi yj  +   xi yj   ]
Hebbowskie sieci modelują stany świata ale nie percepcje-działanie.
Korekcja błędu może się nauczyć mapowania stanów na działania.
Niestety reguła delta dobra jest tylko dla jednostki wyjściowej, a nie
ukrytej, bo trzeba jej podać cel.
Metoda wstecznej propagacji błędu potrafi uczyć jednostki ukryte.
Ale nie ma dla niej dobrego uzasadnienia biologicznego ... .
Symulacje
Wybieramy z Ch5
pat_assoc.proj,
Opis: Rozdz. 5. 5
Reguła Delta potrafi się nauczyć
trudnych odwzorowań,
przynajmniej teoretycznie ...
Na początku jest CPCA;
można sprawdzić, że żadne
parametry nie pomagają;
ale po przełączeniu na Delta
też się nie udaje ...
Co robić? Trzeba się nauczyć
propagacji błędów.
Download