SOM (Self Organizing Maps)
Transkrypt
SOM (Self Organizing Maps)
SOM SELF-ORGANIZING MAPS Przemysław Szczepańczyk Łukasz Myszor Podstawy teoretyczne Map Samoorganizujących się stworzył prof. Teuvo Kohonen (1982 r.). ● ● SOM wywodzi się ze sztucznych sieci neuronowych. SOM znalazły zastosowania w licznych dziedzinach, m.in.: ● - Rozpoznawanie mowy - Kompresja obrazów - Zagadnienia sterowania i robotyki - Wyszukiwanie dokumentów - I inne Mapę tworzy statyczna siatka komórek (sieć Kohonena jest najbardziej znanym modelem) ● Wizualizacja wielowymiarowych danych za pomocą dwuwymiarowej mapy w taki sposób, aby dokumenty bliskie sobie w przestrzeni dokumentów były bliskie sobie na płaszczyźnie. ● ● Odwzorowanie wag danych za pomocą kolorów ● Jest to sieć ucząca sie bez nadzoru. ● Mapa ma stały rozmiar. Siatka ma najczęściej budowę heksagonalną lub prostokątną. ● Głównym kosztem podczas tworzenia mapy jest porównywanie wektorów. ● Graficzna reprezentacja sieci Kohonena Elementy budujące siatkę Przykład grupowania kolorów przy pomocy algorytmu SOM: Mapa wstępna Mapa po 100 iteracjach Neurony wyjściowe (a dokładniej ich wagi) można inicjować wartościami losowymi. Metodyka zmian wag neuronów wyjściowych nazywa się strategią. Dla SOM dwie podstawowe strategie to: - WTA: Winner Takes All Zwycięzca bierze wszystko. Po przedstawieniu sieci wektora wejściowego, neuron najbardziej podobny do elementu prezentowanego (którego wagi są najbardziej podobne składowym wektora wejściowego) zostaje zmodyfikowany tak aby jego wagi były jak najbardziej zbliżone do wektora wejściowego. - WTM: Winner Takes Most Zwycięzca bierze najwięcej. W tej strategii nie tylko neuron najbardziej podobny, ale także jego otoczenie zostają zmodyfikowane. Najczęściej ta modyfikacja jest zależna od odległości sąsiada od zwycięzcy. Uczenie SOM polega na tym, że dla każdego wektora wejściowego zwycięzca oraz jego sąsiedzi (ściślej ich wektory modelowe) są modyfikowane tak aby były one bardziej podobne wektorowi prezentowanemu. W czasie fazy uczenia pojedyncze zmiany mogą być sprzeczne, ale całkowitym wynikiem procesu powinny być elementy poukładane na mapie. Funkcja uczenia: Mając próbkę x ze zbioru uczącego X w danym kroku t fazy uczenia znajdujemy element mapy najbardziej zbliżony do wektora prezentowanego c(x): c(x) = arg min{||x-mi||} Po znalezieniu tego elementu, zwycięzca i jego sąsiedzi modyfikowani są za pomocą wzoru: mi(t+1)= mi(t) + hc(x),i(t)[x(t) – mi(t)] gdzie hc(x),i jest funkcją sąsiedztwa i działa wygładzająco na elementy siatki znajdujące w okolicy zwycięzcy; t – zmienna czasowa . Funkcja sąsiedztwa jest brana jako funkcja rozkładu gaussowskiego: Gdzie 0 < α(t) < 1 opisywana jest jako prędkość uczenia. Z założenia α(t) jest funkcją nie rosnącą. Algorytm Batch Map: Jest to modyfikacja SOM stworzona przez Kohonena. Zakłada modyfikacje wektorów modelowych dopiero po analizie pewnej liczby elementów oraz przyjmuje dostępność wszystkich przykładów przed uruchomieniem. Warunek ten w przypadku modelowania mapy dokumentów off-line nie jest ograniczeniem. Dzięki temu algorytmowi przy odpowiednio dużej liczbie przykładów otrzymuję się znaczące oszczędności obliczeniowe . Algorytm ten jest zależny od wartości początkowych. Mechanizm ten powinien dawać dobre rezultaty przy pewnym wstępnym przesortowaniu. Model Batch Map odpowiednio zastosowany do tworzenia map dokumentów nie powoduje znaczącej utraty jakości przy znacznym przyspieszeniu obliczeń. Kilkanaście iteracji algorytmu Batch Map daje zadowalające wyniki Ogólny algorytm Batch Map: 1) Jako wektory modelowe należy przyjąć K wektorów przykładowych, gdzie K jest ilością wektorów modelowych (ilością węzłów mapy). 2) Dla każdego elementu mapy i przypisać te wektory ze zbioru przykładów, które znajdują się w sąsiedztwie Ni elementu i (Ni – zbiór sąsiadów). 3) Ustawić wektor modelowy elementu mapy jako średnią ze zbioru elementów przypisanych do tego elementu. 4) Powtórzyć kroki 2 i 3 WEBSOM: Własności klastrowania i odwzorowywania danych wejściowych SOM postanowiono wykorzystać w dziedzinie wyszukiwania informacji. ● Powstał w Centrum Badań nad Sieciami Neuronowymi (Helsinki University of Technology). ● ● Autor: prof. Teuvo Kohonen. Praktycznie można w niej umieścić nieskończoną ilość dokumentów. ● Z powodu dużej złożoności i czasochłonności procesu uczenia tworzone mapy mogą być jedynie statyczną prezentacją zbioru dokumentów stworzoną off-line. ● Zastosowanie w internecie WebSom może być bardzo pomocne w wizualnym zorganizowaniu odpowiedzi z tradycyjnych wyszukiwarek. Użytkownik, otrzymując kilkaset lub kilka tysięcy dokumentów z wyszukiwarki w praktyce korzysta jedynie z kilkunastu. Natomiast posługując się mapą i jednym relewantnym dokumentem jako punktem odniesienia, może sięgnąć do innych, skorelowanych z nim dokumentów. Na metodę WEBSOM składają się następujące kroki: ● - Utworzenie słownika ze zbioru odwzorowywanych dokumentów. - Utworzenie modeli statystycznych dokumentów w postaci histogramu słów. - Formatowanie mapy dokumentów za pomocą algorytmu SOM. Eksperyment WebSom przeprowadzony w 1998 r. przez Kohonen'a: - operował na zbiorze 1 124 134 dokumentów - średnia długość dokumentu to 218 słów - długość słownika wynosiła 63 773 słowa - samoorganizująca się sieć składała się z 104 040 komórek - materiał pochodził z 80 różnych grup tematycznych Usenet'u - każdy dokument klasyfikowano do jednej z 80 grup - dokładność klasyfikacji wynosiła około 80 procent - formatowanie mapy trwało około miesiąca - wyszukiwanie w mapie odbywało się prawie w czasie rzeczywistym Fragment mapy WEBSOM Wady: SOM jest obliczeniowo droga co jest poważną wadą, gdy liczba wymiarów danych wzrasta. ● ● Jest to metoda wolna. ● Niemożliwe jest tworzenie mapy w trybie „on-line”. Problemem jest dostarczenie poprawnych danych: aby wygenerować mapę każdy wzorzec musi posiadać wartość we wszystkich wymiarach. ● Nauka sieci musi być powtarzana przy każdej nowej porcji dokumentów ● Źródła: - Teuvo Kohonen – Self-Organization of Very Large Document Collections: State of the Art - SOM_PAK – zestaw programów w języku C autorstwa Kohonena i jego zespołu: http://www.cis.hut.fi/research/som_lvq_pak - WebSOM: http://websom.hut.fi/websom/ - http://davis.wpi.edu/~matt/courses/soms/applet.html