Transcript
Page 1: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Uczenie sieci neuronowych

Page 2: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Etapy życia SSN

�Uczenie sieci neuronowej

�Testowanie SSN

�Wykorzystanie SSN do rozwiązywania nauczonego zadania

Page 3: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Metody uczenia sieci neuronowych

� Rozróżnia się dwa rodzaje uczenia:� nadzorowane (z nauczycielem),� nienadzorowane (bez nauczyciela).

� Wagi zawierają całą wiedzę jako posiada neuron (sieć neuronowa)

� Ogólna zasada nauki przyjęta dla sieci neuronowych brzmi: wektor wag w rośnie proporcjonalnie do iloczynu sygnału wejściowego xi uczącego r

Uczenie sieci polega na automatycznym (według odpowiedniego algorytmu) dobraniu takich wartości wag, przy których sieć będzie możliwie najlepiej rozwiązywała dane zadanie.

Page 4: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Uczenie nadzoworwane

� Uczenie nadzorowane stosuje się tylko wówczas, gdy istnieje możliwość zweryfikowania poprawności odpowiedzi udzielanych przez sieć; oznacza to, że dla każdego wektora wejściowego musi być znana dokładna postać wektora wyjściowego (pożądana odpowiedź) .

� Schemat postępowania� podaj na wejście sieci

wektor wejściowy� wyznacz błąd popełniany

przez sieć� wykorzystaj wyznaczony

błąd do korekty wag sieci.

Page 5: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Uczenie nienadzorowane

� Uczenie nienadzorowane stosuje się wówczas gdy nie znamy oczekiwanych odpowiedzi na zadany wzorzec

� Warunki samouczenia

� Sygnały wejściowe muszą się dać jakoś sklasyfikować, zaszufladkować (muszą być "podobne" do pewnych wzorców tzw. atraktorów)

� Neuronów musi być wyraźnie więcej, niż atraktorów. Znaczy to, że sieć musi być dostatecznie "mądra", by zaabsorbować pewną dawkę wiedzy.

� Różnorodne początkowe preferencje poszczególnych neuronów. Jeśli sieć ma się nauczyć rozpoznawania różnych obiektów, musi mieć takie neurony, które mają różne "upodobania".

Page 6: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Kolejność prezentacji wzorców uczących

� Jak ustalić kolejność prezentacji wzorców?� Prezentować dany wzorzec, aż do uzyskania stabilnego wektora wag i następnie

przejść do kolejnego wzorca.� Prezentować wzorce cyklicznie, w tej samej kolejności.� Do każdej prezentacji losować wzorzec - wszystkie wzorce są jednakowo

prawdopodobne do wylosowania

� Najodpowiedniejsza jest metoda trzecia (losowego prezentowania wzorców), gdyż:� pierwsza metoda powoduje, iż sieć po wyodrębnieniu danego wzorca traci

zdolność rozpoznawania wzorca nauczonego wcześniej,� druga metoda może powodować wpadanie sieci w cykl, który nie prowadzi do

zbieżności.

Page 7: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguły uczenia sieci neuronowychWektor wag wwwwiiii = [w= [w= [w= [wi1 i1 i1 i1 wwwwi2i2i2i2 ... w... w... w... winininin]]]]tttt rośnie proporcjonalnie do iloczynu sygnałów wejściowego xxxx i uczącego rrrr

