Neuronske mreže: Stroj s potpornim vektorima (SVM)1 Neuronske mreže: Stroj s potpornim vektorima...

Preview:

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