Upload
others
View
5
Download
0
Embed Size (px)
Citation preview
Regularizacija dubokih modela
Josip Krapac i Siniša Šegvić
1
Pregled
• Regularizacija• Regularizacija normom vektora parametara modela• Regularizacija generiranjem podataka i unošenjem šuma• Regularizacija ranim zaustavljanjem• Regularizacija vezanjem i dijeljenjem parametara• Regularizacija baggingom i dropout
2
Regluarizacija: pregled
• Glavni izazov u strojnom učenju: osigurati da model radidobro ne samo na podacima za učenje nego i na novimpodacima.
• Tehnike regularizacije: smanjenje greške na skupu zatestiranje, uz moguće povećanje greške na skupu za učenje.
• Duboki modeli omogućavaju primjenu raznih tehnikaregularizacije.
• Jedan od najvažnijih otvorenih izazova: vrlo aktivno područjeistraživanja.
3
Regularizacija: pregled
• Tehnike regularizacije u strojnom učenju omogućavajupovećanje pristranosti modela uz smanjenje varijabilnosti.
• Smanjenje varijabilnosti: onemogućavanje pretreniranja.• Dobra regularizacija omogućava bitno smanjenje varijabilnosti
uz malo povećanje pristranosti modela.• U praksi: najbolji model (u smislu generalizacijske pogreške)
je model velikog kapaciteta na koji su primjenjeneodgovarajuće tehnike regularizacije.
4
Pregled
• Regularizacija• Regularizacija normom vektora parametara modela• Regularizacija generiranjem podataka i unošenjem šuma• Regularizacija ranim zaustavljanjem• Regularizacija vezanjem i dijeljenjem parametara• Regularizacija baggingom i dropout
5
Regularizacija normom vektora parametara modela
• Jedna od najstarijih metoda regularizacije.• Modifikacija funkcije gubitka J(Θ;X, y) dodavanjem norme
vektora parametara Ω(Θ):
J(Θ;X, y) = J(Θ;X, y) + αΩ(Θ)
• α ∈ [0,∞] određuje relativni doprinos ne-regluarliziranefunkcije gubitka J i regularizatora Ω.
• Minimizacija regularizirane funkcije gubitka J smanjuje i J i Ω.• Regularizator Ω se obično primjenjuje samo na težine,
tj. pomak se ne regularizira.• Odabirom funkcije Ω preferiramo određene klase modela.• Intuicija: regularizator povlači vektor težina w prema
ishodištu.6
Regularizacija L2 normom vektora parametara modela
• Promotrimo funkciju cilja regulariziranu s Ω(Θ) = 12∥w∥2
2
J(w;X, y) = J(w;X, y) + α
2 ∥w∥22
∇wJ(w;X, y) = ∇wJ(w;X, y) + αw
• Korak gradijentnog spusta sada je:
wt+1 = wt − ϵαwt − ϵ∇wJ(w;X, y)|w=wt
wt+1 = (1 − ϵα)wt − ϵ∇wJ(w;X, y)|w=wt
7
Regularizacija L2 normom vektora parametara modela
• Razvijmo ne-regulariziranu funkciju gubitka J u Taylorov redoko minimuma w∗ = argminw J(w):
J(w) = J(w∗) +12(w − w∗)⊤H(w − w∗)
8
Regularizacija L2 normom vektora parametara modela
• Pogledajmo gdje se minimum pomakne iz w∗ ako sad dodamoregularizacijski član:
∇wJ(w) + αw = 0H(w − w∗) + αw = 0w = (H + αI)−1Hw∗
8
Regularizacija L2 normom vektora parametara modela
• Pogledajmo što se dešava kada α raste. Uvid je lakši uprostoru razapetom svojstvenim vektorima (Q) matriceH = QΛQ⊤:
w = (QΛQ + αI)−1QΛQw∗
=[Q(Λ+ αI)Q⊤
]−1QΛQ⊤w∗
= Q(Λ+ αI)−1ΛQ⊤w∗
8
Regularizacija L2 normom vektora parametara modela
• Ako gledamo samo projekciju vektora w∗ na i-ti svojstvenivektor onda je:
wi = qiλi
λi + αq⊤
i w∗
• Vidimo da wi postaje tim različitiji od wi što je funkcija ciljastrmija u smjeru qi
8
Regularizacija L2 normom vektora parametara modela
• Za slučaj dijagonalne matrice H (slika):
wi =λi
λi + αw∗
i
• Vidimo da wi postaje tim različitiji od wi što se funkcija ciljaviše mijenja po odgovarajućoj osi koordinatnog sustava
• Regularizacija identificira parametre koji ne utječu na funkcijucilja i priteže ih prema ishodištu
8
Regularizacija L2 normom vektora parametara modela
• Pogledajmo utjecaj L2 regularizacije na linearnu regresiju sasrednjom kvadratnom pogreškom odstupanja kao funkcijomcilja.
• Rješenje u ne-regluarliziranom slučaju: w = (X⊤X)−1X⊤y• Rješenje u regulariziranom slučaju: w = (X⊤X + αI)−1X⊤y• Matrica X⊤X je proporcionalna kovarjacijskoj matrici 1
nX⊤X.• Efekt regularizacije: prividno povećavanje varijance podataka.
Kao da smo oko svakog podatka x generirali nove podatkeizvlačenjem iz normalne distribucije s srednjom vrijednostikoja odgovara podatku x i varijancom αI.
9
Regularizacija L1 normom vektora parametara modela
• L1 regularizator: Ω(Θ) =∑
i |wi| = ∥w∥1.• Promotrimo gradijent regularizirane funkcije cilja:
∇wJ(w;X, y) = ∇wJ(w;X, y) + αsign(w)
• Korak gradijentnog spusta je:
wt+1 = wt − ϵαsign(wt)− ϵ∇wJ(w;X, y)|w=wt
• Doprinos regularizacije ovisi samo o predznaku w.
10
Regularizacija L1 normom vektora parametara modela
• Isto kao i za L2 normu: promatramo rastav u Taylorov red uminimumu ne-regularizirane funkcije gubitka, dodamoregularizacijski član i promatramo gdje se pomakne minimum.Dodatno, pretpostavljamo da je matrica H = Λ dijagonalna:
w = argminw
∑i
(12λi(wi − w∗
i )2 + α|wi|
)• Za ovaj optimizacijski problem postoji analitičko rješenje:
wi = sign(w∗i )max
|w∗
i | −α
λi, 0
11
Regularizacija L1 normom vektora parametara modela
• L1 regularizacija vodi na rijetke modele: modeli za koje suneke vrijednosti parametara 0.
• L1 regularizacija istovremeno uči model i obavljaselekciju/eliminaciju varijabli.
12
Usporedba L1 i L2 regularizacije
L2 L1
wi =λi
λi+αw∗i wi = sign(w∗
i )max|w∗
i | − αλi, 0
13
Norme vektora parametara kaoograničenja optimizacijskog postupka
• Alternativni pogled: regularizacija osigurava da parametribudu unutar kugle Ω(Θ) < k.
• Radijus k ovisan je o parametru α: veći α znači manji k iobratno.
• Oblik kugle ovisi o korištenoj normi (npr. L1, L2)• Regularizaciju možemo izrazti i direktno preko k. Modifikacija
optimizacijskog postupka:• napravimo korak gradijentnog spusta i• projiciramo ažurirani Θ na najbližu točku koja zadovoljava
ograničenje Ω(Θ) < k.
14
Norme vektora parametara kaoograničenja optimizacijskog postupka
• Ova formulacija ne mijenja funkciju gubitka. Promjenafunkcije gubitka može uzrokovati da optimizacijski postupakzapne u dijelu prostora koji odgovara malim vrijednostimaparametara Θ: problem “mrvih neurona”. U ovakvojformulaciji to se izbjegava budući se projekcija obavlja tekkada vektor parametara naraste dovoljno da izađe iz kugle.
• Ova formulacija omogućava stabilniji optimizacijski postupak:kod korištenja velikih stopa učenja moguće je da postupakpočne divergirati (vektor parametara počinje rasti) zbogpozitivne povratne veze. U ovakvoj formulaciji nekontroliranrast nije moguć.
15
Utjecaj regularizacije na nedovoljno specificirane probleme
• Primjer nespecificiranog problema koji se rješava direktnimpostupkom: svaki postupak koji ovisi o inverzu matrice X⊤Xkoja je singularna. U tom slučaju postoje smjerovi u prostoruulaznih značajki za koje je varijanca 0 ili ako imamo manjepodataka nego što je značajki ulaznog prostora.
• U slučaju linearne regresije L2 regularizacija tada odgovarainvertiranju X⊤X + αI.
16
Utjecaj regularizacije na nedovoljno specificirane probleme
• Primjer nespecificiranog problema koji se rješava iterativnimpostupkom: logistička regresija u slučaju linearno separabilnihklasa. Ako vektor w potpuno odvaja klase, onda ga odvaja ivektor nw, s time da je vrijednost funkcije gubitka (negativnalog-izglednost) uz veći n još manja. Iterativni postupak bezregularizacije povećava vektor težina u nedogled.
• U slučaju logističke regresije L2 regularizacija osigurava dagradijent funkcije gubitka ima protutežu u vidu gradijenta L2regularizatora.
17
Pregled
• Regularizacija• Regularizacija norme vektora parametara modela• Regularizacija generiranjem podataka i unošenjem šuma• Regularizacija ranim zaustavljanjem• Regularizacija vezanjem i dijeljenjem parametara• Regularizacija baggingom i dropout
18
Regularizacija generiranjem podataka
• Podaci za učenje su odličan regularizator.• Neki problemi (npr. klasifikacija) dozvoljavaju jednostavno
generiranje podataka za učenje modifikacijom postojećihpodataka za učenje.
• Ova tehnika se pokazala jako uspješnom kod problemaraspoznavanja objekata u slici (translatiranje, skaliranje,rotacija) i za raspoznavanje govora.
• Pretpostavka: modifikacija primjera za učenje ne utječe naklasu objekata u slici.
19
Regularizacija unošenjem šuma
• Unošenje šuma u neuronsku mrežu također imaregularizacijski efekt.
• Šum može utjecati na:• ulaz mreže (podatke u skupu za učenje),• reprezentacije u skrivenim slojevima mreže,• parametre mreže,• oznake u skupu za učenje mreže (eng. label smoothing). Ako
pretpostavimo da je vjerojatnost točnog označavanja 1 − ϵ
onda one-hot vektor oznaka transformiramo:
[0, 0 · · · 1, 0, · · · 0] →[ϵ
k ,ϵ
k , · · · , 1 − k − 1k ϵ,
ϵ
k , · · · ,ϵ
k
]
20
Pregled
• Regularizacija• Regularizacija norme vektora parametara modela• Regularizacija generiranjem podataka i unošenjem šuma• Regularizacija ranim zaustavljanjem• Regularizacija vezanjem i dijeljenjem parametara• Regularizacija baggingom i dropout
21
Regularizacija ranim zaustavljanjem
22
Regularizacija ranim zaustavljanjem
• Vrijeme učenja je hiper-parametar koji možemo efikasno,inkrementalno odrediti u jednom učenju mreže.
• Jedino šta moramo promjeniti:• čuvati parametre mreže koji postižu najbolju performansu na
skupu za validaciju,• povremeno evaluirati model na skupu za validaciju i što
usporava postupak učenja. Moguća ubrzanja:• evaluacija na drugom procesoru• smanjenje skupa za evaluaciju• rjeđa validacija performanse mreže
• Nedostatak: moramo imati skup za validaciju, što znači da jeskup za učenje manji.
23
Zaustavljanje nakon predefiniranog broja iteracija / prolaza krozskup
24
Zaustavljanje nakon dostizanja optimalne greške na skupu zavalidaciju
25
Teoretska analiza ranog zaustavljanja
• Pretpostavimo da prođemo kroz τ iteracija postupkagradijentnog spusta, s korakom ϵ, i da je gradijent u svakomkoraku ograđen. Tada je prostor parametara koji možemodosegnuti iz početne vrijednosti paramatera Θ0 omeđen.
• Veličina kugle ovisi o τϵ: što je ta vrijednost veća, to je kuglaveća.
26
Pregled
• Regularizacija• Regularizacija norme vektora parametara modela• Regularizacija generiranjem podataka i unošenjem šuma• Regularizacija ranim zaustavljanjem• Regularizacija vezanjem i dijeljenjem parametara• Regularizacija baggingom i dropout
27
Djelomično-nadzirano učenje kao regularizacija
• Djelomično nadzirano učenje (eng. semi-supervised learning)je učenje P(y|x) koristeći i označene podatke (uzorke izP(x, y)) i neoznačene podatke (uzorke iz P(x)).
• Možemo konstruirati model koji minimizira i nadzirani gubitak(− logP(y|x)) i nenadzirani gubitak (npr. − logP(x)).
• Dijeljenje parametara između nadziranog i nenadziranogproblema osigurava regularizaciju: faktori varijacije u ulaznimpodacima i faktori varijacije u izlazu uz dani ulaz su dijeljeni(ista struktura, isti parametri).
28
Djelomično-nadzirano učenje kao regularizacija
• Djelomično nadzirano učenje (eng. semi-supervised learning)je učenje P(y|x) koristeći i označene podatke (uzorke izP(x, y)) i neoznačene podatke (uzorke iz P(x)).
• Možemo konstruirati model koji minimizira i nadzirani gubitak(− logP(y|x)) i nenadzirani gubitak (npr. − logP(x)).
• Dijeljenje parametara između nadziranog i nenadziranogproblema osigurava regularizaciju: faktori varijacije u ulaznimpodacima i faktori varijacije u izlazu uz dani ulaz su dijeljeni(ista struktura, isti parametri).
28
Višezadaćno učenje kao regularizacija
29
Regularizacija vezanjem i dijeljenjem parametara
• Vezanje parametara: ne znamo kakve bi parametre htjeli damreža, ali znamo da postoji veza između dva problema
Ω(w(A),w(B)) = ∥w(A) − w(B)∥22
• Dijeljenje parametara: u slučajevima kad želimo da skupoviparametara budu isti. Prednost u odnosu na vezanjeparametara: trebamo čuvati samo jedan skup parametara.
30
Rijetke reprezentacije kao regularizator
• L1 regularizacija težina → rijetki modeli:
J(Θ;X, y) = J(Θ;X, y) + α∥Θ∥1
31
Rijetke reprezentacije kao regularizator
• L1 regularizacija aktivacija → rijetke reprezentacije:
J(Θ;X, y) = J(Θ;X, y) + α∥h∥1
31
Pregled
• Regularizacija• Regularizacija norme vektora parametara modela• Regularizacija generiranjem podataka i unošenjem šuma• Regularizacija ranim zaustavljanjem• Regularizacija vezanjem i dijeljenjem parametara• Regularizacija baggingom i dropout
32
Bagging
• Bagging (ili bootstrap aggregating) [Breiman1996].• Faza učenja:
• iz originalnog skupa za učenje X = (xi, yi)Ni=1. uzorkujemo m
podsukpova Xm = (xi, yi)N′
i=1. Uzorci se mogu ponavljati(uzorkovanje sa zamjenom).
• Za svaki od M skupova naučimo model f(x,Θm).
• Faza provjere, pod pretpostavkom da model daje distribucijupreko izlaza f(x,Θm) = p(y|x,Θm) predikciju za podatak xdobivamo usrednjavanjem:
y =1M
M∑m=1
f(x,Θm)
33
Regularizacijski efekt bagginga
• Pretpostavimo da smo naučili M skalarnih regresijskih modela.• Opišimo pogrešku i-tog modela varijablom ϵi
• Pogreška ansambla regresora je: Ea = 1M∑
i ϵi• Pretpostavimo zajedničku distribuciju grešaka svih modela:
ϵ ∼ N (0,Σ)
• dijagonalni elementi kovarijacijske matrice: E[ϵ2i ] = σi,i = v,
• ne-dijagonalni elementi su: E[ϵiϵj] = σi,j = c.• Očekivanje kvadrata pogreške ansambla E2
a:
E
( 1M∑
iϵi
)2 =
1M2E
∑i
ϵ2i +
∑i =j
ϵiϵj
=
1Mv + M − 1
M c
34
Regularizacijski efekt bagginga
Dva ekstremna slučaja:
• Greške pojedinih regresora su potpuno korelirane v = c.Srednje kvadratno odstupanje kombiniranog regresora je istokao i srednje kvadratno odstupanje svakog pojedinogregresora.
• Greške pojedinih regresora su potpuno nekorelirane c = 0.Srednje kvadratno odstupanje kombiniranog regresora opadalinearno s brojem regresora M.
35
Bagging: ilustracija
36
Usrednjavanje modela
• Bitno je da modeli daju drugačije predikcije, učenje iz raznihpodskupva je samo jedan način da se to omogući.
• U dubokim modelima različitost možemo postići:• različitim hiper-parametrima modela i postupka učenja• različitim slučajnim inicijalizacijama• različitim rasporedom podataka u mini-grupama
• Ti efekti su dovoljni da naučeni modeli rade različite greške.• Usrednjavanje modela u praksi radi jako dobro: to je način
kako se dobivaju najbolji rezultati (i pobjeđuje nanatjecanjima).
37
Dropout [Srivastava2014]
• Računski nezahtjevna tehnika regularizacije dubokih modela.• Intuicija: efikasni bagging velikog broja različitih modela.• Kako dobiti veliki broj različitih modela?
• Iz početnog modela formiramo nove gašenjem/uklanjanjemaktivacija: gasimo značajke u skrivenim slojevima i ulazneznačajke.
• Gašenje značajki u skrivenim slojevima: množenje s 0.• Vjerojatnost da je značajka upaljena: za ulazne značajke
p(µxi) = 0.8, za značajke u skrivenim slojevima p(µhi) = 0.5.
38
Dropout
µ = [µx1 , µx2 , µh1 , µh2 ]
p(µ) = p(µx1)p(µx2)p(µh1)p(µh2) 39
Dropout
40
Dropout u fazi učenja
• Eksplicitni bagging modela s prethodne stranice računski jevrlo zahtjevan!
• Dropout način:• modeli dijele parametre• kod svake mini-grupe slučajno biramo aktivacije i ulaze koje
ćemo ugasiti odnosno zanemariti
[srivastava15jmlr1]41
Dropout u fazi ispitivanja
• U slučaju bagginga predikcija ansambla za podatak x je:
1M∑
mp(y|x,Θm)
• U slučaju dropouta predikcija je:
p(y|x,Θ) =∑µ
p(µ)p(y|x,µ) (1)
gdje je p(µ) distribucija korištena za odabir µ tijekomtreniranja.
• Broj članova u izrazu (1) je eksponencijalan s obzirom na brojaktivacija modela.
42
Dropout u fazi ispitivanja: uzorkovanje pod-modela
• Odaberemo M• Za m = 1 · · ·M odredimo izvučemo µm ∼ p(µ) i odredimo
ym = p(y|x,µm)
• Odredimo y = 1M∑M
m=1 ym
43
Dropout u fazi ispitivanja: skaliranje težina
• Ako aritmetičku sredinu zamjenimo geometrijskom:
p(y|x,Θ) =
(∏µ
p(y|x,Θµ)
)2−n
te re-normaliziramo na distribuciju preko izlaza:
p(y|x,Θ) =p(y|x,Θ)∑C
c=1 p(yc = 1|x,Θ)
dropout u fazi ispitivanja možemo aproksimirati skaliranjemtežina modela.
44
Dropout u fazi ispitivanja
Aproksimacija skaliranjem težina postiže dobre rezultate u praksi:• izlazne težine promatrane aktivacije množimo s vjerojatnošću
prisutnosti te aktivacije tijekom učenja: w′hi= p(µhi)whi
• alternativno, možemo prilikom učenja modificirati aktivacije...• ...h′
i = hi/p(µhi)
• intuicija: osigurati da očekivani ulaz čvora u fazi ispitivanjabude jednak očekivanom ulazu čvora u fazi učenja.
• prednost: jedan, umesto M unaprijednih prolaza.
[srivastava15jmlr1]
45
Dropout: prednosti
• Jednostavna kombinacija s ostalim metodama regularizacije.• Računski nezahtjevan (u usporedbi s baggingom) i u fazi
učenja i u fazi ispitivanja (skaliranje težina)• Moguća primjena na razne tipove modela (konvolucijski,
povratni) bez modifikacije funkcije cilja.
46
Dropout: kada?
• Dropout efektivno smanjuje kapacitet modela; najboljirezultati postižu se povećanjem modela i duljim treniranjem.Za jako velike skupove podataka nije praktičan.
• kod konvolucijskih modela mogu se izbacivati:• pojedinačne aktivacije• cijele mape značajki (drop_channel)
• Normalizacija nad grupom (eng. batch norm) također ima iregularizacijski efekt: dodavanje aditivnog i multiplikativnogšuma koji ovisi o podacima u mini-grupi. Popularnaalternativa dropoutu.
47
Primjer: skaliranje težina u višerazrednoj logističkoj regresiji
• Nema skrivenog sloja, dropout samo na ulaznim značajkamax.
• Za višerazrednu logističku regresiju: skaliranje težina jeekvivalentno geometrijskoj sredini predikcije eksponencijalnogbroja pod-modela.
• Višerazredna logistička regresija:
p(y = y|x,Θ) = softmax(
W⊤x + b)
y
• Razred pod-modela definiran binarnim vektorom µ:
p(y = y|x,Θµ) = softmax(
W⊤(µ · x) + b)
y
48
Primjer: skaliranje težina u višerazrednoj logističkoj regresiji
p(y = y|x,Θ) =
∏µ∈0,1n
p(y = y|x,Θµ)
2−n
=
(∏µ∈0,1n exp
((W⊤)
y,: (µ · x) + by))2−n
(∏µ∈0,1n
∑y′ exp
((W⊤)y′,: (µ · x) + by′
))2−n
= C
∏µ∈0,1n
exp
((W⊤
)y,:
(µ · x) + by
)2−n
= C exp
2−n∑
µ∈0,1n
(W⊤
)y,:
(µ · x) + by
49
Primjer: skaliranje težina u višerazrednoj logističkoj regresiji
p(y = y|x,Θ) = C exp
2−n∑
µ∈0,1n
(W⊤
)y,:
(µ · x) + by
= C exp
2−n(
W⊤)
y,:
∑µ∈0,1n
µ
· x +∑
µ∈0,1n
by
= C exp
((W⊤
)y,:
(p(µ) · x) + by
)= C exp
((W⊤
)y,:
· p(µ) · x + by
)= C exp
((W⊤ · pµ
)y,:
x + by
)
50
Zadatak
• Pretpostavke:• 3-dimenzionalni ulaz: x ∈ R3.• Dvije klase y ∈ R2.• Model višerazredna logistička regresija:
y = softmax(W⊤x + b
)• Pretpostavimo da smo pri učenju model regularizirali
dropoutom te da je p(µx1) = 0.2, p(µx2) = 0.5, p(µx3) = 0.7.• Zadatak: izračunajmo ulaz u softmax (eng. logits) za ulaz
x = [1, 1, 1], ako su parametri modela nakon učenja, ali prijeskaliranja bili:
W =
−0.1 0.20.4 −0.3−0.6 0.5
b =[0.2 −0.2
]51