Upload
others
View
13
Download
0
Embed Size (px)
Citation preview
1
Neuronske mreže:Stroj s potpornim vektorima (SVM)
Prof. dr. sc. Sven LončarićDoc. dr. sc. Marko Subašić
Fakultet elektrotehnike i računarstvaSveučilište u Zagrebu
http://www.fer.hr/predmet/neumre_a
2
Pregled predavanja
● Problem kalsifikacije linearno separabilnih klasa● Margina razdvajanja● Vektori potpore● Klasifikacija linearno neseparabilnih klasa● Nelinearno preslikavanje u prostor značajki
3
Uvod
● Sličnost sa višeslojnim perceptronom i radijalnom mrežom● Feed forward mreža
● Primjena u klasifikaciji i nelinearnoj regresiji
● Inherentno dobra generalizacijska svojstva
● Razlike● Treniranje SVM-a se ne provodi iterativno s pojedinim uzorcima za treniranje
● SVM minimizira broj uzoraka za treniranje unutar margine – MLP minimizaira prosječnu kvadratnu pogrešku
● Generalni algoritam za treniranje feedforward neuronskih mreža
● Feedforward mreža s jednim nelinearnim skrivenim slojem
4
Cilj
● Klasifikacija uzoraka dviju klasa● Pronalazak ravnine razdvajanja dviju klasa koja
maksimizira margine razdvajanja● Ravninu razdvajanja definirati pomoću
"ključnih" uzoraka za treniranje – potpornih vektora
5
Razdvajanje linearno separabilnih klasa
● Jednostavan problem● Kompleksnije probleme možda možemo svesti
na ovaj jednostavniji...
Klasa I Klasa II
6
Razdvajanje linearno separabilnih klasa
● Jednadžba hiperravnine● w - vektor težina, x - ulazni vektor, b - pomak
wT xb=0
wT xb≥0 wT xb0Klasa I Klasa II
7
Razdvajanje linearno separabilnih klasa
● Postoji više mogućih ravnina razdvajanja● Koja je najbolja?
w1T xb1=0
wnT xbn≥0 wn
T xbn0Klasa I Klasa II
w3T xb3=0
w2T xb2=0
8
Margina razdvajanja
● Udaljenost od hiperravnine do najbližeg uzorka x
i bilo koje klase
● SVM-a traži optimalnu ravninu razdvajanja (wo i
bo) koja maksimizira marginu razdvajanja ρ
woT xbo=0
woT xbo≥0 wo
T xbo0Klasa I Klasa II
margina ρ
9
Vektori potpore● Vektori potpore x
i takvi da je
● Najbliži ravnini razdvajanja● Najteže ih je klasificirati
● Najbitniji za određivanje wo i b
o
woT x ibo=0
woT x ibo≥1 wo
T x ibo≤−1Klasa I Klasa II
margina ρ
woT x ibo=±1
10
Ravnina razdvajanja
● Ravnina razdvajanja
● Diskriminacijska funkcija
● Ovisno o predznaku određuje pripadnost pojedinoj klasi ovisno o predznaku
woT xbo=0
g x =w oT xbo
11
Udaljenost od ravnine razdvajanja
● Pozicija uzorka x izražena preko projekcije x-a na ravninu razdvajanja x
p i udaljenosti r
● r određuje amplitudu vektora kojem smjer određuje w
o – okomica na ravninu projekcije
(normala)
● Predznak od r ovisi o tome s koje strane ravnine razdvajanja se uzorak nalazi
x=x prwo
∥wo∥
12
Udaljenost od ravnine razdvajanja
● Izrazimo udaljenost pomoću diskriminacijske funkcije
g x =w oT xbo=r∥w o∥
r=g x
∥wo∥
g x p =0
13
Udaljenost ravnine razdvajanja od ishodišta
● Udaljenost ravnine razdvajanja od ishodišta
● Skaliranjem wo i b
o ne mijenjamo ravninu
razdvajanja
● Smjer vektora wo ostaje nepromijenjen
bo∥w o∥
14
Položaj ravnine razdvajanja
bo∥w o∥ r
woT xbo=0
x2
x1
x p
wo
x
15
"Odabir" potpornih vektora
● Odaberimo takve potporne vektore x(s) da vrijedi
● Tada je njihova udaljenost od ravnine razdvajanja
● Širina margine ρ tada postaje
g x s =w oT x s bo=±1
r=g x s
∥w o∥=
±1
∥w o∥
=2 r=2
∥w o∥
d=±1za
16
Maksimiziranje margine razdvajanja
● Maksimiziranje širine margine je ekvivalentno minimiziranju euklidske norme w
o
● Rezultat je optimalna ravnina razdvajanja koja ima maksimalnu marginu razdvajanja
=2 r=2
∥w o∥
17
Postupak optimizacije
● Uvjet za sve uzorke za treniranje
● Cilj je pronalazak minimuma funkcije (norme vektora težina)
d i wT x ib≥1
w =12wTw
18
Postupak optimizacije
● Rješenje pomoću metode Lagrangeovih multiplikatora (α
i)
● Rješenje je u sedlu
J w , b ,=12wT w−∑
i=1
N
i[ d i wT x ib−1]
i≥0
minw ,bmax i
J w , b ,
19
Postupak optimizacije
● Parcijalne derivacije po w i b izjednačiti s nulom
J w , b ,=12wT w−∑
i=1
N
i[ d i wT x ib−1]
∂ J w , b ,∂ w
=0∂ J w , b ,
b=0
w=∑i=1
N
i d ix i ∑i=1
N
id i=0
20
Postupak optimizacije
● Određivanje Lagrangeovih multiplikatora (αi)
● Maksimum je kada su svi pribrojnici jednaki nuli
● αi će biti različiti od nule samo kada vrijedi
minw ,bmax i
J w , b ,=12wT w−∑
i=1
N
i[ d i wT x ib−1]
maxi
J w , b ,=−∑i=1
N
i[d i wT xib−1]
i≥0 d i wT x ib−1≥0
d i wT x ib−1=0
21
Postupak optimizacije
● Jednadžba opisuje potporne vektore
● Lagrangeovi multiplikatori αi koji su različiti od
nule automatski odabiru potporne vektore
d i wT x ib−1=0
22
Postupak optimizacije
● Za određivanje Lagrangeovih multiplikatora koristi se dualni problem
Q =∑i=1
N
i−12∑i=1
N
∑j=1
N
i jd i d j x iT x j
∑i=1
N
id i=0
i≥0
wo=∑i=1
N
o , id i xi bo=1−w iT x s , d s =1
23
Razdvajanje linearno neseparabilnih klasa
● Konačni postupak je praktički identičan kao u slučaju linearno separabilnih klasa
wT xb=0
wT xb≥0 wT xb0Klasa I Klasa II
24
Razdvajanje linearno neseparabilnih klasa
● Cilj je smanjiti prosječnu grešku klasifikacije
d i wT x ib≥1−
=∑i=1
N
I i−1
I ={0 ako≤01 ako0
25
Optimizacija
● Pojednostavimo problem aproksimacijom
● I proširimo ga sa minimizacijom euklidske norme od w
=∑i=1
N
i
,w =12wT wC∑
i=1
N
i
26
Optimizacija
● Rješenje se opet traži kroz dualni problem
Q =∑i=1
N
i−12∑i=1
N
∑j=1
N
i jd i d j x iT x j
∑i=1
N
id i=0
0≤ i≤C
wo=∑i=1
N
o , id ix i bo=1N s∑i=1
N s
d i 1−w iT x i
s
27
Stroj s potpornim vektorima za klasifikaciju
● Ukoliko uzorci nisu linearno separabilni, bilo bi lijepo kada bi ih mogli takvima učiniti
● Tada bi lagano mogli primijeniti proučenu separaciju
● Prelaskom u višedimenzionalni prostor, raste vjerojatnost linearne separabilnosti (Coverov teorem)
● Osnovna ideja je ● Nelinearno mapiranje ulaznog prostora u novi prostor značajki
više dimenzionalnosti● Konstrukcija optimalne ravnine razdvajanja u novom prostoru
značajki
28
Nelinearno preslikavanje
.
x i
x i
29
Linearna separacija u prostoru značajki
● Optimalna ravnina razdvajanja konstruira se u novom višedimenzionalnom prostoru značajki
● φj(x) su m transformacijksih funkcija
● m je broj dimenzija u novom prostoru značajki
∑j=1
m
w j j x b=0
30
Linearna separacija u prostoru značajki
● Uključivanje pomaka b u vektor težina w, kao prvog člana
∑j=1
m
w j j x =0
w0x =bo
0 x =1
31
Ravnina razdvajanja
● Ravnina razdvajanja
● Traženi w sada možemo izraziti kao
● Kombiniranjem gornje dvije jednadžbe dobijemo
wT x=0
w=∑i=1
N
i d i xi
∑i=1
N
id iT x i x=0
32
Funkcija jezgre unutarnjeg produkta
● Unutarnji produkt dvaju vektora u novom prostoru značajki
● Uvodimu novu funkciju jezgre K
● Čime dobijemo novu jednadžbu ravnine razdvajanja
T x i x
∑i=1
N
id i K x i , x=0
K x i , x=T xi x
33
Mercerov teorem
● Neka je K(x,x') simetrična funkcija jezgre definirana na zatvorenim intervalima od x i x'
● Takva se jezgra može rastaviti na slijedeći niz:
● Uvjeti za to predstavljaju uvjete uz koje je jezgra K ujedno i jezgra unutarnjeg produkta● Broj dimenzija prostora značajki teoretski je beskonačan
K x i , x=∑i=1
∞
iixi x '
34
Optimizacija
Q =∑i=1
N
i−12∑i=1
N
∑j=1
N
i j d i d j K x i , x j
∑i=1
N
id i=0
0≤ i≤C
wo=∑i=1
N
o , id i x i
35
Primjeri funkcija jezgre unutarnjeg produkta
● Sloboda u izboru funkcija jezgre postoji no sve moraju zadovoljavati Mercerov teorem
● Tipični primjeri su:● Polinomna jezgra● Radijalna jezgra● Dvoslojni perceptron
● Dimenzionalnost prostora značajki ovisi o broju potpornih vektora
36
Polinomska jezgra
● Parametar p se određuje apriori
● xi su odabrani vektori potpore
K x ,x i=xT x i1p
37
Radijalna jezgra
● Parametar širine radijalne funkcije σ2 određuje se a priori
● Broj radijalnih funkcija i njihovi centri određeni su izborom vektora potpore
K x ,x i=e− 1
22∥x− xi∥2
38
Dvoslojni perceptron
● Mercerov teorem zadovoljen je samo za neke kombinacije parametara β
0 i β
1
K x ,x i=tnah 0xT x i1
39
Arhitektura SVM
K(x,x1)
K(x,x2)
K(x,xm1
)
x1
x2
xm0
.
.
.
.
.
.
y
b
Ulazni sloj veličine m0
Linearna kombinacija
Ulazni sloj veličine m1
Izlazni neuron
∑i=1
N
id i K x i , x=0
40
Primjer: XOR problem
K x ,x i=xT x i12
x=[ x1, x 2]T
K x ,x i=1 x12 x i1
22 x1 x 2 x i1 x i2 x2
2 x i222 x1 x i12 x2 x i2
x =[1, x12,2 x1 x2, x2
2 , 2 x1,2 x2 ]
XOR problem
Ulaz x Željeni izlaz di
(-1,-1) - 1
(-1,+1) +1
(+1,-1) +1
(+1,+1) -1
41
Primjer: XOR problem
● Optimizacija daje slijedeće vrijednosti Lagrangeovih koeficijenata
Q =∑i=1
4
i−12∑i=1
4
∑j=1
4
i jd i d j K x i , x j
o1=o2=o3=o4=18
wo=∑i=1
N
o , id ix i=[00
−1/2000
]
42
Primjer: XOR problem
0=woTx =[0, 0,−1/ ,2, 0, 0, 0 ] [
1x1
2
2 x1 x2
x22
2 x1
2 x 2
]=−x1 x2
43
Primjer: XOR problem
Ravnina razdvajanja
1.0
-1.0(-1,-1)
(1,1)
(-1,-1)
(1,-1)
(-1,1)
0
−x1 x2=0
44
Kako sve funkcionira
1.Pripremiti skup za treniranje
2.Odabrati funkciju jezgre unutarnjeg produkta K koja zadovoljava Mercerov teorem
3.Određivanje optimalnih αi
(time su određeni i potporni vektori)
4.Klasifikacija prema jednadžbi diskriminacije
Q =∑i=1
N
i−12∑i=1
N
∑j=1
N
i jd i d j K x i , x j , ∑i=1
N
id i=0, 0≤i≤C
g x =∑i=1
N
id i K x i , x
45
SVM: Prednosti i nedostaci
● Prednosti● Pronalazak ekstrema funkcije cilja je zagarantirana● Mogućnost efikasne implementacije optimizacije● Separacija u višedimenzionalnom prostoru značajki bez da ga ikad
posjetimo
● Nedostaci● Brzina izvođenja – nema direktne kontrole broja potpornih vektora● Nije moguće prilagođavati arhitekturu mreže prema apriori znanju o
problemu– Rješenje: konstrukcija "umjetnih" uzoraka za treniranje prema apriori
znanju
– Rješenje: uvođenje dodatnih uvjeta u funkciju cilja
46
Teme predavanja
● Problem kalsifikacije linearno separabilnih klasa● Margina razdvajanja● Vektori potpore● Klasifikacija linearno neseparabilnih klasa● Nelinearno preslikavanje u prostor značajki
47
Zadaci
1.Pokažite da je margina razdvajanja jednaka ako je za ravninu razdvajanja
zadan dodatni uvjet
2. Kod polinomne jezgre u XOR primjeru, odredite minimalni pozitivni eksponent p za koji je moguće naći rješenje problema
2 /∥w o∥ woT xbo=0
mini=1,2 , ... , N
∣w oT xbo∣=1