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