Perceptrony wielowarstwowe wsteczna propagacja bdw Wykad 9 Wodzisaw
Perceptrony wielowarstwowe, wsteczna propagacja błędów Wykład 9 Włodzisław Duch Katedra Informatyki Stosowanej UMK Google: W. Duch
Co było • Perceptron jednowarstwowy. • Uczenie się perceptronów • Nieliniowa reguła delta • Adatron
Co 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 Najprostsze rozwiązanie, ale jak to uczyć? 0. 5 Co można zrobić? Najpierw utworzyć jakąś reprezentację wewnętrzną za pomocą perceptronów, ale jaką? +1 -2 +1 • 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. 1 +1 +1 +1
XOR z warstwą ukrytą rozwiązuje XOR
Warstwa ukryta i granice decyzji
Sieć MLP 2 -4 -1
MLP = Multilayer Perceptron 3 -warstwowy z warstwą wejściową, ukrytą i wyjściową - oznaczenia.
MLP - oznaczenia Liczba 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) = Si Wij(l)oi(l-1) aktywacja neuronu j w warstwie l. oj(l) = s(Xj(l)) sygnał wysyłany z tego neuronu Fi (X; W) = oi(M) funkcja realizowana przez MLP
BP-1 Algorytm wstecznej propagacji błędów (1974, 1986) Miara błędu dla wzorca p i No wyjść Gradientowa reguła minimalizacji błędu równoważna jest regule delta. Obliczenia gradientu dla warstwy zewnętrznej:
Funkcja błędu w 2 D Problem 1 D bez warstwy ukrytej.
BP-2 Błąd „lokalny” dla warstwy M Zmiana wag w warstwie wyjściowej: Wagi łączące neuron j i neuron k w warstwie M-1: Gradient:
BP-3 Ponieważ to gradient: a zmiana wag: Struktura wzoru dla kolejnych warstw jest taka sama.
BP- 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 DWij.
Sigmoidy Logistyczna funkcja aktywacji: Próg q, nachylenie T Pochodna ma max dla o=0. 5: Błąd wyjściowego elementu: Często stosowane: rectified linear unit (Re. LU)
XOR – dynamika uczenia
Funkcja błędu w 2 D z PCA Patrząc w kierunku największej wariancji wag możemy zrobić projekcję funkcji błędu – dla XOR jest ona dość skomplikowana. Przeskalowanie kierunku c 2 pokazuje więcej szczegółów.
Własności MLP 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/n 1/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 XOR Architektura 2 -2 -2, rozmyte klastry XOR. W p-ni wyjściowej w warstwie ukrytej
Przykłady Presentation: Visualization of the hidden node activity, or hidden secrets of neural networks. Conv. Net. JS is a Javascript library for training Deep Learning models (Neural Networks) entirely in your browser. http: //cs. stanford. edu/people/karpathy/convnetjs/ Simple 2 D classification example: https: //cs. stanford. edu/people/karpathy/convnetjs/demo/classify 2 d. html
Uczenie MLP Parametry uczenia: • szybkość uczenia • bezwładność Pozwala usunąć szybkie oscylacje, zmienia efektywną stałą uczenia: dla małych zmian wag. • sposób prezentacji danych Losowa prezentacja – element stochastyczny, uczenie on-line. Ustalona kolejność. Poprawki po całej epoce – po kilku prezentacjach też warto.
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ć h o a=const dla malejącego błędu, zmniejszać o -hb 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 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ść do danych. • Funkcje transferu, nie tylko sigmoidy.
Co dalej? • Perceptrony wielowarstwowe: ulepszenia, algorytmy konstruktywistyczne. • Sieci Hopfielda • Sieci Hebbowskie i modele mózgu • Samoorganizacja • Perceptrony wielowarstwowe
Koniec wykładu 9
- Slides: 25