AdamátorZápiskyHlášky

Neuronové sítě (Hakl)

Zápisky z přednášek Ing. Františka Hakla, CSc.

Stránka, kde můžeme psát svoje připomínky k přednášce

Máme spoustu úloh, na jejichž řešení není známý žádný algoritmus, přestože je zvládnou řešit i celkem jednoduché biologické organismy, například rozpoznávání obrazu nebo autonomní pohyb. Neuronové sítě jsou pokus modelovat fungování těchto organismů.

Neuron uvažujeme jako funkci y:n0,1 skládající se z váhového vektoru wn a nelineární aktivační funkce σ:0,1, daná předpisem y(x)σ(w𝖳x).

Definice Nechť (x1,y1),,(x1,ym) je posloupnost dvojic n×{±1}. Potom aplikací delta pravidla dostaneme posloupnost {wi}1 danou rekurentním předpisem:
Věta Nechť posloupnost {wi}1 vznikla aplikací delta pravidla a existuje vektor w^,w^=1 splňující
im^:sgnw^𝖳xi=yi.
Nechť dále
αmaxim^xi2,βminim^(w^𝖳xi).
Potom existuje z takové, že wz+1=wz a platí
zαβ2+1.
Důkaz Nechť k je takové, že wkwk1. Označme x~jpxjpyjp.
wk=p=0k1x~jp.
Platí w^𝖳x~io>0.
w^𝖳wk=p=0k1w^𝖳x^jk(k1)β>0.
(w^𝖳wk)2(k1)2β2.
Podle Cauchy-Schwarzovy nerovnosti
w^2wk2>|w^𝖳wk|2(k1)2β2.
Současně
wk=wk1+xjk1,
wk2=wk12+2wk1𝖳x~jk10+xjk12wk12+x~jk12.
Steleskopením přes k dostáváme
wk2k=0k1xjk12(k1)α,
(k1)2β2wk2(k1)α.
Definice Nechť A,Bn. Dvojice (w,t)n× je lineární separátor množin A,B, pokud
aA:w𝖳a<t,bB:w𝖳b>t.
Lemma Nechť A{±1}n,B{±1}nA a (w,t) je jejich lineární separátor. Potom existuje jejich lineární separátor (w*,t) takový, že
x,y{±1}n:xyw*𝖳xw*𝖳y.
Důkaz Nebudeme si ukazovat, ale je v principu jednoduchý: pokud náhodou pro nějaké body budeme mít stejný skalární součin, stačí nadrovinu maličko posunout.
Věta Pro každé n existuje alespoň 2nn12 podmnožin {±1}n, které se dají lineárně separovat od svého doplňku.
Důkaz Indukcí. Pro n=1 máme čtyři podmnožiny a všechny jsou separovat. Nyní předpokládejme, že věta platí pro n. Vezmeme lineární separátor (w*,t) z předchozí věty. Přímka při posouvání ve směru normály nikdy neprotne dva body najednou, takže posouváním můžeme vytvořit 2n+1 různých rozkladů. Nyní se přesuneme do (n+1)-rozměrného prostoru, kde se naše množina vrcholů krychle skládá ze dvou kopií vrcholů n-rozměrné krychle. Obě tyto podkrychle můžeme nezávisle na sobě rozdělit 2n1 způsoby nadrovinou s normálou w*. Ty propojíme do jedné nadroviny, která v závislosti na obou posunutích může rozdělit vrcholy (n+1)-rozměrné krychle Kn+1Kn(2n+1) způsoby, kde Kn je počet způsobů rozdělení původní krychle. Použitím indukčního předpokladu dostaneme, co chceme.
Věta Pro každé n existuje množina A{±1}n taková, že pro každý její celočíselný separátor (w,t) platí
2n22k=1n|wk|+|t|.
Důkaz Označme Pn množinu všech lineárně separabilních rozkladů (A,B) n-rozměrné krychle. Pro každé (A,B)Pn označme WA,B množinu celočíselných separátorů. Definujme
η(n)max(A,B)Pnmin(w,t)WA,Blog2(k=1n|wk|+t).
To znamená, že k zapsání každého separátoru stačí η(n)+1 bitů. Tedy různých celočíselných separátorů existuje nanejvýš 2(n+1)(η(n)+1). Zároveň podle předchozí věty je jich alespoň 2n(n1)2. Tím dostáváme nerovnost
2(n+1)(η(n)+1)2n(n1)2,
(n+1)(η(n)+1)n(n1)2,
η(n)+1n(n1)2(n+1)=n22+1n+1>n22,
což mělo být dokázáno.
Definice Nechť A={a1,,ai},B={b1,,bj}n. Potom Mangasarianův lineární problém je úloha lineárního programování ve tvaru nalezení yi,zj,wn,t minimalizujících
α=1iyα+β=1jzβ
za podmínek
yα+w𝖳aαt1,
zβw𝖳bβ+t1,
yα,zβ0.
Věta Nechť A={a1,,ai},B={b1,,bj}n. Potom
  1. množiny A,B jsou lineárně separovatelné, právě když optimální hodnota Mangasarianovy úlohy je 0,
  2. je-li optimální hodnota Mangasarianovy úlohy 0 a (y*,z*,w*,t*) je optimální řešení, potom (w*,t*) lineárně separuje A,B.
