Documente Academic
Documente Profesional
Documente Cultură
functional), avnd n vedere c n general cu ct este mai mare marja, cu att este mai
redus eroarea de generalizare a clasificatorului.
Chiar dac problema initial este specificat ntr-un spatiu finit dimensional, se
ntmpl de multe ori ca multimile care trebuie distinse s nu fie separabile liniar n acel
spatiu. Din acest motiv a fost propus ca spatiul finit original s fie potrivit ntr-unul mai
mare ca dimensiune, separarea fiind probabil mai usor de fcut n acest nou spatiu. Pentru
a pstra un efort computational rezonabil, potrivirile folosite de schemele masinilor cu
suport vectorial sunt construite n asa fel nct s poat asigura c produsele scalare vor
putea fi calculate cu usurint n ceea ce priveste variabilele din spatiul original, prin
selectate s satisfac cerintele problemei.
Hiperplanele din spatiul cu mai multe dimensiuni sunt definite prin multimi de puncte al
cror produs scalar cu un vector din acel spatiu este constant. Vectorii care definesc
hiperplanurile pot fi alesi ca fiind combinatii liniare cu parametrii
ai imaginilor
. n cazul n care
. n
aceste conditii, suma nucleelor poate fi utilizat n vederea msurrii apropierii relative al
fiecrui punct de test n comparatie cu punctul original apartinnd uneia dintre multimile
ce trebuie distinse.
- H 1 nu separa planele
- H 2 le separa la o distanta mica intre clase
- H 3 le separa la o distanta maxima
Alegerea hiperplanului separator H se face pe baza urmatorului criteriu:
Cu cat hiperplanul H este la o distanta mai mare de multimile de date initiale D1 si
D2 , cu atat clasificarea noilor observatii (realizata de hiperplanul H) va fi mai buna
(mai vizibila).
d d (H , H )
w
w
H : w x b
H : w x b
b b
d d (H , H )
w
w
H : w x b
d d (H , H )
b (b )
w
2
w
H : w x b 1
.
H
:
w
2
1
1
In acest caz: d
, d
, d
.
w
w
w
Atunci criteriul enuntat mai sus ne spune ca trebuie sa il alegem pe H (adica pe w si
2
pe b) astfel incat d
sa fie maximizata.
w
Se ajunge la urmatoarea problema de optimizare patratica.
Sa se determine w R n si b R astfel incat
2
max w
w
min
(2)
2
y ( w x b) 1, pentru i 1,...,r
i
i
Reamintim: Conditiile Kuhn-Tucker pentru problema de optimizare:
( f , f i : R n R functii convexe si diferentiabile)
min f ( x)
f i ( x) 0, i 1,...,r
x 0, k 1,...n
k
sunt:
L
x 0, k 1,...,n
k
f i ( x) 0, i 1,...r
0, i 1,...,r
i
i f i ( x) 0, i 1,...,r
unde x ( x1 ,..., xn ) si
r
L( x1 ,...,xn ;1 ,..., r ) f ( x) i f i ( x)
i 1
min
wk
(3)
2 k 1
1 y ( w x b) 0, i 1,...,r
i
i
Scriem lagrangeanul:
L(w, b, ) L(w1 ,...,wn , b;1 ,..., r )
1 n 2 r
i [1 yi ( w xi b)]
wk
2 k 1
i 1
r
n
1 n
wk2 i [1 yi ( wk xik b)]
2 k 1
i 1
k 1
xi ( xi1 ,...,xin )
Scriem conditiile Kuhn-Tucker pentru problema de optim (3)
r
r
L
wk i yi xik 0 , k=1,,n [ w i yi xi 0 ] scriere vectoriala
wk
i 1
i 1
r
L
i yi 0
b i 1
i 0, i 1,...,r
1 yi (w xi b) 0, i 1,...,r
i [1 yi (w xi b)] 0, i 1,...,r
Rescriem aceste conditii:
r
i y i xi 0
i 1
r
i y i 0
i 1
(4) i 0
conditii necesare si suficiente conform
y ( w x b) 1 0, i 1,...,r
i
i
i [ y i ( w xi b) 1] 0, i 1,...,r
observatiei ulterioare
Observatie In general, conditiile Kuhn-Tucker (4) sunt necesare. In cazul unei probleme
de optim, in care functia obiectiv este convexa si restrictiile sunt liniare, conditiile KuhnTucker sunt si suficiente. In cazul problemei (3), aceste conditii sunt indeplinite.
Deci (4) ne da conditii necesare si suficiente pentru optimul problemei (3).
Observatie Daca i 0 atunci yi (w xi b) 1 (din ultima egalitate (4)). Aceasta
inseamna ca xi H sau xi H .
Asemenea puncte x i se numesc vectori suport.
Se considera acum problema duala: este o problema de maxim in care functia obiectiv
este chiar lagrangeanul.
7
( i yi 0 )
i 1
i 1
j 1
w w ( i yi xi ) ( j y j x j ) i j yi y j ( xi x j )
i 1r
w x i ( j y j x j ) xi j y j ( xi x j )
j 1
j 1
i 1
i 1
j 1
i yi (w xi ) i yi ( j y j ( xi x j ))
i , j 1
y i y j ( xi x j )
1 r
i j y i y j ( xi x j )
2 i , j 1
(6) y i i 0
i 1
i 0, i 1,...,r
Dupa ce rezolvam problema de optim (2), daca 1 ,..., r este solutia optima, calculam pe
r
w i y i xi .
i 1
Calculul lui b
Fie SV=multimea vectorilor suport (: corespunzatori i 0 )
Atunci
r
w i y i xi =
i 1
y x
xi SV
[ xi SV i 0 ]
yk (w xk b) 1 0
yk (w xk b) 1 | y k
yk2 (w xk b) yk
yk2 1 w xk b yk
Deci b y k w xk
Clasificarea noilor observatii
Fie w R n , b R determinati prin rezolvarea problemei de optim. Consideram functia
f : R n R f ( x) w x b i yi ( xi x) b
xi SV
Cazul neliniar
Consideram cazul cand datele de intrare {( x1 , y1 ),...,( xr , yr )} nu pot fi separate printr-un
hiperplan. In acest caz se procedeaza in doi pasi:
se transforma spatiul initial al datelor (input space) intr-un alt spatiu (feature space), in
care datele vor fi separabile printr-un hiperplan.
se aplica formularile si tehnicile din cazul liniar
X=input space, F=feature space
X R n , F R m , cu mn
: X F aplicatie neliniara
Prin transformarea , datele initiale {( x1 , y1 ),...,( xr , yr )}se transforma in
{(( x1 ), y1 ),...,(( xr ), yr )}.
Obs. In cazul de mai sus, feature space X are aceeasi dimensiune 2 cu input space F. In
general, F are dimensiune mai mare ca X.
Pentru datele transformate {(( x1 ), y1 ),...,(( xr ), yr )}
(corespunzatoare lui (3)) se scrie
w
min
(7)
2
1 y ( w ( x ) b) 0
i
i
problema
de
minim
(9) y i i 0
i 1
i 0
Se calculeaza solutia optima 1 ,.., n a problemei (9)
Etapa 2
Se calculeaza vectorul
ri
(10) w i yi ( xi )
i 1
Etapa 3
Se calculeaza numarul real (pentru un k 0 )
r
b y k w ( xk ) y k ( i yi ( xi )) ( xk )
i 1
(11) b y k i yi ( xi ) ( xk )
i 1
f ( x) ( i yi ( xi )) ( x) y k i yi (( xi ) ( xk ))
i 1
i 1
i 1
i 1
i yi (( xi ) ( x)) i yi (( xi ) ( xk )) y k
De unde
r
(12) f ( x) i yi [( xi ) ( x) ( xi ) ( xk )] y k
i 1
10
1 r
(8) LD (1 ,..., r ) i i j yi y j K ( xi , x j )
2 i , j 1
i 1
r
(11) b y k i yi K ( xi , xk )
i 1
(12) f ( x) i yi [ K ( xi , x) K ( xi , xk )] y k
i 1
( k 0 )
Conform (8), (12), daca K este un nucleu al functiei atunci procedam astfel
(I)
Se determina solutiile optime 1 ,..., r ale problemei de maxim
max LD ( 1 ,..., r )
r
(13) y i i 0
i 1
i 0,i 1,...,r
unde LD (1 ,..., r ) are forma (8).
(II)
Cu 1 ,..., r determinate la I, se formeaza functia clasificator f data de (12).
Daca x R n este o noua observatie atunci
sign f(x)=1 x se afla in partea pozitiva D1
sign f(x)=-1 x se afla in partea negativa D2
Exemplu Se considera transformarea : R 2 R 3 , ( x1 , x2 ) ( x12 , x22 , 2x1 x2 ) .
Luam functia K : R 2 R 2 R , K ( x, z) ( x z) 2 produs scalar
Fie x ( x1 , x2 ) , z ( z1 , x2 ) . Atunci
K ( x, z) ( x z) 2 ( x1 z1 x2 z 2 ) 2
x12 z12 2x1 z1 x2 z 2 x22 z 22
i 1
x, x
i 1
d ( x, y ) x y
2
i
norma lui x
(x
i 1
yi ) 2 distanta dintre x si y
11
ax b
n
a x
i 1
b ecuatia hiperplanului H
Cazuri particulare
a)n=2
a1 x1 a2 x2 b (in plan, hiperplanele sunt dreptele)
b) n=3
a1 x1 a2 x2 a3 x3 b (in plan, hiperplanele sunt planele)
Fie hiperplanul H: a x b si punctul p ( p1 ,..., pn ) R n
Distanta de la p la hiperplanul H: d ( p, H ) min d ( p, x)
xH
Proppozitia 1 d ( p, H )
a p b
a
a p
i 1
p, q H 2 d ( p , H 1 ) d ( q , H 2 )
bc
a
Demonstratie
a p b cb
d ( p, H 1 )
a
a
d ( q, H 1 )
aq b
a
cb
a
p, q H 2 a p c a q (vezi Figura A)
Conform Propozitiei 2, toate punctele de pe H 2 sunt echidistante fata de hiperplanul H 1 :
bc
anume la distanta
.
a
Prin definitie, distanta dintre hiperplanele H 1 si H 2 este d ( H 1 , H 2 )
bc
a
D1 {x R n | a x b}
D2 {x R n | a x b}
Figura B
12
H1
x2
H2
d (q, H1 )
q
d ( p, H1 )
x1
Figura A
x2
D1
D2
x1
Figura B
13
APENDIX2
Clasificare nonlineara
Algoritmul initial propus de Vapnik in 1963 era un clasificator liniar. In 1992, Bernhard
E. Boser, Isabelle M. Guyon si Vladimir N. Vapnik au propus o metoda de a crea
clasificatori neliniari aplicand abordarea kernel pentru a determina distanta maxima
dintre hiperplane. Algoritmul rezultat este similar, numai ca produsul scalar este inlocuit
prin o functie kernel neliniara. Hiperplanul se transforma intr-un spatiu multidimensional
al atributelor, numit feature space. Functia kernel poate fi:
Polinomiala (omogena): k ( xi , x j ) ( xi x j ) d
Polinomiala (neomogena): k ( xi , x j ) ( xi x j 1) d
Uneori se considera
.
2 2
Tangenta hiperbolica: k ( xi , x j ) tanh(lxi x j c) , pentru anumiti l>0 si c<0, cu
tanh(x)
e2x 1
.
e2x 1
incat w ( x) k (w, x) .
14
x i =variabilele independente
Functia kernel transforma datele din inputuri (independente) in spatiul atributelor (feature
space).
CLASSIFICATION SVM TYPE 2
15
Regresie SVM
y=f(x)+zgomot
Scopul este de a gasi o forma functionala pentru f care poate face predictii corecte asupra
unor noi observatii. In functie de forma functiei eraore, exista doua tipuri de modele de
regresie SVM.
REGRESSION SVM TYPE 1
yi wT ( xi ) bi i
i , i* 0, i 1, N
REGRESSION SVM TYPE 2
yi wT ( xi ) bi i
i , i* 0, i 1, N , 0
16