Jacek Bartman
Uczenie sieci neuronowych
Jacek Bartman
Etapy życia SSN
�Uczenie sieci neuronowej
�Testowanie SSN
�Wykorzystanie SSN do rozwiązywania nauczonego zadania
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.
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.
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".
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.
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
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
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
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
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
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
�
�
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.
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.
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
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
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
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
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
==
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