Sieci samoorganizujące się

Transkrypt

Sieci samoorganizujące się
Sieci
samoorganizuj ce si
Jacek Bartman
Po raz pierwszy opracowania na temat sieci samoorganizuj cych z
konkurencj i s siedztwem pojawi y si w latach 70-tych. Ich autorem by fi"ski
uczony Kohonen – sieci Kohonena.
Istota uczenia konkurencyjnego (uczenia z rywalizacj , compettive learning)
po prezentacji wzorca wej)ciowego nast puje okre)lenie neuronu wygrywaj cego (ang.
winner) i tylko ten neuron, ewentualnie grupa s siaduj cych z nim neuronów aktualizuje
swoje wagi, tak by zbli+y, je do aktualnego wzorca.
oczekuje si , +e podobne wzorce wej)ciowe powinny wywo ywa, podobne odpowiedzi
sieci.
Decyduj cy wp yw na sposób funkcjonowania sieci samoorganizuj cej
w trakcie procesu uczenia ma wybór miary odleg o)ci wygrywaj cego neuronu
od wektora wej)ciowego.
Ka+dy neuron (a dok adnie jego wagi) staje si pewnym wzorcem grupy bliskich sobie
sygna ów wej)ciowych, przy czym neurony s siaduj ce ze sob reprezentuj bliskie
sobie, podobne obszary przestrzeni wzorców wej)ciowych.
W ten sposób sie, samoorganizuj ca tworzy topologiczny, zale+ny od przyj tej metryki,
obraz przestrzeni sygna ów wej)ciowych przeniesiony na wewn trzn
struktur
topologiczn sieci.
Jacek Bartman
Najciekawsze efekty uzyskuje si wprowadzaj c metody Kohonena dla sieci
neuronowych dwuwymiarowych,
Jacek Bartman
Topologie sieci
siatka prostok tna
a cuch otwarty
zamkni ty.
Linie
siatka heksagonalna,
a cuch
cz ce neurony okre laj relacje topologiczne.
Ka dy neuron jest powi zany z pozosta ymi neuronami pewn relacj
s siedztwa, która okre la struktur sieci.
Jacek Bartman
Odleg o)ci pomi dzy neuronami mo+na wyznaczy,
w odniesieniu do metryki zdefiniowanej
w przestrzeni sygna ów wej)ciowych,
w odniesieniu topologii samej sieci - pozwala
okre)la, s siedztwo danego neuronu w postaci
zbioru neuronów powi zanych mi dzy sob
odpowiednimi relacjami topologicznymi.
S siedztwo rozpatruje si w uk adach:
jednowymiarowych, neurony s siednie le+ na jednej linii,
dwuwymiarowych, neurony tworz siatk a s siadami s neurony po o+one na
lewo i na prawo oraz u góry i u do u rozpatrywanego neuronu, ewentualnie
jeszcze na przek tnych,
wielowymiarowe, neurony u o+one s
swobodnie w przestrzeniach
wielowymiarowych, a twórca sieci okre)la zasady s siedztwa.
Istotnym parametrem jest okre)lenie ile neuronów obok (s siadów z
lewej, prawej itd.) ma podlega, uczeniu w przypadku zwyci stwa danego
neuronu.
Jacek Bartman
Miara odleg o ci
W procesie samoorganizacji na ka+dym etapie nale+y wy oni, zwyci zc neuron, którego wektor wagowy ró+ni si najmniej od wektora na wej)ciu.
W tym celu nale+y dobra, odpowiedni metryk . Najcz )ciej u+ywa si
miary euklidesowej
iloczynu skalarnego
miary wed ug normy L1
(Manhattan)
miary wed ug normy L
d ( x ,w i ) = x w i =
d ( x ,w i ) =
d ( x ,w i ) =
n
j =1
n
j =1
(x j
wij )
2
(x j • wij )
n
j =1
x j wij
d( x ,wi ) = max x j wij
j
Jacek Bartman
Sieci Kohonena
Sie, Kohonena zosta a nazwana przez jego twórc samoorganizuj cym
odwzorowaniem (Self-Organizing Map - SOM) lub samoorganizuj cym
odwzorowaniem cech (Self-Organizing Feature Map - SOFM) i jest
najbardziej popularnym typem sieci okre)lanej mianem samoorganizuj cej.
W sieci tej mamy do czynienia z uczeniem konkurencyjnym. Sie, ma na celu
utworzenie takiej struktury, która w najlepszy sposób b dzie odwzorowywa a
zale+no)ci w przestrzeni wektorów wej)ciowych.
sie, jest zwykle jednokierunkowa,
ka+dy neuron jest po czony ze wszystkimi sk adowymi N-wymiarowego wektora
wej)ciowego x.
wagi po cze" neuronów tworz wektor wi=[wi1, wi2, ..., win]T.
wektor sygna ów wej)ciowych x jest przed procesem uczenia normalizowany ||x||=1:
)
xi =
xi
n
x k2
k =1
Jacek Bartman
Adaptacja wag w sieci Kohonena
W trakcie uczenia sieci samoorganizuj cych na wej)cie ka+dego neuronu
podawany jest n-wymiarowy sygna x ze zbioru wzorców ucz cych
We wspó zawodnictwie zwyci +a jeden neuron, którego wagi najmniej
ró+ni si od odpowiednich sk adowych wektora x.
zwyci zca (neuron w-ty) spe nia relacj
d ( x ,ww ) = min (d ( x ,w i ))
i =1,2...n
Wokó zwyci skiego neuronu przyjmuje si
Sw(n), którego promie" maleje w czasie.
topologiczne s siedztwo
Nast pnie neuron zwyci zca i neurony s siaduj ce podlegaj
wed ug regu y Kohonena (Kohonen, 1995)
adaptacji
wi (t ) = wi (t 1) + • g(i , x ) • (x wi (t 1))
– wspó czynnik uczenia
g(i,x) – funkcja s siedztwa
Jacek Bartman
S siedztwo
definiuje które neurony, oprócz zwyci skiego, maj zmieni& wagi
mo e nie by& uwzgl dniane (Winner Takes All)
musi definiowa& stopie zmian dla s siadów (Winner Takes Most)
W klasycznym algorytmie Kohonena funkcja g(i,x) jest definiowana nast puj co.
1 dla d (i ,w ) <
g (i , x ) =
0 dla d (i ,w )
d(i,w) oznacza odleg o), euklidesow mi dzy neuronem zwyci skim w i i-tym neuronem.
Wspó czynnik jest promieniem s siedztwa o warto)ciach malej cych z czasem. Ten typ to
s siedztwo prostok tne.
Drugim typem s siedztwa, z jakim mo+na si spotka, w mapach Kohonena jest
s siedztwo gaussowskie:
d 2 (i ,w )
g (i , x ) = e
2 2
S siedztwo gausowskie jest lepsze i prowadzi do lepszych rezultatów uczenia i
lepszej organizacji sieci.
Jacek Bartman
Efekty uczenia sieci samoorganizuj cych
Po zako"czeniu procesu uczenia, a przed przyst pieniem do pracy
nale+y pami ta, o tym, aby sie, skalibrowa,. Dokonuje tego nauczyciel,
podaj c po jednym sygnale wej)ciowym z ka+dej z klas - i opisuj c który
neuron która klas reprezentuje.
Rozmieszczenie wag w przestrzeni tworzy w z y, które po czone z
najbli+szymi s siadami (w sensie s siedztwa topologicznego)
reprezentuj kszta t odtwarzaj cy rozk ad danych wej)ciowych.
Jest to rozk ad odpowiadaj cy g sto)ci pojawiania si danych wej)ciowych w danym
rejonie a nie wspó rz dnych odpowiednich wektorów, gdy+ liczba prezentowanych
wektorów wej)ciowych jest zwykle o kilka rz dów wy+sza ni+ liczba neuronów w sieci.
Liczba neuronów w sieci w praktyce musi by, wi ksza od liczby klas
sygna ów wej)ciowych:
kilka neuronów mo+e konkurowa, o reprezentacj danej klasy,
nadmiarowo), powinna zapewni,, i+ mniej „lubiane” klasy równie+ b d rozpoznane.
Jacek Bartman
Sie Counter Propagation – sie CP
Sie& CP stanowi po czenie sieci Kohonena i sieci Grossberga.
Z propozycj tej sieci wyst pi Robert Hecht-Nielsen,
Jest odpowiedzi na wady sieci ze wsteczn propagacj , gdzie uczenie
by o powolne i pracoch onne.
Ze wzgl du na do & prost zasad dzia ania, funkcjonowanie sieci CP
porównywane jest do odczytu gotowego wyniku z tablicy.
Jej warstwa wej ciowa dokonuje adaptacyjnej klasyfikacji sygna ów
wej ciowych, co pozwala na pewne uogólnianie gromadzonego do wiadczenia.
Jacek Bartman
Architektura sieci CP
Przedstawiony rysunek zosta uproszczony - w rzeczywistym modelu mi dzy
warstw Kohonena, a warstw wyj ciow wyst puj po czeniami typu ka dy z
ka dym,
Jacek Bartman
Dzia%anie sieci CP
Wektor wej ciowy podawany na sie& musi by& znormalizowany ||x||=1
– ze wzgl du na konkurencyjne uczenia.
Element pochodz cy z pierwszej warstwy, który jest optymalnie
dopasowany do sygna u wej ciowego x przesy any jest do dalszego
przetwarzania w nast pnej warstwie jako jeden sygna - " eton".
Jacek Bartman
rola pierwszej warstwy – warstwy Kohonena
W pierwszej warstwie realizowany jest algorytm Kohonena.
wyliczany jest potencja membranowy uj wszystkich neuronów
u j = w Tj x
Wybierany jest neuron którego pobudzenie jest najwi ksze i tylko jego sygna wyj)ciowy
przyjmuje warto), 1
yj =
1 dla
0 dla
i j
u j > ui
i j
uj
ui
Wybrany pojedynczy sygna - counter jest „+etonem” zast puj cym i symbolizuj cym
wszystkie sygna y wej)ciowe,
Sygna uj (potencja membranowy) ka+dego neuronu w warstwie Kohonena jest
miar podobie"stwa pomi dzy sygna em wektora x, a abstrakcyjnym wzorcem
wytrenowanym na j-tym neuronie.
Wzorzec idealnego sygna u dla j-tego neuronu zawarty jest w jego wektorze wag wj.
Je)li x = wj, wówczas neuron odpowiada sygna em o maksymalnej warto)ci,
je)li x wj, wówczas pobudzenie neuronu (uj) jest miar cosinusa k ta pomi dzy
Jacek Bartman
wektorami x i wj.
rola drugiej warstwy – warstwy Outstar Grosberga
Druga warstwa sieci realizuje algorytm Outstar Grossberga:
y = vT k
v - macierz wspó czynników wagowych
k – wektor wyj), z warstwy Kohonena
W praktyce tylko jeden element wektora k ma warto), 1, a pozosta e maj
warto), 0
Wystarczy uto+samienie wyj)cia yi z pewnym wspó czynnikiem
wagowym vij. Dzia anie takie przypomina odczyt z gotowej tablicy.
Na ka+dym i-tym wyj)ciu sieci w trakcie procesu uczenia przygotowane zostaje m
wariantów odpowiedzi vij. Gdy warstwa Kohonena ustali, które z jej licznych wyj),
otrzyma „+eton" - na wszystkich wyj)ciach pojawiaj si tylko te warto)ci Vij, które
odpowiadaj numerowi j, dla którego kj = 1.
Jacek Bartman
Uczenie warstw w CP
Uczenie sieci CP przebiega równocze)nie w obydwu warstwach sieci.
Jest ono typem uczenia z nauczycielem, gdy+ wraz z ka+dym wektorem
wej)ciowym x podawany jest wektor wyj)ciowy, jaki u+ytkownik chce
uzyska, na wyj)ciu sieci.
W tym przypadku uczenia nie wykorzystujemy poj cia b du, co zachodzi
przy klasycznym nauczaniu z nauczycielem.
Ró+nic jest te+ brak wykorzystania informacji pochodz cych od
nauczyciela, przy uczeniu pierwszej "ukrytej" warstwy sieci.
Zmiany w stosunku do klasycznego nauczania z nauczycielem zosta y
zast pione dzia aniem:
przy uczeniu pierwszej warstwy stosuje si technik Kohonena, która jest form
uczenia bez nauczyciela.
przy uczeniu drugiej warstwy wykorzystuje si algorytm Grossberga do
bezpo)redniego wymuszania po+ danych odpowiedzi sieci
Jacek Bartman
warstwa Kohonena
Warstwie Kohonena na t-tym kroku przedstawia si wektor x(t), a
posiadaj c z wcze)niejszego uczenia warto)ci wektorów, mo+na obliczy,
u j (t ) = w Tj (t )x (t )
Nast pnie wyznacza si numer zwyci zcy - z
Korekcie podlegaj wy cznie wagi "zwyci skiego" neuronu wed ug
regu y
w z (t ) = w z (t 1) +
1
(x (t
)
1) w z (t 1)
Wspó czynnik uczenia 1 przyjmowany jest zwykle jako równy 0,7 na
pocz tku procesu uczenia i stopniowo zmniejszany dla wi kszych t.
Jak w wielu algorytmach samouczenia, tak samo i tu najwa+niejsze s
pierwsze kroki. Najpierw trzeba nada, wspó czynnikom wagowym wij
warto)ci pocz tkowe tak, aby by y one unormowane.
Jacek Bartman
Wa+nym krokiem jest takie dobranie kierunków wektorów wag, aby w sposób
równomierny rozk ada y si na powierzchni sfery jednostkowej w przestrzeni
n-wymiarowej.
Dobranie takich wag jest trudne, ponadto nie zawsze gwarantuje dobre wyniki.
Powodem tego mo+e by, pojawienie si trakcie uczenia kilku zwyci skich neuronów.
Aby zapobiec takiemu zjawisku pocz tkowo wszystkim sk adowym wszystkich wektorów
wag nadaje si t sam warto), pocz tkow
wij (1) =
1
n
Powoduje to, +e wszystkie wektory wag s prawid owo unormowane, oraz
pokrywaj si . Po takiej inicjalizacji zaczyna si proces uczenia z ma ró+nic , +e
jako wektory wej)ciowe podaje si wektory o wspó rz dnych obliczanych wed ug
wzoru
1
xi (t ) = 2 (t )xi (t ) • [1 2 (t )]
n
Funkcja adaptuj ca 2(t) dla ma ych t przyjmuje bardzo ma e warto)ci, natomiast
potem ro)nie do warto)ci 1 i t warto), zachowuje przez reszt procesu uczenia.
Jacek Bartman
Warstwa Grossberga
Wagi vij, w warstwie Grossberga, s zmieniane wed ug regu y Widrowa-Hoffa:
v ij (t ) = v ij (t 1) +
3
(di
y i )k j
Poniewa+ tylko jedna warto), kj jest ró+na od zera i w ka+dym kroku procesu
uczenia korygowane s tylko te wagi, które cz poszczególne neurony
wyj)ciowej warstwy z jednym tylko "zwyci skim" elementem poprzedniej
warstwy. Ta zasada zmniejsza pracoch onno), procesu uczenia.
Parametr 3 wybiera si zazwyczaj ostro+nie, tak aby proces uczenia nie
spowodowa wpisania do "tablicy" b dnych warto)ci. Zwykle zaczyna si uczenie
od warto)ci 3=0,1, a potem si t warto), jeszcze mocniej redukuje.
Jacek Bartman
Jacek Bartman
Jacek Bartman