Wst p do sieci neuronowych, wykªad 05a Algorytm wstecznej propagacji bª du

Podobne dokumenty
Wst p do sieci neuronowych, wykªad 4 Algorytm wstecznej propagacji bª du, cz. 1

Algorytm propagacji wstecznej

Uczenie Wielowarstwowych Sieci Neuronów o

Wst p do sieci neuronowych 2010/2011 wykªad 7 Algorytm propagacji wstecznej cd.

WYKŁAD 4 PLAN WYKŁADU. Sieci neuronowe: Algorytmy uczenia & Dalsze zastosowania. Metody uczenia sieci: Zastosowania

Wst p do sieci neuronowych, wykªad 14 Zespolone sieci neuronowe

1 Bª dy i arytmetyka zmiennopozycyjna

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

1 Metody iteracyjne rozwi zywania równania f(x)=0

Ekstremalnie fajne równania

ANALIZA NUMERYCZNA. Grzegorz Szkibiel. Wiosna 2014/15

Wprowadzenie do Sieci Neuronowych Laboratorium 05 Algorytm wstecznej propagacji błędu

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Rozwi zanie równania ró»niczkowego metod operatorow (zastosowanie transformaty Laplace'a).

Wykªad 7. Ekstrema lokalne funkcji dwóch zmiennych.

Ukªady równa«liniowych

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka ADALINE.

Listy Inne przykªady Rozwi zywanie problemów. Listy w Mathematice. Marcin Karcz. Wydziaª Matematyki, Fizyki i Informatyki.

Funkcje wielu zmiennych

przewidywania zapotrzebowania na moc elektryczn

Ekonometria - wykªad 8

Funkcje wielu zmiennych

Podstawy Sztucznej Inteligencji (PSZT)

Modele wielorównaniowe. Problem identykacji

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Algorytm wstecznej propagacji błędów dla sieci RBF Michał Bereta

Wykªad 4. Funkcje wielu zmiennych.

Jednowarstwowe Sieci Neuronowe jako. klasykatory do wielu klas. (c) Marcin Sydow

Poprawa efektywnoci metody wstecznej propagacji bdu. Jacek Bartman

Metodydowodzenia twierdzeń

AM II /2019 (gr. 2 i 3) zadania przygotowawcze do I kolokwium

1 Ró»niczka drugiego rz du i ekstrema

Materiaªy do Repetytorium z matematyki

Janusz Adamowski METODY OBLICZENIOWE FIZYKI Zastosowanie eliptycznych równa«ró»niczkowych

i, lub, nie Cegieªki buduj ce wspóªczesne procesory. Piotr Fulma«ski 5 kwietnia 2017

Funkcje wielu zmiennych

Metody numeryczne i statystyka dla in»ynierów

c Marcin Sydow Przepªywy Grafy i Zastosowania Podsumowanie 12: Przepªywy w sieciach

Matematyka dyskretna dla informatyków

Ekonometria. wiczenia 1 Regresja liniowa i MNK. Andrzej Torój. Instytut Ekonometrii Zakªad Ekonometrii Stosowanej

Równania ró»niczkowe I rz du (RRIR) Twierdzenie Picarda. Anna D browska. WFTiMS. 23 marca 2010

2 Liczby rzeczywiste - cz. 2

Uczenie sieci neuronowych i bayesowskich

XVII Warmi«sko-Mazurskie Zawody Matematyczne

Podstawy modelowania w j zyku UML

Proste modele o zªo»onej dynamice

W poprzednim odcinku... Podstawy matematyki dla informatyków. Relacje równowa»no±ci. Zbiór (typ) ilorazowy. Klasy abstrakcji

Zadania z analizy matematycznej - sem. II Ekstrema funkcji wielu zmiennych, twierdzenia o funkcji odwrotnej i funkcji uwikªanej

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Zadania. 4 grudnia k=1

Metody numeryczne. Wst p do metod numerycznych. Dawid Rasaªa. January 9, Dawid Rasaªa Metody numeryczne 1 / 9

Sztuczna Inteligencja Tematy projektów Sieci Neuronowe

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Opis matematyczny ukªadów liniowych

Interpolacja funkcjami sklejanymi

MiASI. Modelowanie systemów informatycznych. Piotr Fulma«ski. 18 stycznia Wydziaª Matematyki i Informatyki, Uniwersytet Šódzki, Polska

Liniowe zadania najmniejszych kwadratów

1 Trochoidalny selektor elektronów

Lab. 02: Algorytm Schrage

Dynamiczne wªasno±ci algorytmu propagacji przekona«

Inteligentne systemy decyzyjne: Uczenie maszynowe sztuczne sieci neuronowe

Matematyka 1. Šukasz Dawidowski. Instytut Matematyki, Uniwersytet l ski

x y x y x y x + y x y

Macierze i Wyznaczniki

Wstęp do sieci neuronowych, wykład 07 Uczenie nienadzorowane cd.

Lekcja 9 - LICZBY LOSOWE, ZMIENNE

1 Granice funkcji wielu zmiennych.

Rozdziaª 13. Przykªadowe projekty zaliczeniowe

Bash i algorytmy. Elwira Wachowicz. 20 lutego

Wstęp do sieci neuronowych, wykład 6 Wsteczna propagacja błędu - cz. 3

Wstęp do sieci neuronowych, wykład 02 Perceptrony c.d. Maszyna liniowa.

JAO - J zyki, Automaty i Obliczenia - Wykªad 1. JAO - J zyki, Automaty i Obliczenia - Wykªad 1

Numeryczne zadanie wªasne

Macierze. 1 Podstawowe denicje. 2 Rodzaje macierzy. Denicja

Podstawy modelowania w j zyku UML

Uczenie sieci typu MLP

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Przetwarzanie sygnaªów

8. Neuron z ciągłą funkcją aktywacji.

Wstęp do sieci neuronowych, wykład 03 Warstwy RBF, jednostka Adaline.

Ekonometria Bayesowska

Metody bioinformatyki (MBI)

Macierze i Wyznaczniki

Programowanie wspóªbie»ne

AUTO-ENKODER JAKO SKŠADNIK ARCHITEKTURY DEEP LEARNING

Elementy inteligencji obliczeniowej

Kolokwium Zadanie 1. Dla jakich warto±ci parametrów a i b funkcja sklejona

Aproksymacja funkcji metod najmniejszych kwadratów

Makroekonomia Zaawansowana

ARYTMETYKA MODULARNA. Grzegorz Szkibiel. Wiosna 2014/15

Funkcje, wielomiany. Informacje pomocnicze

Zadania z analizy matematycznej - sem. II Rachunek ró»niczkowy funkcji wielu zmiennych

A = n. 2. Ka»dy podzbiór zbioru sko«czonego jest zbiorem sko«czonym. Dowody tych twierdze«(elementarne, lecz nieco nu» ce) pominiemy.

MODEL HAHNFELDTA I IN. ANGIOGENEZY NOWOTWOROWEJ Z UWZGL DNIENIEM LEKOOPORNO CI KOMÓREK NOWOTWOROWYCH

SSI - lab 5. DP SSI - lab 5 16, Kwiecie«, / 23

Twierdzenie Wainera. Marek Czarnecki. Warszawa, 3 lipca Wydziaª Filozoi i Socjologii Uniwersytet Warszawski

wiczenie nr 3 z przedmiotu Metody prognozowania kwiecie«2015 r. Metodyka bada«do±wiadczalnych dr hab. in». Sebastian Skoczypiec Cel wiczenia Zaªo»enia

Liniowe równania ró»niczkowe n tego rz du o staªych wspóªczynnikach

Rachunek caªkowy funkcji wielu zmiennych

Zbiory i odwzorowania

Transkrypt:

Wst p do sieci neuronowych, wykªad 05a M. Czoków, J. Piersa Wydziaª Matematyki i Informatyki, Uniwersytet Mikoªaja Kopernika w Toruniu 2012-11-14 Projekt pn. Wzmocnienie potencjaªu dydaktycznego UMK w Toruniu w dziedzinach matematyczno-przyrodniczych realizowany w ramach Poddziaªania 4.1.1 Programu Operacyjnego Kapitaª Ludzki

1 Sie wielowarstwowa Architektury sieci Dlaczego MLP? 2 3 Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych

Architektury sieci Dlaczego MLP? 1 Sie wielowarstwowa Architektury sieci Dlaczego MLP? 2 3 Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych

Powtórzenie Architektury sieci Dlaczego MLP? W sieciach skªadaj cych si z przynajmniej dwóch neuronów wyniki zwracane przez jedne neurony mog by wej±ciami dla innych neuronów. Takie sieci dziel si na: skierowane (ang. feed-forward) - niedopuszczane s cykle skierowane, w takiej sieci przepªyw informacji jest ustalony w jednym kierunku; sie skierowana charakteryzuje si synchroniczn dynamik, to jest ka»dy neuron, przed obliczeniem swojej aktywacji, czeka a» wszystkie jego wej±cia zostan obliczone, rekurencyjne (recurrent) - dopuszczane s cykle skierowane, wysªany impuls mo»e kiedy± do neuronu powróci, w ogólnym przypadku dopuszczalne jest, aby wej±ciem neuronu byªo jego wªasne wyj±cie.

Ogólna architektura MLP Architektury sieci Dlaczego MLP? Szczególnym typem sieci skierowanych s sieci warstwowe. Wszystkie perceptrony podzielone s na kolejno wyst puj ce po sobie warstwy rozª czne. Warstwa L + 1-sza za wej±cia przyjmuje wyniki z warstwy L-tej i tylko te. W sieciach MLP nie s dopuszczane bezpo±rednie poª czenia wewn trz tej samej warstwy ani poª czenia przeskakuj ce warstw tj. z warstwy L do L + 2, z L do L + 3 itd. Taka sie skªada si z trzech typów warstw: warstwa pierwsza wej±ciowa (jednostki w tej warstwie s to jednostki wej±ciowe), warstwa ostatnia wyj±ciowa (jednostki w tej warstwie s to jednostki wyj±ciowe), warstwy pomi dzy wej±ciow a wyj±ciow ukryte (jednostki w tych warstwach s to jednostki ukryte).

Architektury sieci Dlaczego MLP? Algorytmy uczenia i konstrukcji sieci skierowanych algorytmy konstrukcyjne architektura sieci zale»y gªównie od: algorytmu, zbioru ucz cego, dokªadno±ci jak chcemy osi gn, algorytm wstecznej propagacji bª du algorytm uczenia dla sieci wielowarstwowych (MLP), architektura jest z góry zadana, zanim przejdziemy do procesu uczenia, wiemy ile sie b dzie mie : warstw ukrytych, neuronów w ka»dej warstwie ukrytej, jednostek wej±ciowych i wyj±ciowych.

Ogólna architektura MLP Architektury sieci Dlaczego MLP? warstwa wejściowa x1 x2 warstwa ukryta y1 y2 warstwa wyjściowa z1 xi yj zk x0=1 (bias) y0=1 (bias) Warstwa wej±ciowa sieci, prezentowanej na rysunku, posiada I jednostek i dodatkowo jednostk peªni c funkcj progu, J jednostek w warstwie ukrytej oraz K jednostek wyj±ciowych. Sie o takiej architekturze b dzie sªu»yªa jako przykªad w caªej prezentacji.

Wyj±cie neuronu z warstwy ukrytej Architektury sieci Dlaczego MLP? warstwa wejściowa x1 x2 warstwa ukryta y1 y2 warstwa wyjściowa z1 a j = w t j x y j = φ(a j ) xi yj zk x0=1 (bias) y0=1 (bias)

Architektury sieci Dlaczego MLP? Wyj±cie neuronu z warstwy wyj±ciowej warstwa wejściowa x1 x2 warstwa ukryta y1 y 2 warstwa wyjściowa z1 b k = w t k y z k = φ(b k ) xi yj zk x0=1 (bias) y0=1 (bias)

Zalety MLP Architektury sieci Dlaczego MLP? jest w stanie przybli»y dowolnie zªo»one i skomplikowane odwzorowanie, u»ytkownik nie musi zna lub zakªada z góry»adnej formy wyst puj cych w poszukiwanym modelu zale»no±ci, nie musi nawet zadawa sobie pytania, czy jakiekolwiek mo»liwe do matematycznego modelowania zale»no±ci w ogóle wyst puj, wygodne narz dzie do wszelkiego rodzaju zastosowa«zwi zanych z prognozowaniem, klasykacj lub automatycznym sterowaniem,

1 Sie wielowarstwowa Architektury sieci Dlaczego MLP? 2 3 Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych

Przykªady ucz ce Niech dana b dzie lista N przykªadów ((x (1), t (1) ),..., (x (N), t (N) )). Za cel stawiamy sobie dobranie takiego ukªadu wag, by sie otrzymuj ca na wej±ciu x (n) = (1, x (n) (n) 1,.., x,.., x (n) ) dawaªa na i I wyj±ciu t (n) = (t (n) 1,.., t(n),.., t(n) ), gdzie n 1,.., N. k K Zamiast progów stosujemy rozszerzony wektor wej±ciowy i rozszerzony wektor wag, mianowicie ka»da jednostka licz ca dostaje na wej±ciu dodatkowo 1. Wagi mi dzy jednostkami a dodatkowymi wej±ciami pomno»one przez -1 odpowiadaj progom.

Funkcja bª du Inaczej ujmuj c problem, naszym celem jest zminimalizowanie nast puj cej funkcji bª du: ERROR = 1 2 N K (z (n) k n=1 k=1 t (n) k )2. Warto± powy»szej funkcji zale»y od warto±ci wag. Aby znale¹ jej minimum b dziemy modykowa wagi, za pomoc algorytmu gradientu prostego.

Dana niech b dzie funkcja f : R d R ci gªa i ró»niczkowalna (istniej pochodne cz stkowe f x 1... f ). Chcemy wyznaczy xd minimum (lokalne) funkcji tj. x R d, takie»e f (x) f (y) dla y nale» cych do pewnego otoczenia x. Dodatkowo dany niech b dzie pewien punkt startowy a (0) R d. Czym jest f (a (0) x 1 )?

Przy kilku zaªo»eniach f x 1 (a (0) ) intuicyjnie mo»e by interpretowana jako kierunek, w któr stron funkcja ro±nie zmieniaj c pierwsz wspóªrz dn, przy pozostaªych ustalonych. Maj c caªy zestaw pochodnych cz stkowych (gradient) mamy dokªadny kierunek, w którym funkcja najszybciej ro±nie. Zatem: szukaj c maksimum nale»y zatem wykona krok w tym»e kierunku, szukaj c minimum nale»y znale¹ kierunek najszybszego wzrostu... i wykona krok w przeciwn stron.

1 rozpocznij w losowym/wybranym a (0) : 2 dla ka»dej wspóªrz dnej g = 1..d: a (m+1) g = a (m) g η f x g (a (m) ), gdzie η jest bliskim zeru, dodatnim wspóªczynnikiem uczenia, 3 powtarzaj krok 2,

50 40 30 20 10 06 4 2 0-2 -4-6 -6-4 -2 0 2 4 6

Sigmoida Aby±my mogli minimalizowa funkcj ERROR za pomoc algorytmu gradientu prostego, musi ona by ci gªa i ró»niczkowalna. eby warunek ten byª speªniony, funkcje aktywuj ce jednostek nale» cych do MLP musz by równie» ci gªe i ró»niczkowalne. Takie wªasno±ci speªniaj na przykªad sigmoidy. 1 sigmoida: 2 symetryczna sigmoida: φ(s) = σ(s) = 1 1 + exp( s), φ(s) = 2σ(s) 1 = 1 exp( s) 1 + exp( s),

Pochodna sigmoidy Wa»na obserwacja: σ (s) = s (1 + e s ) 1 = (1 + e s ) 2 e s ( 1) = 1 1 + (1 1 ) = σ(s)(1 σ(s)). e s 1 + e s

1 Sigmoida i jej sigmoida pochodna 0.8 0.6 0.4 0.2 0-4 -2 0 2 4 0.3 0.25 0.2 0.15 0.1 0.05 0 pochodna sigmoidy -4-2 0 2 4

Nieci gªa funkcja bª du 4 3.5 3 2.5 2 1.5 1 0.5 0 4 2 0-2 2 0-2 -4-4 4

Ci gªa funkcja bª du 4 3.5 3 2.5 2 1.5 1 0.5 0 25 20-5 15 10 5 0 20 15 10 5 0-5 25

Funkcja bª du Cel zmodykowa wagi, u»ywaj c algorytmu spadku gradientowego tak,»eby zminimalizowa bª d ERROR. ERROR = 1 2 N K (z (n) k n=1 k=1 t (n) k )2 Oznaczmy przez E (n) dla n 1,.., N funkcj bª du dla jednego przykªadu ucz cego. Zatem: E (n) = 1 2 K k=1 ERROR = (z (n) k N n=1 t (n) k )2, E (n).

Funkcja bª du Dodatkowo funkcj bª du dla jednego przykªadu E (n) rozbijmy na sum wyra»e«e (n). Przez E (n) b dziemy oznacza bª d kwadratowy k k dla n-tego przykªadu dla k-tego wyj±cia sieci. A wi c: E (n) k = 1 2 (z(n) k E (n) = K k=1 t (n) k )2, E (n) k.

Koncepcja algorytmu Aby minimalizowa bª d u±redniony po przykªadach ERROR, minimalizujemy bª d E dla poszczególnych przykªadów. Dla wszystkich wag g = 1..d wykonujemy: w (m+1) g = w (m) g η E w g (w (m) ) Koncepcja algorytmu wstecznej propagacji bª du propagowanie gradientu bª du od wyj± z powrotem do wej±cia.

Dowód poprawno±ci warstwa wejściowa x1 x2 warstwa ukryta y1 y2 warstwa wyjściowa z1 z k = φ(b k ), E = 1 2 b k = w t k y K (z h t h ) 2 = xi yj zk h=1 1 2 K (φ(b h ) t h ) 2 h=1 x0=1 (bias) y0=1 (bias) E = 1 w kj w kj 2 K (φ(b h ) t h ) 2 = h=1 w kj 1 2 (φ(b k) t k ) 2 = E k w kj

Dowód poprawno±ci E w kj = E k w kj = warstwa wejściowa x1 x2 warstwa ukryta y1 y2 warstwa wyjściowa z1 w kj 1 2 (φ(b k) t k ) 2 xi yj zk E k b k b k w kj = δ k y j E k b k = δ k = (z k t k )φ (b k ) x0=1 (bias) y0=1 (bias) b k = (w k1 y1 + w k2 y2 +.. + w kj y j +.. + w kj y J ) = y j w kj w kj

Dowód poprawno±ci warstwa wejściowa x1 x2 warstwa ukryta y1 y2 warstwa wyjściowa z1 xi yj zk E w ji E = E a j a j = δ j =? a j w ji = δ j x i x0=1 (bias) y0=1 a j = (w j1 x1 + w j2 x2 +.. + w ji x i +.. + w ji x I ) = x i w ji w ji (bias)

Dowód poprawno±ci warstwa wejściowa x1 x2 warstwa ukryta y1 y2 warstwa wyjściowa z1 xi yj zk a j = w t j x y j = φ(a j ) b k = w t k y δ j = E a j = a j 1 2 δ j = K h=1 E h b h b h a j = K (φ(b h ) t h ) 2 = h=1 K h=1 δ h b h a j x0=1 K h=1 (bias) y0=1 (bias) a j 1 2 (φ(b h) t h ) 2 = K h=1 E h a j

Dowód poprawno±ci b h = (w h1 y1 + w h2 y2 +.. + w hj y j +.. + w hj y J ) = a j a j a j (w h1 φ(a1) + w h2 φ(a2) +.. + w hj φ(a j ) +.. + w hj φ(a J )) = δ j = w hj φ(a j ) a j = w hj φ(a j ) a j = w hj φ (a j ) K K δ h w hj φ (a j ) = ( δ h w hj )φ (a j ) h=1 h=1

1 wybieramy maªe wagi pocz tkowe. Wybieramy te» niewielki wspóªczynnik uczenia η > 0, 2 iterujemy, póki bª d ERROR si zmniejsza (ewentualne du»e odchylenia pojedynczych przykªadów nale»y traktowa raczej jako przejaw zaszumienia danych wej±ciowych ni» niedoskonaªo±ci sieci): 1 losujemy przykªad x z wyj±ciem t, 2 przebiegamy sie w przód, dla ka»dej jednostki zapami tuj c sum wej±ciow i jej wyj±cie (warto± funkcji aktywuj cej na sumie wej±ciowej), 3 przebiegamy sie w tyª, liczymy δ dla ka»dej jednostki 4 zmieniamy wagi,

Adnotacja do 2.2 Przebiegamy sie w przód, dla ka»dej jednostki zapami tuj c sum wej±ciow i jej wyj±cie. Suma wej±ciowa dla jednostek ukrytych ma warto± : a j = w t j x, natomiast dla jednostek wyj±ciowych: b k = w t k y. Wyj±cie jednostki ukrytej (warto± funkcji aktywuj cej) ma warto± : natomiast dla jednostki wyj±ciowej: y j = φ(a j ), z k = φ(b k ).

Adnotacja do 2.3 - Przebiegamy sie w tyª, liczymy δ dla ka»dej jednostki. δ dla jednostek wyj±ciowych: δ dla jednostek ukrytych: δ k = (z k t k )φ (b k ). K δ j = ( δ k w kj )φ (a j ). k=1

Adnotacja do 2.3 Przebiegamy sie w tyª, liczymy δ dla ka»dej jednostki. Pami tajmy,»e dla jednostek wyj±ciowych: natomiast dla jednostek ukrytych: φ (b k ) = z k (1 z k ), φ (a j ) = y j (1 y j ), gdzie φ jest funkcj sigmoidaln. Zatem dla jedostek wyj±ciowych: δ k = (z k t k )φ (b k ) = (z k t k )z k (1 z k ), natomiast dla jednostek ukrytych: K K δ j = ( δ k w kj )φ (a j ) = ( δ k w kj )y j (1 y j ). k=1 k=1

Sie wielowarstwowa u»ywana we wstecznej propagacji bª du mo»e mie, a nawet powinna mie, wi cej ni» jedn warstw ukryt. δ dla wszystkich jednostek z warstw ukrytych jest liczona w taki sam sposób. Musimy pami ta o tym,»e najpierw liczymy δ dla jednostek z ostatniej warstwy ukrytej, potem dla jednostek z przedostatniej warstwy ukrytej, potem dla jednostek z przed przedostatniej warstwy ukrytej itd.

Adnotacja do 2.4 zmieniamy wagi. Dla warstwy wyj±ciowej: Dla warstw ukrytych: w (m+1) kj w (m+1) ji = w (m) kj ηδ k y j. = w (m) ji ηδ j x i. Staªa uczenia η powinna mie dodatni warto± blisk zeru np. η = 0.001.

Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych 1 Sie wielowarstwowa Architektury sieci Dlaczego MLP? 2 3 Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych

Minima lokalne Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych mo»e, przy niesprzyjaj cych okoliczno±ciach, utkn w minimum lokalnym. Co gorsza, zazwyczaj nie jeste±my w stanie stwierdzi, czy zwrócony wynik jest minimum globalnym czy lokalnym. W takich sytuacjach najprostszym (i jednym z najlepszych) rozwi zaniem jest restart algorytmu z losowego rozwi zania pocz tkowego i wybranie najlepszego ze zwróconych wyników.

Wady algorytmu Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych wymaga du»ej liczby iteracji, by osi gn zbie»no±, mo»e si okaza zbyt wolny, je»eli przyjmie si za maªy wspóªczynnik uczenia, z kolei zbyt du»a warto± η grozi wyst pieniem oscylacji wokóª minimum, algorytm jest wra»liwy na wyst powanie minimów lokalnych, Jak sobie z tym poradzi? Czy mo»na sobie z tymi problemami poradzi efektywnie?

Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych Adaptacyjny dobór wspóªczynnika uczenia Dzi ki odpowiednim modykacjom wspóªczynnika uczenia mo»emy przy±pieszy nauk sieci i poprawi jej zbie»no±. { η (m+1) iη = (m) ERROR (m+1) p ERROR (m) ERROR (m+1) > p ERROR (m) gdzie: dη (m) p dopuszczalny wspóªczynnik wzrostu bª du (np. p = 1.05), i wspóªczynnik zwi kszania warto±ci, i 1 (np. i = 1.2), d wspóªczynnik zmniejszania warto±ci, d < 1 (np. d = 0.2).

Metoda momentu Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych Do procesu uaktualniania wag wprowadza si tzw. moment (p d, bezwªadno± ), który jest proporcjonalny do zmiany tej wagi w poprzedniej iteracji. w (m+1) ji = w (m) ji ηδ j x i + α w (m) ji w (m+1) kj = w (m) kj ηδ k y j + α w (m) kj w (m) ji w (m) kj = w (m) ji = w (m) kj α [0, 1), sugerowana warto± 0.1. w (m 1) ji w (m 1) kj

Metoda momentu Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych Skªadnik momentu nie powinien caªkowicie zdominowa procesu uczenia, poniewa» grozi to niestabilno±ci procesu uczenia. Aby temu zapobiec, kontroluje si warto± funkcji bª du w trakcie uczenia, doprowadzaj c do jej wzrostu jedynie w ograniczonym zakresie np. o p procent. Je±li w kolejnych iteracjach jest speªniona relacja ERROR (m+1) < (1 + 0.01p)ERROR (m), to krok jest akceptowany i nast puje aktualizacja wag. W przeciwnym razie zmiany s pomijane i przyjmuje si w (m+1) = 0. W takim przypadku skªadnik gradientowy odzyskuje przewag nad skªadnikiem momentu i proces uczenia przebiega zgodnie z kierunkiem minimalizacji wyznaczonym przez aktualny wektor gradientu.

Jak dziaªa metoda momentu? Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych Dla pªaskich odcinków funkcji bª du, moment i gradient maj ten sam kierunek, ich dziaªanie kumuluje si i algorytm przy±piesza, dla α = 0.9 krok na takim odcinku mo»e by 10 razy dªu»szy. W pobli»u minimum, skªadnik momentu nie b d c zwi zany z aktualn warto±ci gradientu, mo»e spowodowa zmian wag prowadz c do chwilowego wzrostu warto±ci funkcji bª du i w efekcie opuszczenia strefy przyci gania tego minimum.

Normalizacja danych Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych Korzystaj c z sieci neuronowej typu MLP wyposa»onej w sigmoidalne funkcje aktywacji, koniecznie staje si przeprowadzenie skalowania lub normalizacji danych podawanych na wej±ciach i wyj±ciu sieci. Brak odpowiedniej transformacji powoduje powa»ne zakªócenia w procesie uczenia oraz gorsze wªa±ciwo±ci nauczonej sieci.

Normalizacja danych Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych Oczekiwane warto±ci wyj± nie powinny przyjmowa kresu górnego ani dolnego funkcji aktywacji, to jest warto±ci 1 i 0 odpowiednio. Przykªadowo dla sigmoidy mo»e by to przedziaª [0.1; 0.9] [0; 1]. Odpowiednio dla sigmoidy symetrycznej np. [ 0.9; 0.9]. Dla wej± nie ma tak ±cisªych ogranicze«, mog by skalowane do takich samych warto±ci co wej±cia. Wa»ne,»eby byªy bliskie zeru i miaªy maª amplitud.

Normalizacja danych Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych Dlaczego skalujemy do przedziaªu np. [0.1; 0.9] a nie (0; 1) (dla sigmoidy niesymetrycznej)? Zaªó»my,»e mamy dwie zmienne v1 i v2. Obie s do± du»e i maj taki sam znak, np. v1 = 10 v2 = 5. Mimo tego,»e ró»nica mi dzy nimi jest znaczna (50%), gdy policzymy dla nich σ(v1) = 0.99995 oraz σ(v2) = 0.99331, otrzymamy wyniki bardzo bliskie sobie (ró»nica rz du 0.7%). Z drugiej strony pochodna sigmoidy w x = 5 oraz x = 10 b dzie bardzo maªa, zatem i zmiana wag równie» maªa, co wydªu»y dziaªanie algorytmu.

Normalizacja danych Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych Wyst powanie du»ych ró»nic w zakresach warto±ci przyjmowanych przez zmienne mo»e ¹le wpªywa na dziaªanie neuronu, zaburzaj c wpªyw poszczególnych wej±. Sieci uczone w oparciu o zmienne o du»ych zakresach s równie» bardziej podatne na utkwienie w minimach lokalnych. Du»e warto±ci zmiennych wej±ciowych prowadz tak»e do nasycenia sigmoidalnej funkcji aktywacji, której pochodna w takim przypadku zbiega do warto±ci 0, blokuj c tym samym proces uczenia.

Sigmoida i jej pochodna 5 f(x)=x sigm. poch. sigm. 4 Problemy ze zbie»no±ci Modykacje algorytmu Normalizacja danych 3 2 1 0-4 -2 0 2 4