Wstęp do sieci neuronowych, wykład 7. M. Czoków, J. Piersa Wydział Matematyki i Informatyki, Uniwersytet Mikołaja Kopernika w Toruniu 212-11-28 Projekt pn. Wzmocnienie potencjału dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych realizowany w ramach Poddziałania 4.1.1 Programu Operacyjnego Kapitał Ludzki
1 Uczenie z nauczycielem Uczenie bez nauczyciela 2 dla danych symbolicznych
Uczenie z nauczycielem Uczenie bez nauczyciela 1 Uczenie z nauczycielem Uczenie bez nauczyciela 2 dla danych symbolicznych
Uczenie z nauczycielem Uczenie bez nauczyciela Uczenie z nauczycielem (przyp.) Dane: zestaw przykładów uczących E k poprawne odpowiedzi C k Cel: znalezienie wartości wag w ij (które minimalizuje pewien błąd)
Uczenie z nauczycielem Uczenie bez nauczyciela Uczenie z nauczycielem (przyp.)
Uczenie z nauczycielem Uczenie bez nauczyciela Uczenie bez nauczyciela Dane: zestaw przykładów uczących E k Cel: znalezienie wartości wag w ij (które minimalizuje pewien błąd)
Uczenie z nauczycielem Uczenie bez nauczyciela Uczenie bez nauczyciela
Uczenie z nauczycielem Uczenie bez nauczyciela Uczenie bez nauczyciela Donald Hebb (1949) Neurons that fire together, wire together. Neuron, który jako pierwszy zgłosił odpowiedź na dany impuls, jest uznawany za specjalistę i jego wagi są zmieniane tak, by rozpoznawał właśnie tę klasę impulsów.
Uczenie z nauczycielem Uczenie bez nauczyciela wykrywanie podobieństwa pomiędzy wzorcami (wg wybranego kryterium), analiza składowych głównych tworzenie map cech klasyfikacja określanie prototypu kodowanie
dla danych symbolicznych 1 Uczenie z nauczycielem Uczenie bez nauczyciela 2 dla danych symbolicznych
Motywacja dla danych symbolicznych Dane: dane uczące, numeryczne w przestrzeni R n graf G = (V, E)
Motywacja dla danych symbolicznych Cel: zmapować graf na dane uczące, tak aby był rozmieszczony równomiernie a sąsiednie wierzchołki leżały niedaleko (alternatywne sformułowanie zmapować dane uczące uczące na graf, tak aby podobne były w tym samym lub sąsiednich wierzchołkach i przypisanie danych do wierzchołka było równomierne
Algorytm dla danych symbolicznych 1 przypisujemy neuronom małe losowe wagi (pozycje w R d ) p 1...p d 2 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 jego sąsiadów s(v) wykonujemy: π(w) = π(w) + α(t)(p π(w)), gdzie α(t) maleje od 1 do wraz z postępem algorytmu, np. α(t) = 1 t 1 T,
Topologie sieci dla danych symbolicznych
Przykład dla danych symbolicznych 2 15-4 -3 2 15 1-2 1 5-1 5-5 -1-1 -5 5 1 2 3 1 4-5 -1-1 -5 5
Motywacja dla danych symbolicznych ograniczyć wzrost wag zwiększyć gładkość dopasowania zwiększyć specjalizację w obrębie klas
dla danych symbolicznych 1 ustawiamy losowe wagi neuronom, 2 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 wierzchołków odległych o co najwyżej λ krawędzi: gdzie G(w, v) = π(w) := π(w) + α(t)g(w, v)(p π(w)), { 1 w = v < 1 i malejąca wraz z ilością krawędzi między v i w
Kwadratowa funkcja sąsiedztwa dla danych symbolicznych G(w, v) = { 1 ρ(w, v) λ w p. p. 1.8.6.4.2 6 4 2 4 2-2 -4-2 M. Czoków, J. Piersa -4-6 WSN 212/213 Wykład 7 6
dla danych symbolicznych Gaussowska funkcja sąsiedztwa dla rosnącej λ G(w, v) = exp( ρ2 (w, v) 2λ 2 ). click 2 1.5 1.5 6 4 2 4 2 6
Funkcja sąsiedztwa - mexican hat dla danych symbolicznych MH(v, w) = 2exp( ρ2 (v, w) 2λ 2 1 ) exp( ρ2 (v, w) 2λ 2 ), λ 1 < λ 2 2 1.5 -.5-16 4 2-2 -4-6 -6-4 -2 2 4 6
Przykład dla danych symbolicznych
Przykład dla danych symbolicznych kliknij Siatka prostokątna rozprowadzona przez algorytm Kohonena na trzech ścianach (o wspólnym wierzchołku) sześcianu.
Przykład dla danych symbolicznych 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 dla danych symbolicznych kliknij Siatka prostokątna rozprowadzona przez algorytm Kohonena na powierzchni kuli.
Przykład dla danych symbolicznych kliknij Siatka prostokątna rozprowadzona przez rozszerzony algorytm Kohonena na powierzchni kuli. W algorytmie zastosowano gaussowską funkcję sąsiedztwa.
dla danych symbolicznych Wizualizacja danych za pomocą danej struktury przestrzennej (zadanej 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).
Strefy wpływów dla danych symbolicznych 4 4 3 3 2 2 1 1-1 -1-2 -2-3 -3-4 -6-4 -2 2 4 6-4 -6-4 -2 2
Odległość Minkowskiego dla danych symbolicznych Odległość Minkowskiego jest to uogólniona funkcja odległości między punktami przestrzeni euklidesowej. Nazywana jest również odległością L p. Wzór na tę funkcję w zależności od p ma postać: K d(x, y) = ( (x k y k ) p ) 1 p. k=1
Odległość Minkowskiego 1.5 dla danych symbolicznych m=.5 m=1 m=1.5 m=2 m=4 m=1 -.5-1 -1 -.5.5 1 1.5
Najbliższy punkt w różnych metrykach dla danych symbolicznych 6 6 4 4 2 2-2 -2-4 P = 1-4 P = 2-6 -6-4 -2 2 4 6-6 -6-4 -2 2 4 6
Najbliższy punkt w różnych metrykach dla danych symbolicznych 6 6 4 4 2 2-2 -2-4 P = 3-4 P = 1-6 -6-4 -2 2 4 6-6 -6-4 -2 2 4 6
Motywacja dla danych symbolicznych Chcemy dostosować algorytm Kohonena, dla wejść, które mają współrzędne symboliczne (opisane wektorem zerojedynkowym - prawda lub fałsz) Zał. dla danych symbolicznych dana jest funkcją odległości d. d(x, x) = d(x, y) = d(y, x)
dla danych symbolicznych dla wejść symbolicznych 1 każdy węzeł w grafie otrzymuje prototyp (typowy przedstawiciel klasy) oraz listę przykładów (klasę którą reprezentuje prototyp) 2 przypisz węzłom losowe startowe prototypy, 3 powtarzaj wiele razy: wyczyść listy klasyfikacyjne, 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 klasyfikacyjnej w i list sąsiadów w, 4 zwróć sieć.
Mediana uogólniona dla danych symbolicznych Mediana uogólniona zbioru {a 1,..., a n } element a i, który minimalizuje j d 2 (a i, a j ).