• Nie Znaleziono Wyników

11. Sieci wielowarstwowe

N/A
N/A
Protected

Academic year: 2021

Share "11. Sieci wielowarstwowe"

Copied!
18
0
0

Pełen tekst

(1)

Home Page Title Page JJ II J I Page1of18 Go Back Full Screen Close Quit

Wykład 11

Sieci wielowarstwowe

Kazimierz Grygiel

(2)

Home Page Title Page JJ II J I Page2of18 Go Back Full Screen Close Quit

(3)

Home Page Title Page JJ II J I Page3of18 Go Back Full Screen Close Quit

Moc obliczeniowa

• Obliczanie funkcji boolowskich

– dobra wiadomość: jedna warstwa ukryta wystarczy, żeby

ob-liczać dowolną funkcję boolowską!

– zła wiadomość: w ogólnym przypadku liczba jednostek w

warstwie ukrytej zależy wykładniczo od liczby argumentów

funkcji (wejść)

• Aproksymacja funkcji ciągłych: analogicznie

• Aproksymacja dowolnego zadanego zbioru funkcji z zadaną

(4)

Home Page Title Page JJ II J I Page4of18 Go Back Full Screen Close Quit

Idea dowodu dla funkcji boolowskiej

F (x

1

, . . . , x

n

)

• Rozważamy dyskretny model bipolarny sieci z n wejściami i pojedynczym

wyjściem (−1, +1) oraz funkcją aktywacji sgn(·)

• Warstwa ukryta składa się z 2n jednostek o numerach j = 0, . . . , 2n − 1

• Każda jednostka ukryta reprezentuje jeden zestaw argumentów (wzorzec

wejściowy)

• Waga wjk połączenia wejścia k z jednostką j warstwy ukrytej jest równa

±1 w zależności od k-tej cyfry rozwinięcia dwójkowego j (+1 dla 1, -1 dla

0)

• Progi jednostek ukrytych są równe n − 1

• Waga w0j połączenia j-tej jednostki ukrytej z jednostką wyjściową jest

równa wartości (±1) funkcji F dla wzorca kodowanego przez j

• Próg jednostki wyjściowej jest równy minus sumie wag połączeń

wchodzą-cych

• Obserwacja: dokładnie jedna jednostka warstwy ukrytej odpala dla

dane-go wzorca wejściowedane-go. Wartość argumentu funkcji aktywacji dla jednostki wyjściowej (H0− θ0) jest równa ±2

(5)

Home Page Title Page JJ II J I Page5of18 Go Back Full Screen Close Quit

Objaśnienia

• Niech j - numer jednostki ukrytej odpowiadającej wzorcowi wejściowemu

ξ oraz j0, . . . , jn−1 — przekodowane „bipolarnie” rozwinięcie dwójkowe j.

Wtedy ξk = jk = wjk dla k = 0, . . . , n − 1

• Zatem dla wzorca ξ na wejściu

Hj = n−1 X k=0 wjkξk = n−1 X k=0 1 = n,

a dla dowolnej innej jednostki ukrytej i, i 6= j

Hi =

n−1

X

k=0

wikξk ¬ (n − 1) + (−1) = n − 2

• Niech θ0 = −PxF (x) = −(d − u) = u − d, gdzie d – liczba wartości

dodatnich, a u – liczba wartości ujemnych przyjmowanych przez F (i odp. dodatnich i ujemnych wag w0i). Wówczas dla wzorca ξ jednostka wyjściowa

dostaje sygnał

(a) H0 = +1 + (−1)((d − 1) − u) = +2 + (u − d), jeśli F (ξ) = +1

(6)

Home Page Title Page JJ II J I Page6of18 Go Back Full Screen Close Quit

(7)

Home Page Title Page JJ II J I Page7of18 Go Back Full Screen Close Quit

Uogólnienie - przypadek ciągły

• Funkcja aktywacji dla jednostek ukrytych: g(u) = tgh(u)

• Funkcja aktywacji dla jednostki wyjściowej: g(u) = sgn(u)

• Wagi połączeń warstwy wejściowej z warstwą ukrytą: w

jk

= ±q,

gdzie q jest dostatecznie dużą liczbą rzeczywistą

• Progi jednostek ukrytych: (n − 1)q

• Wagi połączeń warstwy ukrytej z jednostką wyjściową: ±c

• Wartość argumentu funkcji aktywacji dla jednostki wyjściowej

(8)

Home Page Title Page JJ II J I Page8of18 Go Back Full Screen Close Quit

Funkcje NERF

• Jakie funkcje boolowskie można obliczać przy użyciu sieci, w

których liczba jednostek zależy wielomianowo od liczby wejść?

