Inteligencja Obliczeniowa Binarne modele pamięci skojarzeniowych
Inteligencja Obliczeniowa Ulepszenia MLP
description
Transcript of Inteligencja Obliczeniowa Ulepszenia MLP
Inteligencja ObliczeniowaInteligencja ObliczeniowaUlepszenia MLP Ulepszenia MLP
Wykład 11
Włodzisław DuchKatedra Informatyki Stosowanej UMK
Google: W. Duch
Co byłoCo było
• Perceptrony wielowarstwowe.
• Algorytm wstecznej propagacji błędów
• Problemy i własności wstecznej propagacji
Co będzieCo będzie
• Metody minimalizacji funkcji błędu
• Problem minimów lokalnych
• Alternatywne funkcje kosztu
• Inicjalizacja wag
• Regularyzacja
• Przykłady zastosowań
Problemy z MLP 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.
Zmienna Zmienna 1. Policz błędy i wyniki.
2. Jeśli nowy błąd jest większy niż 1.04 od starego to:
• odrzuć dokonane zmiany;
• pomnóż stała uczenia przez 0.7
• wróć do 1.
3. Jeśli nowy błąd zmalał to pomnóż przez 1.05
Nie działa to zbyt dobrze w porównaniu z metodami opisanymi dalej – w testach dało najsłabsze wyniki.
Minimalizacja f. błędu.Minimalizacja f. błędu.
Metody gradientowe 2 rzędu.
0
0 0 0 0|
1; ;
2T T
W WE X W W W W E X W W W H W W
2 ( ; )ij
i j
E X WH
W W
Hessjan - macierz drugich pochodnych
0 0
10 0
; ; 0
;
E X W E X W H W W
W W H E X W
Metoda Newtona - w minimum gradient znika, więc rozwinięcie:
Wada: kosztowne odwracanie macierzy O(n3)
Minimalizacja - metody linioweMinimalizacja - 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 + K
1-D minimalizacja E(X;W())
oblicz gradient w punkcie W(), jest prostopadły do poprzedniego
QuickpropQuickprop
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.
1
( 1) ( ) mm
m m
E W WW m W m W
E W W E W W
Wagi mają niezależne szybkości uczenia;
zbieżność jest kwadratowa, popularna metoda.
RpropRpropResilent BP (Riedmiller, Braun 1992)
Problemy ze zbyt małymi i dużymi gradientami.
Tylko znak gradientu jest używany do obliczenia poprawki:
( ( ))( ) ( )sgn ( )sgn ( )ij ij ij ij
ij
E tW t t t t
W
W
Sam gradient używany jest do obliczenia współczynnika
max
min
min ( 1), dla ( ) ( 1) 0
( ) max ( 1), dla ( ) ( 1) 0
( 1) w poz. przyp.
ij ij ij
ij ij ij ij
ij
a t t t
t b t t t
t
Wzrost jeśli znak się nie zmienia, małe jeśli zmiana (oscylacje).
Np. a=1.2, b=0.5
Minimalizacja - CGMinimalizacja - CG
0
( ; )
( ; ) ( ; ) 0
n s
s s n
K K E X W
K E X W K E X W K
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
0( ; ) 0s s n s nK E X W K H K K H K
Reguła Fletchera-Reevesa Polaka-Ribiera:
2 2n sE E 2n s n sE E E E
Minimalizacja - CG, cd.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.
Metody kwadratowe.Metody kwadratowe.
Przybliżenia do Hesjanu:
zaniedbanie pozadiagonalnych elementów - metoda Newtona dla każdej wagi niezależnie.
10 0
2
2
;
ijij ij
W W H E X W
E EW
W W
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.
Levenberg-MarquardtLevenberg-Marquardt
TH J J
Korzystamy z Jakobianu, który dla funkcji kwadratowej:
; Tij
ij
E XJ E X E X
W
J
Jakobian można policzyć korzystając z wstecznej propagacji. Przybliżenie do Hesjanu:
Parametry obliczamy korzystając z:
1
1T T
k kW W E X
J J I J
Dla 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
Lokalne minimaLokalne 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.
Trajektorie zbieżnościTrajektorie zbieżnościBierzemy 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..
AlopexAlopex
Zmiana wag Wij o stałą wartość z prawd.
( 1) ( ( ( )) / ( ))ij ijp t W E W t T n
określoną przez funkcję sigmoidalną, której nachylenie zmienia się co K epok w zależności od wielkości błędu:
-1
= -
( )= | ( )|n
t n K
T n E tK
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
Funkcje kosztuFunkcje kosztu
Kwadratowa funkcja kosztu - łatwo policzyć poprawki w procedurze BP, ale wystarczy dowolna dodatnio określona forma.
Teoria informacji: entropowe funkcje błędu.
0
0
2 2
( ; , ) sgn( ) sgn( ( ; ))
sgn( ) sgn( ( ; )) ;
N
i ii
i i i i
E W Y F X W
Y F X W Y F X W
X
2
1
( ) ln ; (1 ) ln 1 ;n
I i i i ii
E W Y F X W Y F X W
Inna funkcja błędu, dla uczenia „stopniowego”
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.
Inicjalizacja.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.
GeneralizacjaGeneralizacjaWyniki 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.
Regularyzacja.Regularyzacja.Brzytwa Ockhama: najprostsze rozwiązania są najlepsze. Zbyt złożona sieć - za dużo parametrów - marna generalizacjaTrudności w analizie funkcji realizowanej przez sieć.
Zalety małych wag: gładka funkcja często jest pożądana.
20
1( ; ) ( ; )
2 ijij
E X W E X W W
To jest równoważne dodatkowej zmianie wag:
(1 )n sij ijW W
Tu zanikają głównie duże wagi, a chodzi o zerowanie mniejszych.
Regularyzacja cd.Regularyzacja cd.
Zmodyfikowany człon kary:2
0 2
1( ; ) ( ; )
2 1ij
ij ij
WE X W E X W
W
Równoważne dodatkowej zmianie wag:
221
1
n sij ijs
ij
W WW
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?
SVNT SVNT – uczenie granic– uczenie granicSVNT SVNT – uczenie granic– uczenie granicInicjalizacja parametrów W,
=0.01, min=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|(X) [min,1min]}.
• Jeśli dokładność rośnie:
porównaj obecną sieć z poprzednią najlepszą, wybierz lepszą jako bieżącą najlepszą
• powiększ min=min i wybierz SVs
• Jeśli liczba |SV| wzrasta:
zmniejsz minmin;
zmniejsz = /1.2 by uniknąć gwałtownych zmian
XOR XOR z brzegamiz brzegamiXOR XOR z brzegamiz brzegami
Szybkość zbieżnościSzybkość 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ęć.
Co dalej? Co dalej?
• Algorytmy konstruktywistyczne.
• Sieci Hopfielda
• Sieci Hebbowskie i modele mózgu
• Samoorganizacja
Koniec wykładu 11Koniec wykładu 11
Dobranoc !