Wst p do sieci neuronowych, wykªad 7 Uczenie nienadzorowane. M. Czoków, J. Piersa Faculty of Mathematics and Computer Science, Nicolaus Copernicus University, Toru«, Poland 2011-11-22
1 Uczenie nienadzorowane 2 Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena 3 Odwzorowanie Sammona Algorytm Kohonena dla danych symbolicznych
1 Uczenie nienadzorowane 2 Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena 3 Odwzorowanie Sammona Algorytm Kohonena dla danych symbolicznych
Idea Sztuczna sie neuronowa uczona w sposób nadzorowany modykuje swoje dziaªanie za pomoc informacji z zewn trz. Takiej korekty nie dostaje sie uczona w sposób nienadzorowany (bez nauczyciela), która sama wypracowuje funkcje przetwarzania danych np. uporz dkowywania, wykrywania regularno±ci w danych, ich klasykacji, kodowania itd. Metody uczenia nienadzorowanego s wa»nym narz dziem przetwarzania danych w sytuacjach, gdy nie mo»na zorganizowa nadzorowanego procesu uczenia.
Przykªadowe zadania, które mog by realizowane przez sieci samoorganizuj ce si : wykrywanie podobie«stwa ocena stopnia podobie«stwa pomi dzy wzorcami (wg wybranego kryterium), analiza skªadowych gªównych jest to metoda redukcji wymiarowo±ci danych, w której wektory wzorców wej±ciowych s rzutowane na najistotniejsze kierunki ich zmian w przestrzeni o zredukowanej liczbie wymiarów, tworzenie map cech porz dkowanie danych wedªug wybranego kryterium podobie«stwa,
klasykacja grupowanie danych, w trakcie którego kryterium jest podobie«stwo wybranych cech, okre±lanie prototypu wskazanie typowego reprezentanta grupy, tzw. prototypu, kodowanie wyznaczanie zbioru prototypów o liczno±ci znacznie mniejszej ni» caªy zbiór danych wej±ciowych, zbiór prototypów w mo»liwie jak najlepszy sposób reprezentuje dane wej±ciowe (uzyskuje si efekt kompresji stratnej danych).
Idea Jednym z podstawowych sposobów uczenia nienadzorowanego jest tzw. uczenie konkurencyjne (ang. competitive learning). W tej metodzie uczenia sieci, poszczególne neurony konkuruj ze sob o prawo do reprezentacji danych wej±ciowych.
Cechy charakterystyczne 1 zwykle sieci skªadaj ce si z jednej warstwy wej±ciowej i jednej warstwy wyj±ciowej, 2 ka»dy neuron jest poª czony ze wszystkim skªadowymi K-wymiarowego wektora wej±ciowego x, 3 neurony liniowe,
Winner Takes All W konkurencyjnej metodzie uczenia sieci, tylko jeden element wyj±ciowy mo»e znajdowa si w stanie aktywnym. Nazywany jest on zwyci zc, a schemat takiej reguªy aktywacji neuronów okre±lany jest mianem zwyci zca bierze wszystko (ang. Winner Takes All - WTA). Neuron, który wygraª, jeszcze bardziej jest upodobniany do przykªadu, którym uczymy.
Ka»da komórka w warstwie wyj±ciowej jest poª czona ze wszystkimi elementami x k wzorca wej±ciowego x za pomoc poª cze«wagowych, neuron m-ty jest poª czony z warstw wej±ciow za pomoc wektora wag w m = [w m1, w m2,..., w mk ].
W wyniku zastosowania takiej struktury poª cze«m-ty neuron warstwy wyj±ciowej sieci otrzymuje sygnaª pobudzenia: y m = K k=1 w mk x k = w T m x, m = 1, 2,..., M, gdzie K dªugo± wzorca, M ilo± neuronów. 1 M 1 K
Komórka zwyci ska Komórka zwyci ska warstwy wyj±ciowej sieci, oznaczona indeksem m, jest to neuron otrzymuj cy najsilniejszy sygnaª pobudzenia y m. Zatem dla komórki zwyci skiej speªniona jest nierówno± : w 1 w m* T x>w i T x w T m x > w T m x, m = 1, 2,..., M. A co zyskuje zwyci zca? W procesie samoorganizacji jego wagi s modykowane. w 2 w 3
Algorytm uczenia Zakªadamy,»e przykªady ucz ce s znormalizowane. Do uczenia sieci u»ywamy nast puj cego algorytmu: 1 generujemy losowo znormalizowane wektory wag w m dla m = 1, 2,..., M, 2 losujemy wektor x oraz liczymy dla niego aktywacj y m = w T m x, dla wszystkich neuronów m = 1, 2,..., M, nast pnie szukamy neuronu zwyci zcy w m, 3 modykujemy wektor wag zwyci zcy, w m = w m + ηx (w m = w m + η(x w m )), a nast pnie go normalizujemy, 4 zatrzymujemy algorytm po odpowiednio du»ej liczbie iteracji.
Modykacja wektora wag w m = w m + ηx w m = w m + η(x w m ) x wold w new x (1- )w old
Normalizacja wektorów U»ywaj c normalizacji wektorów, uniemo»liwiamy jednemu wektorowi stanie si tak du»ym,»e mógªby wygrywa wspóªzawodnictwo zbyt cz sto. Konsekwencj byªoby to,»e inne neurony nigdy by nie zwyci»yªy wspóªzawodnictwa i ich wagi nie byªyby modykowane. Takie jednostki s nazywane martwymi.
Normalizacja wektorów w 1 w 2
Normalizacja wektorów Normalizacja gwarantuje,»e jednostk, która jest zwyci zc dla wektora wej±ciowego, jest ta jednostka, która le»y najbli»ej wektora wej±ciowego (cosinus k ta mi dzy wektorem wej±ciowym a zwyci zc jest najwi kszy). Modykacja wag powoduje,»e wektor wag zostaje przyci gni ty w kierunku wektora wej±ciowego. To znaczy,»e neuron zwyci ski w przyszªo±ci jeszcze silniej b dzie reagowaª na ten wektor wej±ciowy (reguªa Hebba).
Normalizacja wektorów w 1 w 2
Samoorganizacja i SPL W podanym wy»ej algorytmie przykªad wej±ciowy nie mo»e by z góry klasykowany jako pozytywny albo negatywny wektor tak, jak dzieje si to w algorytmach uczenia dla perceptronu. W powy»szym algorytmie w wyniku nauki wektor wag m-tej jednostki zostaje przyci gni ty w kierunku klastra jednostek wej±ciowych, dla których jego aktywacja jest najwi ksza w±ród wszystkich neuronów.
Samoorganizacja i SPL w 3 w 1 w w 2
Stopie«podobie«stwa Iloczyn skalarny wskazuje nam stopie«podobie«stwa pomi dzy wektorem wej±ciowym a wektorami wag poszczególnych neuronów. W procesie wyboru zwyci zcy mo»emy u»ywa innych metod do mierzenia podobie«stwa, w szczególno±ci mo»emy u»ywa funkcji odlegªo±ci, wtedy zwyci»a ten neuron, którego wektor wag poªo»ony jest najbli»ej wzgl dem danej metryki od wektora wej±ciowego. Najcz ±ciej u»ywane metryki to: euklidesowa: d(x, w m ) = K (x k w mk ) 2. k=1
Normy odlegªo± wzgl dem normy L 1 (odlegªo± Manhattan): K d(x, w m ) = x k w mk, k=1 odlegªo± wzgl dem normy L : d(x, w m ) = max k x k w mk,
Stopie«podobie«stwa iloczyn skalarny: d(x, w m ) = x, w m,
Odlegªo± Minkowskiego Odlegªo± Minkowskiego jest to uogólniona funkcja odlegªo±ci mi dzy punktami przestrzeni euklidesowej. Nazywana jest równie» odlegªo±ci L m. Wzór na t funkcj w zale»no±ci od m ma posta : K d(x, y) = ( (x k y k ) m ) m 1. k=1
Odlegªo± Minkowskiego 1 0.5 m=0.5 m=1 m=1.5 m=2 m=4 m=10 0-0.5-1 -1-0.5 0 0.5 1 1.5
Strefy wpªywów Przy u»yciu metryki euklidesowej przestrze«danych wej±ciowych jest dzielona na strefy dominacji danego neuronu. Zastosowanie innej odlego±ci lub iloczynu skalarnego przy samoorganizacji, ksztaªtuje podziaª stref wpªywów inaczej. Szczególnie nale»y pami ta,»e zastosowanie iloczynu skalarnego bez normalizacji wektorów, mo»e prowadzi do niespójnego podziaªu przestrzeni - tak,»e w jednym obszarze wyst puje kilka neuronów, a w innym nie ma»adnego.
Strefy wpªywów norma euklidesowa 4 3 2 1 0-1 -2-3 -4-6 -4-2 0 2 4 6
Strefy wpªywów iloczyn skalarny 4 3 2 1 0-1 -2-3 -4-6 -4-2 0 2 4 6
Kwantowanie wektorowe danych Celem uczenia sieci samoorganizuj cych si przez konkurencj neuronów jest takie uporz dkowanie neuronów (dobór warto±ci ich wag), które zminimalizuje warto± oczekiwan bª du popeªnionego przy aproksymacji wektora wej±ciowego x warto±ciami wag neuronu zwyci»aj cego w konkurencji. Przy N wektorach wej±ciowych i zastosowaniu normy euklidesowej bª d ten mo»e by wyra»ony wzorem: E = 1 N x n W w(n), N n=1 w którym W w(n) jest wag neuronu zwyci»aj cego przy prezentacji wektora x n.
Kwantowanie wektorowe danych Zadanie to jest równie» zwane kwantowaniem wektorowym. Numery neuronów zwyci»aj cych przy kolejnych prezentacjach wektorów tworz tak zwan ksi»k kodow. Przestrze«danych podzielona jest, w efekcie stosowania takiej reguªy, tzw. mozaik Voronoi wyznaczaj c obszary klas.
Mozaika Veronoi 4 3 2 1 0-1 -2-3 -4-6 -4-2 0 2 4 6
Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena 1 Uczenie nienadzorowane 2 Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena 3 Odwzorowanie Sammona Algorytm Kohonena dla danych symbolicznych
Idea Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Kohonen zaproponowaª reguª uczenia konkurencyjnego, w której, w odró»nieniu od reguªy standardowej, modykacji wag dokonuje si nie tylko dla neuronu zwyci skiego, lecz równie» dla pewnej liczby neuronów z jego s siedztwa. S siedztwem tym s inne neurony le» ce blisko danej jednostki w strukturze grafowej neuronów.
Winner Takes Most Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Dlaczego WTA nie wystarcza? Taka reguªa adaptacji powoduje,»e algorytm sªabo zbiega. Reguªa, w której modykuje si nie tylko wagi zwyci zcy, ale równie» jego s siadów, jest zwana reguª WTM (Winer Takes Most). W praktyce reguªa WTA zostaªa zast piona reguª WTM.
Reprezentacja sieci Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Dana jest sie neuronowa modelowana przy pomocy grafu nieskierowanego H = (V, E), gdzie V jest zbiorem wierzchoªków (neuronów), za± E zbiorem kraw dzi. Dla ka»dego wierzchoªka v V okre±lamy tak zwane s siedztwo s(v) = {u V (v, u) E}. Zaªó»my ponadto,»e mamy pewn ilo± obiektów (przykªadów) opisywanych punktami przestrzeni R d.
Topologie sieci Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena
Cele Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Stawiamy sobie nast puj ce cele: ka»demu neuronowi chcemy przypisa d wag (reprezentuj cych wspóªrz dne pewnego punktu w R d ), powy»sze przypisanie ma odpowiada rozkªadowi przestrzennemu przykªadów (tzn. je»eli w danej okolicy jest du»o przykªadów, powinno do niej zosta przypisanych wiele neuronów), przypisanie ma odpowiada strukturze topologicznej grafu, tzn. s siaduj ce ze sob neurony powinny traa w niedaleko od siebie poªo»one obszary R d.
Cele Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena 20 15-4 -3 20 15 10-2 10 5-1 5 0 0 0-5 -10-10 -5 0 5 1 2 3 10 4-5 -10-10 -5 0 5
Algorytm - zaªo»enia wst pne Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Niech dany b dzie zbiór przykªadów P = {P 1,...P N } R d. Ka»demu neuronowi v V przypisujemy wektor wag π(v) R d.
Algorytm Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena 1 wybieramy pewn liczb T oznaczaj c liczb powtórze«algorytmu, 2 losujemy wagi przy wszystkich neuronach, 3 dla t = 1..T wykonujemy: 1 losujemy przykªad P, 2 znajdujemy jednostk v V, której zestaw wag π(v) le»y najbli»ej P, 3 dla neuronu zwyci zcy i wszystkich neuronów z jego s siedztwa s(v) wykonujemy: π(w) = π(w) + α(t)(p π(w)),
Uwagi Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena α(t) jest funkcj o warto±ciach dodatnich, malej c w kolejnych iteracjach algorytmu, na przykªad α(t) = 1 t 1 T,
Uwagi Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Do algorytmu mo»na wprowadza modykacje, które w znacznym stopniu mog poprawi jego dziaªanie. Bardzo cz sto inaczej deniuje si s siedztwo s(v) i wprowadza drobne zmiany w sposobie uaktualniania wag.
Uwagi Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena W rozszerzonej wersji algorytmu Kohonena s siedztwem dla neuronu zwyci zcy v jest zbiór: s(v) = {u W ρ(u, v) λ}, gdzie ρ(u, v) jest to dªugo± najkrótszej ±cie»ki pomi dzy wierzchoªkami u i v. Natomiast λ jest to tak zwany promie«s siedztwa, dodatni parametr algorytmu, pocz tkowo jego warto± powinna by taka,»e s siedztwo mo»e obejmowa wi cej ni» poªow z ogólnej liczby neuronów. Parametr λ nale»y zmniejsza w czasie uczenia tak, by w ko«cowej fazie uczenia s siedztwo byªo puste i modykacji podlegaª tylko neuron zwyci zcy.
Rozszerzony algorytm Kohonena Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena 1 wybieramy pewn liczb T oznaczaj c liczb powtórze«algorytmu, 2 losujemy wagi przy wszystkich neuronach, 3 dla t = 1..T wykonujemy: 1 losujemy przykªad P, 2 znajdujemy jednostk v V, której zestaw wag π(v) le»y najbli»ej P, 3 dla neuronu zwyci zcy i wszystkich neuronów z jego s siedztwa s(v) wykonujemy π(w) = π(w) + α(t)g(w, v)(p π(w)),
Uwagi Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena G(w, v) jest to tak zwana funkcja s siedztwa, ma ona warto±ci dodatnie, jej przykªadowe postacie to: kwadratowa funkcja s siedztwa, gdzie: { 1 ρ(w, v) λ G(w, v) = 0 w p. p. gaussowska funkcja s siedztwa, gdzie: G(w, v) = exp( ρ2 (w, v) 2λ 2 ).
Kwadratowa funkcja s siedztwa Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena 1 0.8 0.6 0.4 0.2 06 4 2 0-2 -4-6 -6-4 -2 0 2 4 6
Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Gaussowska funkcja s siedztwa dla rosn cej λ 2 1.5 1 0.5 0 6 4 2 4 6 0 2 kliknij -2-4 -6-6 -4-2 0
Funkcja s siedztwa - mexican hat Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena 1 0.5 0-0.5-16 4 2 0-2 -4-6 -6-4 -2 0 2 4 6
Funkcja s siedztwa - mexican hat Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Wzór na t funkcj ma posta : gdzie λ 1 < λ 2. MH(v, w) = 2exp( ρ2 (v, w) 2λ 2 1 ) exp( ρ2 (v, w) ), 2λ 2 2
Uwagi Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Zastosowanie w mapach Kohonena s siedztwa gaussowskiego i zmiennego wspóªczynnika adaptacji powinno poprawi rezultaty uczenia i organizacj sieci.
Przykªad Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena kliknij Siatka prostok tna rozprowadzona przez algorytm Kohonena na trzech ±cianach (o wspólnym wierzchoªku) sze±cianu.
Przykªad Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena kliknij Siatka prostok tna rozprowadzona przez rozszerzony algorytm Kohonena na trzech ±cianach (o wspólnym wierzchoªku) sze±cianu. W algorytmie zastosowano gaussowsk funkcj s siedztwa.
Przykªad Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena kliknij Siatka prostok tna rozprowadzona przez algorytm Kohonena na powierzchni kuli.
Przykªad Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena kliknij Siatka prostok tna rozprowadzona przez rozszerzony algorytm Kohonena na powierzchni kuli. W algorytmie zastosowano gaussowsk funkcj s siedztwa.
Uwagi Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Zªy dobór parametrów mo»e mie wpªyw na to,»e sie nie osi gnie po» danej zbie»no±ci. Na przykªad je±li stopie«adaptacji α(t) b dzie miaª za maªe warto±ci, mo»e powsta w zeª, który si nie rozwi»e.
Uczenie nienadzorowane Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Wizualizacja danych za pomoc danej struktury przestrzennej (zadajej przez graf) w innym wymiarze (przykªady s wtedy rozªo»one jednostajnie na obszarze reprezentacji) przej±cie do wy»szego wymiaru (np. krzywa wypeªniaj ca przestrze«), przej±cie do ni»szego wymiaru (wizualizacja skomplikowanych struktur z zachowaniem topologii, ale nie odlegªo±ci).
Przej±cie do wy»szego wymiaru Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena Rysunek za Stanisªaw Ossowski, Sieci neuronowe w uj ciu algorytmicznym.
Przej±cie do ni»szego wymiaru Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena
Odwzorowanie Sammona Algorytm Kohonena dla danych symbolicznych 1 Uczenie nienadzorowane 2 Zagadnienie Algorytm Kohonena Rozszerzony algorytm Kohonena 3 Odwzorowanie Sammona Algorytm Kohonena dla danych symbolicznych
Odwzorowanie Sammona Algorytm Kohonena dla danych symbolicznych Dane Odwzorowanie Sammona pozwala na graczne przedstawienie danych wielowymiarowych w przestrzeni o mniejszej liczbie wymiarów. Zaªo»enia: danych jest N wektorów K-wymiarowych x n (n = 1, 2,..., N) i odpowiednio do nich deniuje si N wektorów w przestrzeni L-wymiarowej (L = 2, 3) oznaczonych przez y n, odlegªo±ci pomi dzy poszczególnymi wektorami w przestrzeni K-wymiarowej oznaczono przez d nm = d(n, m), odlegªo±ci pomi dzy poszczególnymi wektorami w przestrzeni L-wymiarowej oznaczono przez d nm = d(n, m), do okre±lenia odlegªo±ci mi dzy wektorami mo»na zastosowa dowoln metryk, w szczególno±ci euklidesow.
Odwzorowanie Sammona Algorytm Kohonena dla danych symbolicznych Idea Zadanie odwzorowania nieliniowego Sammona polega na takim doborze wektorów y, aby zminimalizowa funkcj bª du E zdeniowan w postaci: E = 1 m<n N (d nm d nm ) 2. d nm Do optymalizacji tej funkcji u»ywa si algorytmów gradientowych.
Odwzorowanie Sammona Algorytm Kohonena dla danych symbolicznych Zaªo»enia Dane: Sie H = (V, E), zbiór danych symbolicznych x wraz z funkcj odlegªo±ci d. Powinno zachodzi : d(x, x) = 0, d(x, y) = d(y, x) 0.
Odwzorowanie Sammona Algorytm Kohonena dla danych symbolicznych Mediana uogólniona Mediana uogólniona zbioru {a 1,..., a n } element a i, który minimalizuje j d 2 (a i, a j ).
Odwzorowanie Sammona Algorytm Kohonena dla danych symbolicznych Algorytm Kohonena dla wej± symbolicznych 1 przypisz w zªom losowe prototypy, 2 powtarzaj wiele razy: ka»demu wierzchoªkowi w przypisz list takich przykªadów,»e prototyp p(w) jest do nich najbli»szy, ka»demu wierzchoªkowi w przypisz nowy prototyp median uogólnion z listy klasykacyjnej w i list s siadów w, wyczy± listy klasykacyjne, 3 zwró sie.