• Taką klasę funkcji nazwano Network Efficiently Representable

Functions (NERF)

(9)

Home Page Title Page JJ II J I Page9of18 Go Back Full Screen Close Quit

DODATEK:

Algorytm

wstecznej propagacji

(10)

Home Page Title Page JJ II J I Page10of18 Go Back Full Screen Close Quit

Oznaczenia i definicje

Numeracja warstw: m = 0, 1, . . . M

(0: warstwa wejściowa, M : warstwa wyjściowa) Numeracja wzorców: µ = 1, . . . p

Wzorce wejściowe: ξµ Wzorce wynikowe: ηµ

wijm: wagi na połączeniach warstw m − 1 i m (m = 1, . . . M )

hm,µi = X

j

wijmVjm−1,µ: sygnały pobudzenia dla jednostek w warstwie m

g: funkcja aktywacji — w zależności od modelu:

g(h) = σβ(h) = 1 1 + e−2βh g(h) = tgh βh = e βh− e−βh eβh+ e−βh

Vim,µ = g(hm,µi ): stany jednostek w warstwie m (m = 1, . . . M )

Vi0,µ = ξiµ: sygnały wejściowe (= stany jednostek wejściowych)

(11)

Home Page Title Page JJ II J I Page11of18 Go Back Full Screen Close Quit

Minimalizacja błędu

• Funkcja błędu sieci dla zadanego zestawu wzorców treningowych:

E(w) = X µ (w) gdzie (w) = 1 2 X a aµ− Oaµ(w))2

(sygnały wyjściowe Oaµ traktujemy tu jako funkcje wektora wag w)

• Metoda antygradientu: iteracyjne poprawianie wag wg wzoru

w := w − γ∂E

∂w

gdzie γ – stała dodatnia (rzędu 1)

• Rozpisując to na współrzędne mamy (m = 1, . . . M ) wmij := wmij +X µµwijm gdzie ∆µwmij = −γ∂E µ ∂wm ij

(12)

Home Page Title Page JJ II J I Page12of18 Go Back Full Screen Close Quit

Co to jest gradient?

• Gradient – w analizie matematycznej operator różniczkowy,

któ-ry polu skalarnemu (np. temperatura w pokoju)

przyporządko-wuje pole wektorowe (które wskazuje kierunek wektorów

naj-większego wzrostu funkcji, a których długość jest

proporcjonal-na do szybkości wzrostu)

(13)

Home Page Title Page JJ II J I Page13of18 Go Back Full Screen Close Quit

Poprawki i odchylenia

• Obliczenia poprawek dla ustalonego wzorca µ będziemy przeprowadzać

„war-stwami”, od najwyższej do najniższej, zaniedbując (uwaga!) indeks µ we wszystkich wyrazach • Lemat (i) ∂E ∂wm ij = −δimVjm−1 (ii) ∂E ∂Vm−1 a = −X b δbmwbam gdzie δbM = g0(hMb )(ηb− Ob) oraz δbm = g0(hmb )X c δcm+1wcbm+1 dla m = M −1, . . . , 1 Wielkości δim będziemy nazywać odchyleniami dla warstwy m

• Wniosek

Dla ustalonego wzorca µ

(14)

Home Page Title Page JJ II J I Page14of18 Go Back Full Screen Close Quit

Dowód lematu (1)

• Dowód przeprowadzimy za pomocą indukcji „w dół” wględem m • Dla warstwy wyjściowej (m = M ) mamy:

E = 1 2 X a (ηa− g(hMa )) 2 = 1 2 X a (ηa− g( X b wabMVbM −1))2

• W tej sumie tylko składnik (ηi− g(hMi ))2 zależy od zmiennej wijM. Zatem

∂E ∂wijM = 1 2· 2 · (ηi− g(h M i ))(−g0(h M i )) ∂hMi ∂wMij = −(ηi− Oi)g 0(hM i ) ∂hMi ∂wijM

• Ponieważ funkcje VbM −1 nie zależą od zmiennych wMij , więc

∂hMi ∂wMij = ∂wMij X b wibMVbM −1 = VjM −1 • Ostatecznie ∂E ∂wMij = −(ηi− Oi)g 0(hM i )V M −1 j = −δ M i V M −1 j

(15)

Home Page Title Page JJ II J I Page15of18 Go Back Full Screen Close Quit

Dowód lematu (2)

• Podobnie, zapisując E = 1 2 X b (ηb− g(hMb ))2, otrzymamy ∂E ∂VM −1 a = −X b (ηb− Ob)g0(hMb ) ∂hMb ∂VM −1 a ∂hMb ∂VM −1 a = ∂VM −1 a X c wbcMVcM −1 = wbaM • Ostatecznie ∂E ∂VM −1 a = −X b g0(hMb )(ηb− Ob)wbaM = − X b δbMwMba