Důkaz Nestihl jsem si to opsat, protože ten ňouma maže tabuli rychleji než Šťovíček odchází z místnosti po skončení přednášky.
Definice Nechť (x0,y0),,(xt,yt) jsou dvojice z n×, t1, w0n a η>0. Pro každé i označme τ(i)imodt. Posloupnost (wi) vznikla aplikací spojitého δ-pravidla, pokud
wk+1=wk+η(yτ(k)wk𝖳xτ(k))xτ(k)=(𝐈ηxτ(k)xτ(k)𝖳)wk+ηyτ(k)xτ(k).
Poznámka V podstatě je to relaxační metoda pro speciální tvar matice.
Lemma Nechť BIηxx𝖳,η>0,xn. Potom B má vlastní číslo 1ηx2 s vlastním vektorem x a vlastní číslo 1 s vlastním vektorem kolmým na x.
Lemma Nechť BIηxx𝖳,xn,0η2x2. Potom B=ρ(B)=1.
Definice Nechť x1,,xtn. Označme BpIηxpxp𝖳. Potom pro každou permutaci π𝕊n definujeme
Λπ1i=tBπ(i),
hi=1tyπ(i)(i+1j=tBπ(j))xπ(i).
Lemma Nechť pro všechna pt^ platí 0η2xp2 a (x1,,xt) je generátor n. Potom pro každou permutaci π platí Λπ<1.
Věta Nechť posloupnost (wn) vznikla z (x1,y1),,(xt,yt) podle spojitého δ-pravidla, x1,,xt generuje celý prostor n a w* minimalizuje
E(w)p=1t(ypw𝖳xp)2
a pro všechna pt^ platí 0η2xp2. Potom posloupnost (wi) konverguje ke konečnému cyklu délky t a každý vektor wi tohoto cyklu je jediný pevný bod kontrahujícího zobrazení Fi(w)Λπiw+ηhπi, kde πi(i+1,i+2,,t,1,2,,i). Navíc pokud w(η) je libovolný člen tohoto cyklu for pevné η>0, potom
w(η)w*=(η),
E(w(η))E(w*)=(η).
Definice Neuronová síť D je konečný souvislý orientovaný acyklický graf s množinou vrcholů I ohodnocených dvojicemi reálných čísel (yj,w0,j). Hrany jsou ohodnoceny reálnými čísly wi,j. Počty vstupních a výstupních hran pro daný vrchol značíme dj+,dj. Je-li dj+=0, resp. dj=0, jde o vstupní vrchol, resp. výstupní vrchol. Pro každý vrchol máme funkci Zj:dj+×dj++1. Hodnotu každého nevstupního vrcholu spočteme jako yjZj(sumj), kde
sumji=1dj+wi,jyi+w0,j.
Definice Pro každý vnitřní vrchol neuronové sítě označme
SjZj(sumj)sumj.
Cestu (i,j,j1,,jk,v) označíme
ϑ(i,j,j1,,jk,v).
Množinu všech takových cest z i do v začínajících hranou (i,j) označíme 𝒫i,wi,j,v.
Lemma metoda back-propagation Pro neuronovou síť D platí
yvwi,j=ϑ(i,wi,j,j1,,jk,v)𝒫i,j,wyiSjwj,j1Sj1wj1,j2Sjkwjk,vSv,
yvwj=ϑ(i,wi,j,j1,,jk,v)𝒫i,j,wSjwj,j1Sj1wj1,j2Sjkwjk,vSv,
Důkaz Vytvoříme pomocnou neuronovou síť D, kde z D odebereme všechno, co není na cestě začínající hranou (i,j) a končící ve v. Potom stačí použít řetězové pravidlo.
Definice Mějme pro ip^ vzory (xi,di),xin,dim. Nechť w=(w1,,wK) je posloupnost vah a prahů dopředné neuronové sítě a yw,xim je odpovídající vektor hodnot výstupních uzlů. Potom chybová funkce je
E(w)i=1pj=1m((di)j(ywi,xi)j)2i=1pj=1mei,j2.

