Katedra Informatyki Stosowanej UMK Ulepszenia MLP Wykład 13 Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: W. Duch (c) 1999. Tralvex Yeap. All Rights Reserved
Co było Perceptrony wielowarstwowe. Algorytm wstecznej propagacji błędów Problemy i własności wstecznej propagacji (c) 1999. Tralvex Yeap. All Rights Reserved
Co będzie Metody minimalizacji funkcji błędu Problem minimów lokalnych Alternatywne funkcje kosztu Inicjalizacja wag Regularyzacja Przykłady zastosowań (c) 1999. Tralvex Yeap. All Rights Reserved
Problemy z MLP Minimalizacja f. kosztu jest zagadnieniem NP-trudnym. Trudno jest dobrać optymalne parametry (l. neuronów, warstw, inicjalizację). Metody gradientowe wpadają w lokalne minima i zwalniają na plateau. Zbieżność może być powolna. Wyniki zależą od kolejności prezentacji danych - możliwa jest duża wariancja. (c) 1999. Tralvex Yeap. All Rights Reserved
Zmienna h Policz błędy i wyniki. Jeśli nowy błąd jest większy niż 1.04 od starego to: odrzuć dokonane zmiany; pomnóż stała uczenia h przez 0.7 wróć do 1. Jeśli nowy błąd zmalał to pomnóż h przez 1.05 Nie działa to zbyt dobrze w porównaniu z metodami opisanymi dalej – w testach dało najsłabsze wyniki. (c) 1999. Tralvex Yeap. All Rights Reserved
Minimalizacja f. błędu. Metody gradientowe 2 rzędu. Hessjan - macierz drugich pochodnych Metoda Newtona - w minimum gradient znika, więc rozwinięcie: Wada: kosztowne odwracanie macierzy O(n3) (c) 1999. Tralvex Yeap. All Rights Reserved
Minimalizacja - metody liniowe Wada metod 2-rzędu: kosztowne odwracanie macierzy O(n3) Metoda najszybszego spadku: podążaj wzdłuż gradientu aż znajdziesz minimum w danym kierunku: W = W0 + l K 1-D minimalizacja E(X;W(l)) oblicz gradient w punkcie W(l), jest prostopadły do poprzedniego (c) 1999. Tralvex Yeap. All Rights Reserved
Quickprop Quickprop (Fahlman 1988) jeśli wszystkie wagi są niezależne a powierzchnia błędu kwadratowa można dopasować parabolę. Quickprop używa w tym celu 2 punkty + gradienty. Wagi mają niezależne szybkości uczenia; zbieżność jest kwadratowa, popularna metoda. (c) 1999. Tralvex Yeap. All Rights Reserved
Rprop Resilent BP (Riedmiller, Braun 1992) Problemy ze zbyt małymi i dużymi gradientami. Tylko znak gradientu jest używany do obliczenia poprawki: Sam gradient używany jest do obliczenia współczynnika h Wzrost h jeśli znak się nie zmienia, małe jeśli zmiana (oscylacje). Np. a=1.2, b=0.5 (c) 1999. Tralvex Yeap. All Rights Reserved
Minimalizacja - CG Metoda sprzężonych gradientów (conjugated gradients): dla form kwadratowych: startuj wzdłuż gradientu, potem wybierz nowy kierunek jako prostopadły do starego. Po rozwinięciu gradientu Reguła Fletchera-Reevesa Polaka-Ribiera: (c) 1999. Tralvex Yeap. All Rights Reserved
Minimalizacja - CG, cd. Wektory własne Hesjanu tworzą zbiór wektorów sprzężonych. Dla kwadratowej funkcji E(W) w n-wymiarach metoda CG osiąga minimum w n krokach; zbieżność kwadratowa. Metoda najszybszego spadku jest znacznie wolniejsza. SCG, Skalowana Metoda Sprzężonych Gradientów - szybka metoda szukania minimów wzdłuż prostej. Osobliwości w przestrzeniach parametrów, nieeuklidesowe powierzchnie błędu => gradient naturalny (Amari 1998), kosztowny; kierunek największego spadku uwzględniający różnicę W i W’ po zmianie. (c) 1999. Tralvex Yeap. All Rights Reserved
Metody kwadratowe. Przybliżenia do Hesjanu: zaniedbanie pozadiagonalnych elementów - metoda Newtona dla każdej wagi niezależnie. Metoda zmiennej metryki - przybliżenie do H-1 oraz iteracyjna metoda Newtona, kwadratowo zbieżna. Dwie wersje: DFP (Davidon-Fletcher-Power), Broyden-Fletcher-Goldfarb-Shanno (BFGS). Metoda Levenberg-Marquardta oparta jest na przybliżeniu Gaussa-Newtona. (c) 1999. Tralvex Yeap. All Rights Reserved
Levenberg-Marquardt Korzystamy z Jakobianu, który dla funkcji kwadratowej: Jakobian można policzyć korzystając z wstecznej propagacji. Przybliżenie do Hesjanu: Parametry obliczamy korzystając z: Dla m = 0 mamy metodę Newtona a dla dużego największego spadku z małym krokiem; LM używa metod Newtona w pobliżu minimum, zmniejszając m. (c) 1999. Tralvex Yeap. All Rights Reserved
Lokalne minima Globalna minimalizacja: wiele metod. Najprostsza metoda: wielokrotne starty. Monte Carlo, symulowane wyżarzanie, metody multisympleksowe, minimalizacja Tabu, homotopia ... Większość prac łączy algorytmy genetyczne z sieciami MLP. Zalety: globalne, proste w realizacji, niektóre nie potrzebują gradientu, inne łączą zalety gradientowych z globalnymi. Wady: zwykle kosztowne. Szum dodawany do wag lub do danych pozwala wygładzić funkcję błędu i uciec z płytszych minimów – formalnie jest to równoważne regularyzacji Tichonowa, czyli dodaniu dodatkowego członu wygładzającego do funkcji błędów. (c) 1999. Tralvex Yeap. All Rights Reserved
Trajektorie zbieżności Bierzemy wagi Wi z iteracji i=1..K; robimy PCA na macierzy kowariancji Wi co daje około 95-98% wariancji dla większości danych, więc w tym układzie współrzędnych w 2D widać realistyczne trajektorie. Nigdy nie widać lokalnych minimów, jest wiele płaskowyży i kanionów. Dane leżące daleko od granicy mają mały wpływ na powierzchnie błędu, główna redukcja błędu MSE przy końcu uczenia wynika ze wzrostu wag ||W||, czyli wyostrzania się sigmoid aż zrobią się prawie skokowe..
Alopex Zmiana wag DWij o stałą wartość z prawd. określoną przez funkcję sigmoidalną, której nachylenie zmienia się co K epok w zależności od wielkości błędu: Wysokie T to p(t)0.5, czyli przypadkowe zmiany. p(t) rośnie gdy są korelacje zmian wag/błędu. Brak zmian => T maleje, zmiany są w kierunku gradientu. Jest uzasadnienie neurobiologiczne, jest trochę zastosowań. Kordos M, Duch W, Variable Step Search Training for Feedforward Neural Networks. Neurocomputing 71, 2470-2480, 2008 (c) 1999. Tralvex Yeap. All Rights Reserved
Funkcje kosztu Kwadratowa funkcja kosztu - łatwo policzyć poprawki w procedurze BP, ale wystarczy dowolna dodatnio określona forma. Teoria informacji: entropowe funkcje błędu. Inna funkcja błędu, dla uczenia „stopniowego” g rośnie od 0 do 1; najpierw uczenie z grubsza, dla błędów w znaku, w późniejszych etapach dokładniejsze, również dla tych, które mają znak prawidłowy. (c) 1999. Tralvex Yeap. All Rights Reserved
Inicjalizacja Duże wagi => duża wariancja wyników, ale możliwe stają się dobre nieliniowe rozwiązania. Za duże wartości wag: nasycone wartości sigmoid, małe gradienty => wolne uczenie. Małe przypadkowe wagi, dające aktywacje rzędu 0.5 => szybkie uczenie i gładka aproksymacja => dobra generalizacja. Zalecenia empiryczne Wij = 0.78 Battou a/N , a =2.38 by osiągnąć największą wariancję. Inne próby inicjalizacji: hiperpłaszczyzny z pojedynczych perceptronów lub LDA; wstępna klasteryzacja i płaszczyzny oddzielające klastry; klasteryzacja w przestrzeni unormowanych wektorów. (c) 1999. Tralvex Yeap. All Rights Reserved
Generalizacja Wyniki na zbiorze treningowym mogą zawsze osiągnąć 100% Celem jest osiągnięcie najlepszego wyniku dla nowych przypadków, nie pokazywanych wcześniej sieci. Zbiór walidacyjny: pozwala na ocenę błędu generalizacji; oczekujemy korelacji wyników na zbiorze walidacyjnym i testowym. (c) 1999. Tralvex Yeap. All Rights Reserved
Regularyzacja Brzytwa Ockhama: najprostsze rozwiązania są najlepsze. Zbyt złożona sieć - za dużo parametrów - marna generalizacja Trudności w analizie funkcji realizowanej przez sieć. Zalety małych wag: gładka funkcja często jest pożądana. To jest równoważne dodatkowej zmianie wag: Tu zanikają głównie duże wagi, a chodzi o zerowanie mniejszych. (c) 1999. Tralvex Yeap. All Rights Reserved
Regularyzacja cd. Zmodyfikowany człon kary: Równoważne dodatkowej zmianie wag: Małe wagi można usunąć i sieć dalej przetrenować - automatyczna selekcja cech. Metoda „optimal brain damage” - upraszczanie sieci. Rozpad synaps w mózgu przydatny jest do regularyzacji? (c) 1999. Tralvex Yeap. All Rights Reserved
SVNT – uczenie granic Inicjalizacja parametrów W, De=0.01, emin=0, SV=Dane Treningowe. Until nie ma poprawy w ostatnich Nlast iteracjach do Optymalizuj parametry sieci dla Nopt kroków na danych SV Sprawdź dokładność na danych treningowych T, znajdź wektory dla których na wyjściu SV={X|F(X) [emin,1-emin]}. Jeśli dokładność rośnie: porównaj obecną sieć z poprzednią najlepszą, wybierz lepszą jako bieżącą najlepszą powiększ emin=emin+De i wybierz SVs Jeśli liczba |SV| wzrasta: zmniejsz emin=emin-De; zmniejsz De = De/1.2 by uniknąć gwałtownych zmian
XOR z brzegami
Szybkość zbieżności Testy robione pakietem Nnet z Matlaba: Wnioski: Levenberg-Marquardt dobry w aproksymacji dla sieci <1000 param. Słabszy w klasyfikacji, dużo RAM. Rprop – dobry w klasyfikacji, słabszy w aproksymacji, mała pamięć. SCG – szybka zbieżność jak w LM, ale znacznie mniejsza pamięć. (c) 1999. Tralvex Yeap. All Rights Reserved
Co dalej? Algorytmy konstruktywistyczne. Sieci Hopfielda Sieci Hebbowskie i modele mózgu Samoorganizacja (c) 1999. Tralvex Yeap. All Rights Reserved
Koniec wykładu 13 (c) 1999. Tralvex Yeap. All Rights Reserved