Inteligencja Obliczeniowa Perceptrony wielowarstwowe i wsteczna propagacja błędów.
description
Transcript of Inteligencja Obliczeniowa Perceptrony wielowarstwowe i wsteczna propagacja błędów.
Inteligencja ObliczeniowaInteligencja ObliczeniowaPerceptrony wielowarstwowe i Perceptrony wielowarstwowe i wsteczna propagacja błędów. wsteczna propagacja błędów.
Wykład 10
Włodzisław DuchKatedra Informatyki Stosowanej UMK
Google: W. Duch
Co byłoCo było
• Perceptron jednowarstwowy.
• Uczenie się perceptronów
• Nieliniowa reguła delta
• Adatron
Co będzieCo będzie
• Perceptrony wielowarstwowe.
• Algorytm wstecznej propagacji błędów (BP)
• Metody minimalizacji
• Ulepszenia BP
Problem: perceptrony radzą sobie tylko z problemami, które są liniowo separowalne, nie można więc rozwiązać prostego zagadnienia typu XOR, a więc prawie żadnego zagadnienia w wysokowymiarowych przypadkach.
XOR – rozwiązanie najprostsze.XOR – rozwiązanie najprostsze.
1
+1 +1
+1
+1
+1
0.5
Najprostsze rozwiązanie, ale jak to uczyć?
Co można zrobić? Najpierw utworzyć jakąś reprezentację wewnętrzną za pomocą perceptronów, ale jaką?
• Założyć reprezentację wewnętrzną a priori - zgadywaną dla każdego problemu niezależnie.
• Zastosować konkurencyjne uczenie się bez nadzoru; użyteczne elementy same się uaktywnią, chociaż nie ma na to gwarancji.
• Uczyć odpowiedniej reprezentacji wewnętrznej dla danej klasy problemów – trzeba znaleźć efektywny algorytm uczenia.
XOR z warstwą ukrytą rozwiązuje XOR XOR z warstwą ukrytą rozwiązuje XOR
Warstwa ukryta i granice decyzjiWarstwa ukryta i granice decyzji
Sieć MLP 2-4-1.Sieć MLP 2-4-1.
MLP = Multilayer Perceptron. MLP = Multilayer Perceptron.
X X X X X1 2 3 4 5
(1) (1) (1) (1) (1)
X1
(2) X2
(2) X3
(2)
X1
(3)X
2
(3)
o1(2)
o2(2) o
3(2)
o1(3) o
2(3)
W11
(2)
W51
(2)
W43
(2)
W11
(3)
W32
(3)
W53
(2)
Perceptron 3-warstwowy z warstwą wejściową, ukrytą i wyjściową - oznaczenia.
MLP - oznaczeniaMLP - oznaczeniaLiczba warstw M=3
Xi(l) - całkowity sygnał dochodzący do elementu i należącego do
warstwy l
oi(l) - sygnał wychodzący z elementu i należącego do warstwy l
Wij(l) - wagi łączące element i należący do warstwy l-1 oraz
element j z warstwy l
Xj(l) = i Wij
(l)oi(l-1) aktywacja neuronu j w warstwie l.
oj(l) = (Xj
(l)) sygnał wysyłany z tego neuronu
Fi (X;W) = oi(M) funkcja realizowana przez MLP
BP-1BP-1Algorytm wstecznej propagacji błędów (1974, 1986)
Miara błędu dla wzorca p i No wyjść
2( ) ( ) ( ) ( )
1 1
1 1( ) ;
2 2
o oN Np p p p
i i ii i
E Y F X E
W W
1
( ) ( ; )( ; )
oNk
ij k kkij ij
E W F X WW Y F X W
W W
( ) ( )( ; ) M Mk k kF X W o X
( ) ( )
( ) ( 1)( )
( ; ) ( )'
M MM Mk k k
k jMkj k kj
F X W X XX o
W X W
Gradientowa reguła minimalizacji błędu równoważna jest regule delta.
Obliczenia gradientu dla warstwy zewnętrznej:
Funkcja błędu w 2DFunkcja błędu w 2D
Problem 1D bez warstwy ukrytej.
BP-2BP-2Błąd „lokalny” dla warstwy M
Zmiana wag w warstwie wyjściowej:
Wagi łączące neuron j i neuron k w warstwie M-1:
Gradient:
( ) ( )' ;M Mi i i iX Y F X W
( ) ( ) ( 1) ( ) ( 1)' ( ; )M M M M Mij i i i j i jW X Y F X W o o
( 1)( 1) ( 1)
1
( ) ( ; )( ; )
oNM i
jk i iM Mijk jk
E W F X WW Y F X W
W W
( 1)( ) ( )
( ) ( 1)( 1) ( ) ( 1) ( 1)
( ; ) ( )'
MM MjM Mi i i
i ijM M M Mjk i jk jk
oF X W X XX W
W X W W
BP-3BP-3Ponieważ
to gradient:
a zmiana wag:
Struktura wzoru dla kolejnych warstw jest taka sama.
( 1) ( 1) ( 1) ( 2)M M M Mj j jk k
k
o X W o
( ) ( 1) ( 1) ( 2)( 1)
( ; )' 'M M M Mi
i ij j kMjk
F X WX W X o
W
( 1) ( ) ( 1) ( 1) ( 2) ( 1) ( 2)'M M M M M M Mjk i ij j k j k
i
W W X o o
BP- podsumowanieBP- podsumowanie
Funkcja realizowana przez sieć:
Inicjalizacja: przypadkowe małe wartości wag.
Propagacja sygnałów od wejścia do wyjścia.
Propagacja korekcji błędów wstecz: rekursywne obliczanie Wij.
( ) ( ) ( ) ( 1) ( ); ;M M M M Mi i ij j i i
j
o X W o o F X W
( ) ( 1) ( 2) (2); ... M M Mi ij jk kl mn n
j k l n
F X W W W W W X
( ) ( )' ;M Mi i i iX Y F X W
( ) ( 1) ( ) ( )'l l l lj i ij j
i
W X ( ) ( ) ( 1)l l l
ij i jW o
SigmoidySigmoidy
Logistyczna funkcja aktywacji:
Próg , nachylenie T
Pochodna ma max dla o=0.5:
Błąd wyjściowego elementu:
1 1
1 exp /1 exp /
i i i
i i iij j i i
j
o XX T
W o T
' 1ii i i
i
oX o o
X
( )
( ) ( 1) ( )
1 ;
1
Mi i i i i
l l lj j j i ij
i
o o Y F X W
o o W
XOR – dynamika uczeniaXOR – dynamika uczenia
Funkcja błędu w 2D z PCAFunkcja błędu w 2D z PCAPatrząc w kierunku największej wariancji wag możemy zrobić projekcję funkcji błędu – dla XOR jest ona dość skomplikowana. Przeskalowanie kierunku c2 pokazuje więcej szczegółów.
Własności MLPWłasności MLPMLP jest uniwersalnym aproksymatorem:
• 1 warstwa – f. ciągłe• 2 warstwy – f. nieciągłe (dowód via tw. Stone’a- Weierstrassa)
Szybkość zbieżności z sigmoidami: O(1/n); z wielomianami O(1/n1/d)W niektórych problemach inne funkcje dają szybsza zbieżność.
Parametry sieci: architektura, liczba warstw, liczba neuronów.Końcowa warstwa: perceptron.
Neurony ukryte: transformacja nieliniowa do przestrzeni odwzorowań, tworząca nowe cechy za pomocą nieliniowych kombinacji.
Przykłady zbieżności dla XORPrzykłady zbieżności dla XOR
Architektura 2-2-2, rozmyte klastry XOR.
W p-ni wyjściowej w warstwie ukrytej2 2
1 2 [ 7.0, 7.7, 7.7] 7[ 1, 1, 1] W W
Uczenie MLPUczenie MLPParametry uczenia: • szybkość uczenia• bezwładność
Pozwala usunąć szybkie oscylacje, zmienia efektywną stałą uczenia:
dla małych zmian wag.
• sposób prezentacji danychLosowa prezentacja – element stochastyczny, uczenie on-line.Ustalona kolejność. Poprawki po całej epoce – po kilku prezentacjach też warto.
1 ( ) ( )ij i j ij ijij
EW t o W t W t
W
1ijij
EW
W
Problemy i ulepszenia.Problemy i ulepszenia.
• Niewłaściwie dobrana architektura sieci.
• Minima lokalne i plateau, wąskie „rynny”.
• Wpływ nowych wzorców na już nauczone – zapominanie.
• Szybkość uczenia – zagadnienie jest NP-trudne.
• Schematy adaptacji dla stałej uczenia:zwiększać o a=const dla malejącego błędu, zmniejszać o b dla rosnącego błędu.
Duże kroki na powierzchni gładkiej, drobne kroki na skomplikowanej.
Lokalne stałe uczenia się, różne dla różnych węzłów - kosztowne.
Ulepszenia MLPUlepszenia MLP
• Szybsze procedury minimalizacji błędu.
• Modyfikacje schematu wstecznej propagacji.
• Unikanie minimów lokalnych – różne możliwości.
• Funkcje kosztu, niekoniecznie MSE.
• Inicjalizacja parametrów, lepszy start.
• Regularyzacja i zwiększenie zdolność do generalizacji sieci - wybór modelu o odpowiedniej złożoności.
• Sieci konstruktywistyczne/ontogeniczne, dostosowujące złożonośc do danych.
• Funkcje transferu, nie tylko sigmoidy.
Co dalej? Co dalej?
• Perceptrony wielowarstwowe: ulepszenia, algorytmy konstruktywistyczne.
• Sieci Hopfielda
• Sieci Hebbowskie i modele mózgu
• Samoorganizacja
• Perceptrony wielowarstwowe
Koniec wykładu 10Koniec wykładu 10
Dobranoc …