• Nie Znaleziono Wyników

Ulepszenia MLP Ulepszenia MLP

N/A
N/A
Protected

Academic year: 2021

Share "Ulepszenia MLP Ulepszenia MLP"

Copied!
26
0
0

Pełen tekst

(1)

Ulepszenia MLP Ulepszenia MLP

Wykład 9

Włodzisław Duch

Katedra Informatyki Stosowanej UMK

Google: W. Duch

(2)

Co było Co było

• Perceptrony wielowarstwowe.

• Algorytm wstecznej propagacji błędów

• Problemy i własności wstecznej propagacji

(3)

Co będzie Co będzie

• Metody minimalizacji funkcji błędu

• Problem minimów lokalnych

• Alternatywne funkcje kosztu

• Inicjalizacja wag

• Regularyzacja

• Przykłady zastosowań

(4)

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.

(5)

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.

(6)

Minimalizacja f. błędu.

Minimalizacja f. błędu.

Metody gradientowe 2 rzędu.

         

0 0 | 0 0 0

; ; 1

2

T T

E X WWW W E X W W WW WH W W

2

( ; )

ij

i j

E X W

H W W

 

  Hessjan - macierz drugich pochodnych

     

 

0 0

1

0 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(n

3

)

(7)

Minimalizacja - metody liniowe Minimalizacja - metody liniowe

Wada metod 2-rzędu:

kosztowne odwracanie macierzy O(n

3

)

Metoda najszybszego spadku: podążaj wzdłuż gradientu aż znajdziesz minimum w danym kierunku:

W = W

0

+ K

1-D minimalizacja E(X;W(  ))

oblicz gradient w punkcie

W(  ), jest prostopadły do

poprzedniego

(8)

Quickprop 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.

 

  

1

( 1) ( )

m m

m m

E W W

W m W m W

E W W E W W

 

   

    

Wagi mają niezależne szybkości uczenia;

zbieżność jest kwadratowa, popularna metoda.

(9)

Rprop Rprop

Resilent 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 t

W 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

(10)

Minimalizacja - CG Minimalizacja - 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

) 0

s s n s n

K  E X W   K H K     K H K   

Reguła Fletchera-Reevesa Polaka-Ribiera:

E

n

 

2

E

s

2

     E

n

  E

s

 E

n

E

s

2

(11)

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.

(12)

Metody kwadratowe.

Metody kwadratowe.

Przybliżenia do Hesjanu:

zaniedbanie pozadiagonalnych elementów - metoda Newtona dla każdej wagi niezależnie.

 

1

0 0

2 2

;

ij

ij ij

W W H E X W

E E

W 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.

(13)

Levenberg-Marquardt Levenberg-Marquardt

T

H J J

Korzystamy z Jakobianu, który dla funkcji kwadratowej:

  ;  

T

 

ij

ij

J E X 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

 

1

T T

k k

W

WJ J   I

J E X

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 

(14)

Lokalne minima 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.

(15)

Trajektorie zbieżności Trajektorie zbieżności

Bierzemy wagi W

i

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..

(16)

Alopex Alopex

Zmiana wag W

ij

o stałą wartość  z prawd.

( 1) ( ( ( )) / ( ))

ij ij

p 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 t

K

 

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

(17)

Funkcje kosztu Funkcje 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 i

i

i i i i

E W Y F X W

Y F X W Y F X W

 

   

  

X

     

 

2

1

( )

n

ln ; (1 ) ln 1 ;

I i i i i

i

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.

(18)

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 W

ij = 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.

(19)

Generalizacja 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.

(20)

Regularyzacja 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.

2 0

( ; ) ( ; ) 1

2

ij ij

E X WE X W    W

To jest równoważne dodatkowej zmianie wag:

(1 )

n s

ij ij

W    W

Tu zanikają głównie duże wagi, a chodzi o zerowanie mniejszych.

(21)

Regularyzacja cd.

Regularyzacja cd.

Zmodyfikowany człon kary:

2

0 2

( ; ) ( ; ) 1

2 1

ij

ij ij

E X W E X W W

W

 

 

Równoważne dodatkowej zmianie wag:

2

2

1 1

n s

ij s ij

ij

W W

W



 

  

 

 

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?

(22)

SVNT

SVNT – uczenie granic – uczenie granic

Inicjalizacja parametrów W,

=0.01, 

min

=0, SV=Dane Treningowe.

Until nie ma poprawy w ostatnich N

last

iteracjach do

• Optymalizuj parametry sieci dla N

opt

kroków na danych SV

• Sprawdź dokładność na danych treningowych T, znajdź wektory dla których na wyjściu SV={X|(X) [

min

,1

min

]}.

• 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 

min



min

;

zmniejsz  = /1.2 by uniknąć gwałtownych zmian

(23)

XOR XOR z brzegami z brzegami

XOR XOR z brzegami z brzegami

(24)

Szybkość zbieżności 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ęć.

(25)

Co dalej?

Co dalej?

• Algorytmy konstruktywistyczne.

• Sieci Hopfielda

• Sieci Hebbowskie i modele mózgu

(26)

Koniec wykładu 9

Koniec wykładu 9

Cytaty

Powiązane dokumenty

Onyszkiewicza Elementy logiki i teorii mnogości w zadaniach (PWN 2004) albo jest wzorowana na zadaniach tam zamieszczonych..

The projection of error surface for a given dataset and network structure may differ a bit, depending on the initial weights and training method.. It may rotate from one plot to

In the Numerical Gradient neural training algorithm [10] all weight changes are examined in the same point on the error surface and then a single step is made in the

One could train all the network parameters simultaneously, but more effective variant is the constructive approach, which determines parameters for each newly added hidden

Jeśli próbować powiązać owe przepisy ze stanowiskiem Sądu i wypowiedzia ­ mi przedstawicieli doktryny, to musimy przyjąć, iż ostatnio wskazany wymóg jest

Stanisławowi Pierogowi, którego inspirujące seminaria stały się źródłem licznych wąt- ków obecnych w tej pracy, w zakresie filozofii polskiej i w szerszym ujęciu –

∙ Uczenie zachłanne - dokładany pojedynczy neuron, koszt obliczeń zależy od czasu uczenia nowego neuronu, złożone struktury danych mogą nie zostać wykryte przez dodanie

Celem opracowania jest próba zastosowania sztucznych sieci neuronowych do określenia pracy wykonanej podczas deformacji nadwozia pojazdu W def jako skutku zderzenia