METODY INTELIGENCJI OBLICZENIOWEJ wykład 5 1
2 SZTUCZNE SIECI NEURONOWE cd
3 UCZENIE PERCEPTRONU: Pojedynczy neuron (lub 1 warstwa neuronów) typu percep- tronowego jest w stanie rozdzielić przestrzeń obsza- rów wejściowych granicą decyzyjną na 2 obszary (półprzestrzenie). 2 zmienne prosta; ogólnie hiperpłaszczyzna.
4 Sieć dwuwarstwowa wielokąty wypukłe (simpleksy( simpleksy): Sieci trzy- i więcej warstwowa dowolne obszary (w tym wielokąty niewypukłe i obszary wielospójne).
5 Perceptron może prawidłowo klasyfikować sygnały, jeśli są liniowo separowalne:
NAUCZYCIEL CIĄG UCZĄCY Ciąg uczący U to zbiór przykładów. Dla sieci wielowarstwowej o n wejściach i k wyjściach: { (1), (1), (2), (2),..., ( N), ( N) } U = X Z X Z X Z X (j),z (j) pary danych pokazywanych na WE i WY sieci w j-ymym kroku uczenia. X (j) n-wymiarowy wektor danych wejściowych ciowych w j-ym kroku uczenia Z (j) k-wymiarowy wektor wymaganych odpowiedzi neuronów warstwy WY w j-ym kroku uczenia. N liczba posiadanych pokazów. 6
7 Poprawka wartości wagi dla perceptronu w j-ymym kroku (reguła( delta): ( j) ( j) x ( j) i i w =ηδ δ = z y ( j) ( j) ( j) z wymagana odpowiedź neuronu; y uzyskana odpowiedź neuronu; x i dana wejściowa dla i-tego wejścia. η współczynnik uczenia (learning rate)
8 UCZENIE SIECI NIELINIOWYCH Uczenie sieci minimalizacja funkcji błędu. minimalizacja funkcji błędu Zwykle gradientowe metody optymalizacji (np. metoda największego spadku). Warunek funkcja aktywacji jest ciągła.
Poprawka wartości wagi: w =ηδ dϕ() e de x ( j) ( j) ( j) i ( j) i dla f. sigmoidalnej: 1 ϕ() e = 1 + exp( β e) [ ] ϕ '( e) = β ϕ( e) 1 ϕ( e) Jeśli neuron nie popełnia błędu wagi nie są zmieniane. Poprawka wagi na wejściu jest tym większa, im większy jest błąd na wyjściu. Poprawka wagi na i-tym tym wejściu jest proporcjonalna do wielkości sygnału na tym wejściu x i. 9
Uaktualnianie wag: - po każdorazowej prezentacji jednej pary uczącej; - po zaprezentowaniu wszystkich przykładów. Przykładowy ciąg uczący (3 neurony, 5 wejść) Typowy obiekt który powinien być rozpoznawany przez pierwszy neuron: WE: 3, 4, 3, 4, 5 WY: 1, -1, -1 Typowy obiekt który powinien być rozpoznawany przez drugi neuron: WE: 1, -2, 1, -2, -4 WY: -1, 1, -1 Typowy obiekt który powinien być rozpoznawany przez trzeci neuron: WE: -3, 2, -5, 3, 1 WY: -1, -1, 1 10
11 Nietypowy obiekt który powinien być rozpoznawany przez pierwszy neuron: WE: 4, 2, 5, 3, 2 WY: 0.8, -1, -1 Nietypowy obiekt który powinien być rozpoznawany przez drugi neuron: WE: 0, -1, 0, -3, -3 WY: -1, 0.8, -1 Nietypowy obiekt który powinien być rozpoznawany przez trzeci neuron: WE: -5, 1, -1, 4, 2 WY: -1, -1, 0.8 Obiekt który powinien być odrzucany przez wszystkie neurony: WE: -1, -1, -1, -1, -1 WY: 1,-1, 1,-1
Funkcja logiczna XOR Schemat sieci: 2-2 - 1 Ciąg uczący: WE 1 WE 2 WY 0 0 0 1 0 1 0 1 1 1 1 0 Ciąg weryfikujący (np( np): WE 1 WE 2 0.05 0.05 0.95 0.05 0.05 0.95 0.95 0.95 12
Rozpoznawanie znaków X, 0, +, - Matryca znaków Liniowe rozwinięcie i zamiana na wektor WE Schemat sieci: 9-5 - 4 13
Ciąg uczący: 14 Wektor WE Wektor WY 1 0 1 0 1 0 1 0 1 1 0 0 0 1 1 1 1 0 1 1 1 1 0 1 0 0 0 1 0 1 1 1 0 1 0 0 0 1 0 0 0 0 1 1 1 0 0 0 0 0 0 1 Nauczona sieć rozpoznaje symbole zniekształcone:
FILTROWANIE SYGNAŁÓW WE - wzorce sygnałów zaszumionych; WY sygnały czyste WE np. sinus : WY Z: R. Tadeusiewicz: : Elementarne wprowadzenie do techniki sieci neuronowych..., PLJ, Warszawa, 1998! 15
Okolice zera mała wartość sygnału (trudności( trudności). Rozwiązanie przesunięcie sygnału: Z: R. Tadeusiewicz: : Elementarne wprowadzenie do techniki sieci neuronowych..., PLJ, Warszawa, 1998 16
WSPÓŁCZYNNIK UCZENIA η learning rate Wartości: w przedziale 0.01 5.0 (typowo 0.8 2.0 2.0) Zbyt mały powolne uczenie sieci. Zbyt duży gwałtowne zmiany parametrów w sieci. 17
ADAPTACYJNY WSP. UCZENIA Jego wartość zmienia się (w czasie uczenia sieci) zależnie od tego, jak uczy się sieć. Np.: gdzie: η Q ( j) ( j) η ( j+ 1) = wsp. uczenia w ( j) ( j) ( j 1) ρd η gdy Q > kw Q ( j) ρi η j-ej epoce; w przeciwnym przypadku błąd średniokwadratowy sieci w j-ej epoce : kw dopuszczalna zwyżka błędu w kolejnych epokach (np. 1.04); ρd współczynnik redukcji współczynnika uczenia (np. 0.7); ρ współczynnik zwiększenia współczynnika uczenia (np. 1.05) i 1 Q = z y n ( j) ( j) ( j) 2 i i= 1 ( ) 2 i 18
19 METODA MOMENTUM (z ang Nadanie uczeniu pewnej bezwładno adności; z ang.: pęd) Zwiększenie szybkości uczenia bez zaburzenia stabilności algorytmu; bez wsp. momentum wsp. momentum = 0.5
20 Dodatkowy składnik zmiany wag zależą od błędów w aktualnych i poprzednich. dϕ() e w = x + w de ( j) ηδ ( j) ( j) η ( j 1) i ( j) i 2 i η 2 wartości w przedziale 0 10 1 (cz( często 0.9). Wagi wartości początkowe zwykle losowo, często z zakresu -0.1, 0.1 (najlepiej bez zera).
21 JAK DŁUGO UCZYĆ SIEĆ? Liczba prezentacji ciągu uczącego konieczna do nauczenia sieci: prognozowanie finansowe: 10 9 synteza mowy: 10 10 10 rozpoznawanie mowy lub pisma odręcznego: 10 rozpoznawanie znaków Kenji: 10 10 13 10 12
22 Uważa się, iż czas uczenia sieci rośnie wykładniczo wraz ze wzrostem liczby elementów sieci. Korzystne jest pokazywanie elementów ciągu uczącego w różnej kolejności. Malenie błędu jest różne dla różnie wylosowanych wag początkowych (dla( tej samej sieci):
23 UCZENIE WARSTW UKRYTYCH Bezpośrednie wyznaczenie błędów nie jest możliwe (sygnałów WY z warstwy ukrytej nie ma z czym porównać). Metoda wstecznej propagacji błędów (backpropagation): Zmiana wagi jak przy sieci jednowarstwowej; Obliczanie δ sumowanie błęb łędów w z następnej warstwy Błędy w warstwach ukrytych są wyznaczane w sposób przybliżony.
δ n ( j) = w ( k) ( j) δ ( j) m m k k= 1 m numer neuronu w warstwie ukrytej n liczba neuronów w w warstwie następnej k; j numer kroku uczenia; ( j) δ m ( j) δ k błąd d popełniany przez neuron m; błąd d popełniany przez neuron w warstwie k ( j) k 1 k 2 k 3 k n k m δ ( j) m δ n ( kn )( j) w m znane nieznane obliczanie błędów w warstwie WY; obliczanie błędów w warstwie poprzedniej; itd. aż do warstwy pierwszej. 24
25 SAMOUCZENIE SIECI Cała wiedza, jaką sieć może zdobyć jest zawarta w obiektach pokazywanych (muszą zawierać klasy podobieństwa). Nie mogą to być obiekty całkiem przypadkowe, ale tworzyć skupiska wokół pewnych ośrodków. Proces samouczenia utrwala i pogłębia wrodzone zdolności neuronów. Po zaprzestaniu pokazywania któregoś ze wzorców zapominanie.
26 SAMOUCZENIE SIECI: Ciąg uczący: U = { X (1), X (2),... X ( N ) } X (j) n-wymiarowy wektor danych wejściowych ciowych w j-ym kroku uczenia N liczba posiadanych pokazów. Reguła uczenia dla m-tego tego neuronu w j-ymym kroku: ( m)( j+ 1) = ( m)( j) + ( m) ( j) i i i m w w ηx y gdzie: n ( j) ( m)( j) ( j) m = i i i= 1 y w x
27 ( m)( j+ 1) = ( m)( j) + ( m) ( j) i i i m w w ηx y n ( j) ( m)( j) ( j) m = i i i= 1 y w x Wielkość zmiany wagi liczona na podstawie iloczynu sygnału na odpowiednim wejściu przez sygnał wyjściowy neuronu. Uczenie to zwie się też korelacyjnym zmierza do ta- kiego dopasowania wag, by uzyskać najlepszą kore- lację między sygnałami WE a zapamiętanym (w formie wag) wzorcem sygnału, na który dany neuron ma reagować.
KONKURENCJA W SIECIACH SAMOUCZĄCYCH WTA (Winner Takes All) - zwycięzca bierze wszystko: Najlepszy neuron niezerowa wartość sygnału WY (zwykle 1); Pozostałe wyjścia są zerowane; Tylko najlepszy neuron jest uczony. Zasada WTA daje jednoznaczną odpowiedź sieci (co niekoniecznie musi być zaletą). Wszystkie sygnały mniejsze niż ustalony próg brak rozpoznania. 28
Efekty: Neuron, który raz wygrał przy pokazaniu danego wzorca dalej będzie wygrywał. Samouczenie jest skuteczniejsze i efektywniejsze (każdy neuron rozpoznaje jeden obiekt, pozostałe neurony pozostają niezagospodarowane). Wysoce prawdopodobne jest, iż: - nie będzie grup neuronów rozpoznających ten sam wzorzec; - nie będzie klas nierozpoznanych przez żaden neuron. Niezagospodarowane neurony są gotowe rozpoznawać nowe wzorce. Po wykorzystaniu wszystkich neuronów i pojawieniu się nowego wzorca przeciąganie któregoś z neuronów w jego stronę: 29
30 SIECI SAMOORGANIZUJĄCE SIĘ (Teuvo Kohonen) Inny (wyższy( wyższy) ) sposób samouczenia,, wprowadzający efekty koherencji i kolektywności. Tworzą odwzorowania sygnałów WE w sygnały WY, spełniające pewne ogólne kryteria (nie zdeterminowa- ne przez twórcę ani użytkownika sieci) samoorganizacja sieci. Koherencja (słown.. spójność, spoistość, łączność) - sieć grupuje dane wejściowe wg wzajemnego podobień- stwa wykrywa automatycznie obiekty podobne do siebie nawzajem i inne od innych grup obiektów.
31 Analiza skupień w analizy ekonomicznej (np. podobieństwo przedsiębiorstw rentowność). Kolektywność to co rozpoznaje neuron zależy w dużej mierze od tego, co rozpoznają inne neurony. Sąsiedztwo znaczenie ma wzajemne położenie neuronów w warstwach. Zwykle sąsiedztwo 2-wymiarowe 2 neurony w węzłach regularnej siatki (każdy( neuron ma min. 4 sąsiadów).
Przykładowe sąsiedztwa: 32 Rozbudowane sąsiedztwo:
Rozszerzone sąsiedztwo: 33 Jednowymiarowe sąsiedztwo:
34 Gdy w procesie uczenia któryś neuron zwycięża: uczy się też (w( w mniejszym stopniu) ) jego sąsiadów (niezależnie od ich wag początkowych!).
Neurony sąsiadujące rozpoznają sygnały z sąsiadujących podobszarów: Skutek: Sygnały równomiernie rozmieszczone w pewnym obsza- rze neurony zostają tak nauczone, by każdy podobszar sygnałów był rozpoznawany przez inny neuron. 35
Po wytrenowaniu każdej praktycznej sytuacji odpowiada neuron, który ją reprezentuje. Sąsiedztwo powoduje wykrywanie sytuacji podobnych do prezentowanych. W sieci powstaje wewnętrzny obraz świata zewnętrznego. Sygnały blisko siebie będą wykrywane przez leżące blisko siebie neurony. Przykładowe zastosowania: robot dostosowujący zachowanie do zmiennego środowiska; systemy bankowe stworzenie modelu wiarygodnego kredytobiorcy. 36
SIECI REKURENCYJNE 37 Zawierają sprzężenia zwrotne: Po jednorazowym podaniu sygnału WE długotrwały proces zmiany sygnału WY, w efekcie stan równowagi.
Waga sprzężenia dodatnia sygnał zmienia się jednokierunkowo (aperiodycznie); Waga sprzężenia ujemna sygnał zmienia się oscylacyjnie; Przy neuronach nieliniowych możliwe chaotyczne błądzenie sygnałów; Zachowania: stabilne ( niestabilne (wartości( sygnału coraz większe). stabilne (zbieganie zbieganie się sygnałów do określonej wartości); Zastosowania: zadania optymalizacji (stany( równowagi odpowiadają rozwiązaniom zadań); pamięci skojarzeniowe (drobny( fragment informacji ). pozwala odtworzyć całą informację). 38
SIECI HOPFIELDA Każdy neuron jest związany z każdym innym na zasadzie obustronnego sprzężenia zwrotnego. Zabroniono sprzężeń zwrotnych obejmujących pojedynczy neuron. Symetria współczynników wagowych: w xy =w yx X w xy Y w yx Skutek: zachodzące procesy są zawsze stabilne. 39