( ) )()(),(),()( ttdttrct iii xxww ∗∗=∆

i-ty neuron

Generator sygnału uczącego

yi

di

∆∆∆∆wi

r

c

x

x1x2

xj

xn

...

...

x

wi1

wij

win

Sygnał uczący r jest w ogól-ności funkcją wi , x i czasami sygnału nauczyciela d

x – wektor wejściowywi – wektor wag i-tego neuronuyi – odpowiedź i-tego neuronu

di – oczekiwana odpowiedź i-tego neuronur – sygnał uczącyc – stała uczenia

Page 8: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła Heba

� Odnosi się do uczenia bez nauczyciela

� Sygnałem uczącym jest sygnał wyjściowy neuronu

� Przyrost wektora wag wynosi:

� Pojedyncza składowa wektora wg zmienia się o:

� Wymaga wstępnego ustawienia wag na wartości przypadkowe z otoczenia 0 (zera)

( )xw tif== iyr

jiij xcyw =∆

( )xxwxw tiii ccy f==∆

x – wektor wejściowywi – wektor wag i-tego neuronuyi – odpowiedź i-tego neuronu

di – oczekiwana odpowiedź i-tego neuronur – sygnał uczącyc – stała uczenia

Page 9: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła Heba - interpretacja reguły

� Wzmocnieniu ulegaj te wagi, których wejścia są aktywne (mają duże x) w sytuacji gdy duże jest wzbudzenie neuronu (y).

� Sieć autoasocjacyjna: jeżeli pewien wzór wzbudzenia jest sygnalizowany przez pewne wyjcie y, to w miar upływu czasu ta sygnalizacja staje się coraz wyraźniejsza.

� Reguła prowadzi do uzyskania najlepszej korelacji pomiędzy sygnałami wejściowymi, a zapamiętanym w wagach wzorcem.

Reguła stanowi praktyczną realizację stwierdzenia z zakresu neurologii (Hebb, 1949): Jeżeli akson komórki A bierze syste-matycznie udział w pobudzaniu komórki B powodującym jej aktywację, to wywołuje to zmianę metaboliczną w jednej lub w obu komórkach, prowadzącą do wzrostu skuteczności pobudzania komórki B przez komórkę A

Page 10: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła Heba – przykład

yx1

x4

w1

w4

≥<−==

−=

−=

−−−=

−=

0udla10udla1)usgn()u(f

5,0011

w

5,1110

x

5,125,0

1

x,

05,121

x 1321

C=1 wektory wejściowe wagi początkowe funkcja aktywacji

� Krok1:Wektor x1 daje łączne pobudzeni u1 o wartości

−=

−+

−=+=

5,05,132

05,121

*1*1

5,0011

xcyww 1112

[ ] 3

05,121

5,0011xwu 1

T11 =

−==

1)3sgn()u(fy 11 ===

Przekształcając potencjał membranowy przez funkcję aktywacji otrzymujemy wyjście neuronu:

Które pozwala nam w oparciu o regułę Heba wyznaczyć nowe wartości wag neuronu

Page 11: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

-

====

---

−−−−

-

====++++====

25,35,2

1

5,125,0

1

5,05,132

2223 xcyww

[ ] 25,0

5,125,0

1

5,05,132xwu 2

T22 −=

−−−

−==

1)25,0sgn()u(fy 22 −=−==

� Krok2: Na wejście podajemy wektor x2

yx1

x4

w1

w4

≥<−==

−=

−=

−−−=

−=

0udla10udla1)usgn()u(f

5,0011

w

5,1110

x

5,125,0

1

x,

05,121

x 1321

C=1 wektory wejściowe wagi początkowe funkcja aktywacji

Page 12: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

−=

−−

−=+=

5,05,45,3

1

5,1110

25,35,2

1

xcyww 3334

[ ] 3

5,1110

25,35,21xwu 3

T33 −=

−−==

1)3sgn()u(fy 33 −=−==

� Krok3: Na wejście podajemy wektor x2

Dla dyskretnej (bipolarnej) funkcji aktywacji i c=1 uczenie metodą Hebba sprowadza się do dodania lub odjęcia wektora wejściowego do (od) wektora wag

yx1

x4

w1

w4

≥<−==

−=

−=

−−−=

−=

0udla10udla1)usgn()u(f

5,0011

w

5,1110

x

5,125,0

1

x,

05,121

x 1321

C=1 wektory wejściowe wagi początkowe funkcja aktywacji

Page 13: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła Heba - przykład

yx1

x4

w1

w4

1)uexp(1

2)u(f

5,0011

w

5,1110

x

5,125,0

1

x,

05,121

x 1321 −

+=

=

−=

−−−

=

=

C=1 wektory wejściowe wagi początkowe funkcja aktywacji

� Krok1:Wektor x1 daje łączne pobudzeni u1 o wartości

� Krok2: Na wejście podajemy wektor x2

� Krok3: Na wejście podajemy wektor x2

[ ] 3

05,121

5,0011xwu 1

T11 =

−−== 905,01

e12)u(fy 3

11 =−+

==⇒

−=

−+

−=+=

5,0357,181,2

905,1

05,121

*905,0

5,0011

xcyww 1112

077,0)u(fy 22 −==

=+=⇒

616,0512,1772,2828,1

xcyww 2223

905,0)u(fy 33 −==

−=+=⇒

783,044,270,3

828,1

xcyww 3334

Dla ciągłej funkcji aktywacji tylko ułamek wzorca wejściowego zwiększa lub zmniejsza wektor wag. Korekcja wag jest więc łagodniejsza, ale zachodzi zasadniczo w tym samym kierunku.

Page 14: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła Heba – cechy, wady i zalety

� SN skutecznie sama organizuje sygnały wejściowe w klastry.

� Silnie zależy od wylosowanych na początku procesu uczenia wag. Wartości te wpłyną na podział na klasy. (Jeżeli początkowe wartości wag oznaczaj wrodzone skłonności sieci, to będą się one pogłębiały podczas uczenia.)

� Liczba neuronów w warstwie wyjściowej powinna by większa od liczby klas.

� Nie wiemy, który neuron będzie odpowiedzialny za rozpoznanie konkretnej klasy (np.. przy rozpoznawaniu liter).

� Może się zdarzyć, że żaden neuron nie nauczy się rozpoznawania jednej z klas.

� Wagi rosną bez ograniczenia.

� Duża wrażliwość na szumy.

Page 15: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła perceptronowa

� Dotyczy nauki z nauczycielem i odnosi się do sieci z neuronami dyskretnymi

� Sygnałem uczącym jest popełniany błąd

� Korekcja wag odbywa się wg zależności

� Wartości początkowe wag powinny być losowe.

ii ydr −=

( )xxww )sgn( tii idc −=∆

Rosenblat 1958

x – wektor wejściowywi – wektor wag i-tego neuronuyi – odpowiedź i-tego neuronu

di – oczekiwana odpowiedź i-tego neuronur – sygnał uczącyc – stała uczenia

Page 16: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła delta

� Odnosi się do uczenia nadzorowanego i obowiązuje dla neuronów z ciągłymi funkcjami aktywacji

� Sygnał uczący jest zdefiniowany jako:

� Wzór na korekcję wag ma postać:

� Wartości początkowe wag powinny być losowe.

( )[ ] ( )xwxw ti

ti ff ′−== i

defdr δ

( ) ( )xxww tiiii ydc f ′−=∆

Reguła delty jest wynikiem minimalizacji sumy kwadratów błędów

McClelland, Rumelhart, 1986

Regułę można uogólnić na przypadek sieci wielowarstwowych

x – wektor wejściowywi – wektor wag i-tego neuronuyi – odpowiedź i-tego neuronu

di – oczekiwana odpowiedź i-tego neuronur – sygnał uczącyc – stała uczenia

Page 17: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła Widrowa-Hoffa (reguła LMS)

� Odnosi się do uczenia z nauczycielem sieci o neuronach z dowolnąfunkcją aktywacji

� Sygnał uczący jest zdefiniowany jako:

� Korekta wektora wag ma postać

� Wartości początkowe wag powinny być losowe.

xw ti−= i

defdr

( )xxww tiii dc −=∆

Widrow, 1962

Reguła Widrowa-Hoffa jest wynikiem minimalizacji błędu średniokwadratowego

ii udr −=

( )xw iii udc −=∆

x – wektor wejściowywi – wektor wag i-tego neuronuui – potencjał i-tego neuronu

di – oczekiwana odpowiedź i-tego neuronur – sygnał uczącyc – stała uczenia

Page 18: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła korelacyjna

� Odnosi się do uczenia z nauczycielem sieci o neuronach z dowolną funkcją aktywacji

� Sygnał uczący jest zdefiniowany jako:

� Korekta wektora wag ma postać

� Reguła jest analogią do reguły Hebba (uczenia nienadzorowanego � di=yi)

idr =

xw ii cd=∆

x – wektor wejściowywi – wektor wag i-tego neuronuyi – odpowiedź i-tego neuronu

di – oczekiwana odpowiedź i-tego neuronur – sygnał uczącyc – stała uczenia

Page 19: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła „wygrywający bierze wszystko” (WTA)

� Odnosi się do uczenia bez nauczyciela (grupa uczenia z rywalizacją)

� Korekta wektora wag ma postać

α>0 – współczynnik malejący w miarępostępu uczeniai – numer wygrywającego neuronu ustalony z kryterium

� „Neuron wygrywający” może być rozszerzony na sąsiadów.

� Wartości początkowe wag są losowe, w kolejnych krokach poddaje się je normalizacji.

( )ii wxw −=∆ α

( )xwxw tkpk ..,

max21

ti

==

Page 20: 0 * 0 7 6 7 6 ˘ ˘ 6ˇ8 6 7 7 7ˇ8 7 7 6 9 7ˇ8: 6ˇ8 7 ˇ 9 6 7ˇ8: 7 9 7 7 : ;

Jacek Bartman

Reguła gwiazdy wyjść (outstar)

� Odnosi się do uczenia z nauczycielem� Korekta wektora wag ma postać

ββββ>0 współczynnik malejący w miarę postępu uczenia ( )jj wdw −=∆ β

Grosberg, 1977


Top Related