Konvergence stochastických gradientních metod

Definice Konvexní ztrátová funkce je diferencovatelná funkce C:n, která má na n jediné minimum w* a pro všechna ε>0 platí
inf(ww*)2>ε{(ww*)𝖳C(w)}>0.
Věta Nechť C je konvexní ztrátová funkce a funkce w splňuje diferenciální rovnici
w(t)=wC(w(t)).
Potom limw=w*.
Důkaz Nechť h(t)(w(t)w*)2. Potom
h(t)=2(w(t)w*)C(w(t))<0
Z toho vidíme, že h je kladná klesající funkce, takže existuje limh0. Z toho také limh=0. Pro spor předpokládejme, že limh=η>0. TBD
Lemma Nechť {ai} je nezáporná posloupnost. Označme
Vı+i=1t1H(ai+1ai),
kde H(x)[x>0]. Potom
limtvt+<limtat<.
Důkaz Definujme analogicky
Vıi=1t1H(aiai+1),
TBD
Lemma Nechť {gi},{βi} jsou kladné posloupnosti, i=1βi< a existují konstanty A,B+ splňující
gt+1gtβt+1(A+bgt).
Potom limtgt<.
Důkaz Definujeme pomocnou klesající posloupnost
μti=1t11+βiB.
Platí
lnμt=i=1tln(1+βiB)i=1tβiBBi=1βi=bK.
Z toho
limtμtexpK>0.
Zároveň
μt+1gt+1μtgt=(μt1+βt+1B)gt+1μtgt<μtgt+1μtgt(1+βk+1B)=μt(gt+1gtβt+1Bgt)μtβt+1A.
Z toho
i=1μtβt+1AAt=1βt+1<.
Jelikož μtgt konverguje, musí i gt konvergovat.
Věta konvergence gradientní metody s konvexní ztrátovou funkcí Nechť C je konvexní ztrátová funkce a posloupnost {wt} je definována rekurencí
wi+1wtγtC(wt),
kde γi>0 pro všechna i a platí
i=1γi<,i=1γi=.
Nechť dále A,B jsou konstanty takové, že pro všechny wn je
(C(w))2A+B(ww*)2.
Potom limtwt=w*.
Lemma Nechť C je zobecněná konvexní funkce, Γmax{1,D}, {wi} je stochastická gradientní posloupnost pro C a pro k{2,3,4} existují Ak,Bk>0 taková, že pro všechna wn je
𝔼z[H(zt,wt)k|𝒵tAk+Bkwik].
Potom pro všechna t od nějakého t0 je wt<Γ s pravděpodobností 1.
Důkaz náznak
ft+1=ψ(wt+1)
Schwarzova nerovnost
𝔼(ft+1ft)=2γtwtH(zt,wt)ψ1(wt2)+γ2H2ψ1(wt2)+4γt2wt2H2++4γt3wth3+γt4H4