co kończy dowód dla podstawy indukcji

• W kroku indukcyjnym wykorzystamy następujący wzór na różniczkowanie

cząstkowe superpozycji funkcji:

∂φ ∂xi = k X j=1 ∂φ ∂yj · ∂yj ∂xi gdzie φ(x) = φ(y1(x), . . . , yk(x))

(16)

Home Page Title Page JJ II J I Page16of18 Go Back Full Screen Close Quit

Dowód lematu (3)

• Załóżmy, że lemat jest prawdziwy dla pewnego m ¬ M . Korzystając ze

wzoru na różniczkowanie mamy:

∂E ∂wm−1ij = X b ∂E ∂Vbm−1 · ∂Vbm−1 ∂wijm−1 • Następnie ∂Vbm−1 ∂wijm−1 = ∂wm−1ij g(h m−1 b ) = g 0(hm−1 b ) ∂wm−1ij X c wm−1bc Vcm−2

• Widzimy, że lewa strona jest różna od zera tylko dla b = i i wtedy pochodna

sumy po prawej stronie redukuje się do Vjm−2. Stąd

∂E ∂wm−1ij = ∂E ∂Vim−1 · g 0(hm−1 i )V m−2 j

• Korzystając z założenia indukcyjnego otrzymujemy ostatecznie ∂E

∂wijm−1 = (−

X

a

(17)

Home Page Title Page JJ II J I Page17of18 Go Back Full Screen Close Quit

Dowód lematu (4)

• Podobnie ∂E ∂Vm−2 a =X b ∂E ∂Vbm−1 · ∂Vbm−1 ∂Vm−2 a • Mamy Vbm−1 = g(hm−1b ) = g(X c wbcm−1Vcm−2) skąd ∂Vbm−1 ∂Vm−2 a = g0(hm−1b )wm−1ba • Z założenia indukcyjnego ∂E ∂Vbm−1 = − X c δmc wcbm zatem ∂E ∂Vm−2 a =X b (−X c δcmwmcb)g0(hm−1b )wbam−1 = −X b δbm−1wbam−1

(18)

Home Page Title Page JJ II J I Page18of18 Go Back Full Screen Close Quit

Algorytm wstecznej propagacji

Algorytm uczenia sieci zwany algorytmem wstecznej propagacji

jest wariantem lokalnym opisanej wyżej metody antygradientu i

przebiega następująco

1. Wybierz początkowe wartości wag jako „małe” liczby losowe

2. Wybierz (losowo) wzorzec ξ

µ

i podaj go na wejście sieci

3. Przepuść sygnały przez sieć wyznaczając wartości zmiennych

V

im

4. Oblicz odchylenia δ

iM

w warstwie wyjściowej

5. Oblicz odchylenia δ

mi

w poprzednich warstwach za pomocą

propagacji wstecznej (lemat)

6. Oblicz poprawki ∆w

ijm

i zmodyfikuj wagi w

mij

7. Jeżeli sieć nie została nauczona, wróć do punktu 2 (warunek

można testować co pewien czas)

Cytaty

Powiązane dokumenty

W systemie zdecentralizowanym, będącym trójwarstwowym układem składającym się z trzech poziomów: centralnego, nadrzędnego i lokalnego, istnieje możliwość podejmowania decyzji

From the information provided by Onet, the first 20 live episodes of the program had on average more than 800 thousand views on the portal’s main site and its Facebook fan page

Ponieważ jednym z dominujących narzędzi takiej alokacji zasobów pieniężnych stał się w ostatnich latach wykup akcji wła- snych, stąd, wraz ze wzrostem znaczenia

Zgodnie z ogólną definicją przez „świadczenie usług” rozumie się każde świadcze- nie wykonywane na rzecz osoby fizycznej, osoby prawnej lub jednostki organiza-

Wariant ten oznaczałby spadek transferówbudżetowychnie tak dotkliwy dla społeczeństwa, wzrost udziału oszczędności tylko do 24-25% PKB, stopy inwestycji maksymalnie do 27-29%

In disputes involving rules and procedures under more than one covered agreement, if there is a conflict between special or additional rules and procedures of such agreements

The Ministerial Conference shall establish at its first session a revised list of waivers covered by this provision that adds any waivers granted under GATT 1947 after 15 December

Gott war viel mehr der Verteidiger Israels als der Strafende, deswegen muss seine Gerechtigkeit als Gnade für sein Volk und als Beistand für die Armen verstanden werden 53 ,