SVM, kernel módszerek Szabó Zoltán
Tartalomjegyzék Példák, szemlélet Definíciók: –margin, support vektor –pozitív definit, Gram-mtx, kernel –RKHS, feature leképezés –regularizációs feladat (spec: SVM), QP Reprezentációs tétel Kernelek jellemzése Kapcsolat más feladatosztályokkal Gyűjtőoldal:
Példa I. Osztályozás: ?
Hipersík tanfolyam {x: =0} {x: +b=0} w w |b| / ||w|| Origó {x: +b>0} {x: +b<0}
Elválasztó hipersík marginja d + : H-hoz legközelebbi pont táv-a a + osztályból d - : uígy Margin: d=d + +d - H1H1 H2H2 H={x: +b=0} d-d- d+d+ + osztály - osztály w
SVMC alapgondolata: large margin elv Tanítóminta: (x i,y i ), i=1…l, y i : +/- 1 Cél: szétválasztó hipersík [(w,b) pár], amely jól általánosít SVMC: –Halmazok közti választóvonalat keres, amely mindkét halmaztól ugyanolyan távol van. –Az ilyenek közül a legnagyobb marginnal rendelkezőt választja.
Nagy margin elv rajzban ?
Formálisan I/a. Fix w irány mellett, (w,b) alkalmas,,felszorzásával’’ elérhető, hogy d + = d - = 1/||w||, így margin = 2 / ||w|| max Maximumot minimalizálásra cserélve, a feladat: support vektor (SV) H opt
Formálisan I/b Idáig lineárisan szétválasztható problémával foglalkoztunk Az általános esetben ún. soft margin megoldásokhoz folyamodhatunk: –törekvés a helyes osztályozásra –az eltérést büntetjük Példa:
Formálisan I/c. Tanítóminta: (x i,y i ), i=1…l, y i : +/- 1 f [w,b] (x)= +b= f [w,b] (x)= +b= Cél (minimalizálandó költség): 0, ha y i =1 esetén f(x i ) >= +1, 0, ha y i =1 esetén f(x i ) >= +1, y i =-1-re f(x i ) <= -1 y i =-1-re f(x i ) <= -1 |x| +
Példa II. Fourier köntösű SVM: –Közelítő függvény család: Trigonometrikus fg-ek: (x)=(,sin(x),cos(x),…sin(Nx), cos(Nx)) Cél (klasszikus SVM feladat): |x| --
A Fourier trafó F: Fourier transzformáció [pl: L 1 (R) L (R)] Művelettartó leképezés
Példa III. Közelítés polinomokkal: –Interpoláció: f(x i )=y i, i=1,… –avagy más alakban: f(x)= = –avagy más alakban: f(x)= = xixi
Formálisan III. A pontos közelítés (interpoláció) helyett: –Cél: Emlék:
Idáig Feature leképezés: – : x X (minta tér) [H (feature tér), ] Közelítő fg osztály: –f(x)= + b, ahol w H Feladat: az (x i,y i ), i=1…l mintán Lesz: – =k(x,y) kernel (implicit megadás) – (x)=k(.,x)
Kvadratikus programozás (QP) Feladat: Matlab: quadprog QP-megoldó megoldás feladat pl
Klasszikus SVM feladat (regresszió) Közelítés formája: f(x)= +b Minimalizálandó funkcionál: Átskálázva ekvivalens forma:
Primál-duál program Primál QP: Duál QP: KKT
A kernel trükk Ha van egy algoritmus, ami megfogalmazható pusztán skalárszorzat segítségével, az kernelesíthető. –Például: kernel PCA, -ICA, -hebbi tanulás, … A kernel trükk: –Ha X euklideszi tér: alg. H-ra való nem-lin. ált.-a –Ha X halmaz: Skalárszorzat-vért = hasonlóság az Input-térre
Szövegeken hasonlósági mérték Alkalmazás: DNS, szövegkategorizálás ABC: ={A,T,G,C} bázis, ={a,…z} Szavak (sztringek): * DNS Feature leképezés, ami : u * H – (u)=(…, (u=v), …), ahol v * –L:={b 1,…,b n } lexikon (szavak/szótagok): (u)=(…,s i * |b i u|,…), i=1…n, s i súlyok explicit megadás
Döntési felület (osztályozás) Döntési felület: D(w)={x X: =0} {y H: =0} w X: minta tér H: feature tér Feature térben lineárisMinta térben nem (feltétlenül) lineáris
Döntési felület: példa R 2 = X x=(x 1,x 2 ) (x)=(x 1,x 2 2,x 1 x 2 ) T Ekkor D(w), ahol w=(w 1,w 2,w 3 ) T, a másodfokú egyenlet megoldó képlete szerint:
Feature leképezés helyett: RKHS Pozitív definit (k: X X-n): –X: tetsz. nem-üres halmaz (pl: [0,1], R m ) –k(x,y) valós értékű, szimmetrikus –~, ha n, (x 1,…x n ) X n esetén G=[k(x i,x j )] mtx pozitív szemidefinit. Más nevén kernel. Asszociáció: –k: pozitív definit H=H(k) RKHS. Ez X-en értelmezett valós értékű fg-ekből áll. feature tér feature tér
RKHS definíciója Fg-ek az X-n alkossanak H Hilbert teret. Ekkor a k(x,y) (ahol x,y X) szimmetrikus függvényt reprodukáló kernelnek hívjuk H- n, ha –k(.,x) fg-ek H (bármely x X-re) –f(x)=, bármely x X, f H esetén. Reprodukáló tulajdonság Ekkor H-t RKHS-nek nevezzük.
H=H(k): RKHS konstrukciója k(.,x), x X fg-ek az építőelemek. Ezek véges lineáris kombinációinak a véges lineáris kombinációinak a skalárszorzat által indukált norma szerinti teljessé tétel lesz H. skalárszorzat által indukált norma szerinti teljessé tétel lesz H.
RKHS példa Legyen (x)=x, ahol (X, ) Hilbert tér. Ekkor k(x,y)= =. Uez a tér k felől megkonstruálva: –k(.,x)= –k(.,x)= –Véges lineáris kombinációk: f(.)= i a i (x i X) Skalárszorzat: [, ]=k(x,y)= Skalárszorzat: [, ]=k(x,y)= –Az x 1-1 értelmű művelettartó leképezés, és X teljes, ezért H-n nincs szükség teljessé tételre.
Reprezentációs tétel Adott: –mintahalmaz, X (mintatér), k(ernel), –g: [0, ) R U{ } monoton növő. Ekkor az f H(k) regularizált funkcionált minimalizáló fg-nek van alakú reprezentációja.
Következmény Elég: által megparaméterezett által megparaméterezett formában keresni az optimális megoldást. formában keresni az optimális megoldást. Speciálisan: RBF-háló f [w] (x)= f [w] (x)=
RBF kernel: érdekesség Az RBF kernel egy végtelen dimenziós egységgömb felületére képez Egységgömbre, hiszen:
Kernelek konstruálása Tfh.: k i kernelek. Ekkor az alábbiak is azok: –k(x,y)=k 1 (x,y) +k 2 (x,y) –k(x,y)=c*k(x,y) –k(x,y)= k 1 (x,y)+c –k(x,y)=k 1 (x,y)*k 2 (x,y) –k(x,y)=lim n-> k n (x,y) –k(x,y)= i [k i (x i,y i )] –k(x,y)= i [k i (x i,y i )] –k(x,y)=f(x)*f(y), bármely f: X R fg-re ahol c: nem-negatív szám. kúp szorzattér ( ) RnRn spec.
Következmény Teljes polinomális kernel analógiájára: Exponensbe rakható: Normalizálás a feature térben ( nélkül!):
Kapcsolatok SVM, kernel módszerek Gauss folyamatok (GP) Regularizáció Ritka reprezentáció Bayesi keretben (MAP becslés)
Irodalom: –bevezetések, publikációk –könyvek (ingyen is) Szoftver: –Témák: SVM, GP, mixture models, LP, QP –Nyelvek: Matlab ( ), C(++), FORTRAN
Gauss folyamatok (GP) I. z(x): (x X) 0 várható értékű, gauss folyamat k(x,y)=E[z(x)z(y)]: kovariancia X yx k(x,y)
GP II. F(k):= ezen sztochasztikus folyamat által feszített Hilbert tér, azaz véges lineáris kombinációk és ezek limeszei a véges lineáris kombinációk és ezek limeszei a skalárszorzat által indukált norma értelmében. skalárszorzat által indukált norma értelmében.
Izometrikus izomorfia tétel Parzen tétel: létezik M izometrikus izomorfia H(k) és F(k) közt, azaz másszóval művelet-, skalárszorzattartó, 1-1 értelmű leképezés (X: fix). másszóval művelet-, skalárszorzattartó, 1-1 értelmű leképezés (X: fix).
Ritka reprezentáció Girosi: –Feltételek: zajtalan adatok: f(x i )=y i,c =0, ahol f H a közelítendő célfg =0, ahol f H a közelítendő célfg –Ekkor ekvivalensek: Ritka feladat: SVM (duálja): |x|