SVM Support Vector Machnes Metoda wektorów nośnych JERZY STEFANOWSKI Insttute of Computng Scences, Poznań Unversty of Technology UM slajdy dodatkowe do wykładu
Plan wykładu. Lnowa separowalność w statystycznej klasyfkacj. Podstawy metody SVM 3. Uogólnene SVM (ne w pełn separowalne lnowo) 4. Funkcje jądrowe (kernal functons) 5. SVM dla danych separowalnych nelnowo 6. Podsumowane 7. Gdze szukać węcej
Formalzacja problemu klasyfkacj W przestrzen danych (ang. measurement space) Ω znajdują sę wektory danych stanowące próbkę uczącą D, należące do dwóch klas {( ) p } N c R, c {, } D =, = Szukamy klasyfkatora pozwalającego na podzał całej przestrzen Ω na dwa rozłączne obszary odpowadającej klasom {,-} oraz pozwalającego jak najlepej klasyfkować nowe obekty do klas Podejśce opera sę na znalezenu tzw. grancy decyzyjnej mędzy klasam g()
Separowalność lnowa Dwe klasy są lnowo separowalne, jeśl stneje hperpłaszczyzna H postac g() g() przyjmująca wartośc T = w + b g( ) g( ) > < 0 0 Jak poszukwać takej hperpłaszczyzny grancznej?
Lnowa funkcja separująca y Funkcja lnowa separująca Wyznacza podzał przestrzen na obszary odpowadające dwóm klasom decyzyjnym. Orygnalna propozycja Fsher, ale także nne metody (perceptron, tp..) Uogólnena dla welu klas.
Support Vector Machnes Znajdź lnową hperpłaszczyznę (decson boundary) oddzelające obszary przykładów z dwóch różnych klas
Support Vector Machnes Jedno z możlwych rozwązań
Support Vector Machnes Inne możlwe rozwązane
Support Vector Machnes Zbór welu możlwych rozwązań
Support Vector Machnes Którą z hperpłaszczyzn należy wybrać? B or B? Czy można to formalne zdefnować?
Uwag o margnese Hperpłaszczyzny b b są otrzymane przez równoległe przesuwane hperpłaszczyzny grancznej aż do perwszych punktów z obu klas. Odległość mędzy nm margnes klasyfkatora lnowego Jak margnes wyberać?
Węższe czy szersze margnesy? Szerszy margnes lepsze własnośc generalzacj, mnejsza podatność na ew. przeuczene (overfttng) Wąsk margnes mała zmana grancy, radykalne zmany klasyfkacj Small Margn Large Margn Support Vectors
Teora Structural rsk mnmzaton Oszacowane górnej grancy błędu ze względu na błąd uczący R e, lczbę przykładów N tzw. model complety h z prawdopodobeństwem -η generalzaton error ne przekroczy: h log( η) R Re + ϕ(, ) N N Prace teoretyczne h complety dla modelu lnowego: Models wth small margns have hgher capacty -complety because they are more flevle and can ft many tranng sets Także The hypothess space wth mnmal VC-dmenson accordng to SRM Reasumując modele o wekszej complety mają gorsze oszacowane błędu Dlatego wyberaj wększy margnes!
Support Vector Machnes Znajdź hperpłaszycznę, która maksymalzuje tzw. margnes => B jest lepsze nż B
Lnowe SVM hperpłaszczyzna granczna Vapnk poszukuj mamal margn classfer gdze w b są parametram modelu Parametry grancy wyznaczaj tak, aby maksymalne margnesy b b były mejscem geometrycznym punktów spełnających warunk Margnes odległość mędzy płaszczyznam b b = 0 + b w = + = + b w b w b b < + > + = 0 0 b w b w y
Poszukwane parametrów hperpłaszczyzny w r r + b = 0 w r r w r r + b = + + b = f r r r f w + b ( ) = r r f w + b
Ilustracje sposób przekształceń margn = w w w +... + w p margn = w Cel: Maksymalzuj margnes! w w w mamze mnmze mnmze
Lnear Support Vector Machnes Sformułowane mat. problemu: mn w w = Przy warunkach ogranczających y ( w + b) =,, K, N Jest to problem optymalzacj kwadratowej z lnowym ogr. uogólnone zadane optymalzacj rozwązywany metodą mnożnków Lagrange a (tak aby np. ne dojść do w 0)
LSVM Mnmalzuj funkcję Lagrange a N L( w, b, α) = w = α( y ( w parametry α 0 mnożnk Lagrange a + b) ) Pownno sę różnczkować L po w b nadal trudnośc w rozwązanu Przy przekształcenach wykorzystuje sę ogranczena Karush- Kuhn-Tucker na mnożnk: α [ y α 0 ( w + b) ] = 0 W konsekwencj α są nezerowe wyłączne dla wektorów nośnych, pozostałe są zerowe Rozwązane parametrów w b zależy wyłączne od wektorów nośnych.
LSVM sformułowane dualne Nadal zbyt wele parametrów w,b,α do oszacowana Przechodz sę na postać dualną zadana optymalzacj Maksymalzuj L(α) Przy ogranczenach α 0, α y 0 Rozwązane (α>0 dla SV) ; b odpowedno uśrednane Hperpłaszczyzna decyzyjna N = N = α w = N = α y N N α = j= α j = N = α y + b = 0 y y j ( j)
ozwązane LSVM Klasyfkacja funkcja decyzyjna N f ( ) = sgn( α y + = O ostatecznej postac hperpłaszczyzny decydują wyłączne wektory nośne (α >0) Im wększa wartość α tym wększy wpływ wektora na grancę decyzyjną Klasyfkacja zależy od loczynu skalarnego nowego z wektoram nośnym ze zboru uczącego Pewne założene metody starać sę zbudować klasyfkator lnowy używając możlwe mnmalną lczbę wektorów z danych trenngowych (wektory nośne) Funkcjonalne klasyfkator podobny do nektórych sec neuronowej, metod jądrowych Parzena b)
Przykład Oblczmy wag = α = α y = 65.56 0.3858 + 65.56 ( ) 0.487 = 6. 64 y = 65.56 0.4687 + 65.56 ( ) 0.6 = 9. 3 ' b = ( 6.64) 0.3858 ( 9.3)(0.4687) = 7.930 b '' = ( 6.64) 0.487 ( 9.3)(0.6) = 7.98 b = 0.5 ( b + b ' '' ) = 7.93
Support Vector Machnes Co robć z LSVM gdy dane ne są w pełn lnowo separowalne?
Jak użyć SVM dla dane lnowo neseparowalnych
Zmenne dopełnające
Zmenne osłabające - nterpretacja Zmenne ξ 0 dobera sę dla każdego przykładu uczącego. Jej wartość zmnejsza margnes separacj. (rodzaj zwsu punktu poza hperpłaszczyzną nośną) Jeżel 0 ξ, to punkt danych (,d ) leży wewnątrz strefy separacj, ale po właścwej strone Jeżel ξ >, punkt po newłaścwej strone hperpłaszczyzny wystąp błąd klasyfkacj Modyfkacja wymagań dla wektorów nośnych b b w + w + b = ξ b = + ς
Lnear SVM nepełna separowalność w For all w + w b + For w + w + ξ b...for some postve ξ Task: Mamze the margn and mnmse tranng errors w w B E C S O M E + C ( ξ )
SVM z dodatkowym zmennym Jak przedefnować sformułowane? Z dodatkowym zmennym dopełnającym oraz kosztem błędu na danych uczących Mmmalzuj wyrażene: z ogranczenam: f ( r ) = r N w = + k L( w) C ξ = r r f w + b - ξ r r f w + b + ξ Drug czynnk odpowada za ew. błędy testowana (górne oszacowane tych błędów Parametr C ocena straty zwązanej z każdym błędne klasyfkowanym punktem dla które ξ>0 Przetarg szerok margnes to dużo błędów odwrotne
Rozwązane problemu w Ponowne dojdzemy do dualnego problemu: Ma: W(α) = m = α m m αα j = j= y y j j Programowane kwadratowe (QP) : trudnośc rozwazana przeformułuj problem Globalne ma α może być ograncz: () () 0 α C, m = α y = 0
Nonlnear Support Vector Machnes Co zrobć gdy próby uczące pownny być nelnowo separowalne?
Nonlnear Support Vector Machnes Transformacja do wysoce welowymarowej przestrzen
SVM Transformacje Przykład transformacj D D Projekcja danych orygnalnych R p w nową m>p welowymarową przestrzeń, w której z dużym prawdopodobeństwem będą separowalne lnowo (Twerdzena matem. np. Covera) Przykład przekształcena welomanowe wyższego stopna gdze do zmennych dołącza sę ch p-te potęg oraz loczyny meszane. (0,) + + - + - 0 + - (0,0) + (,0)
Przykład transformacj welomanowej
Przykład transformacj welomanowej Orygnalna funkcja celu Transformacja Poszukujemy parametrów Rozwązane > + = otherwse y 0. 0.5) ( 0.5) ( ), (,),,, ( ), ( : Φ 0 0 3 4 = + + + + w w w w w 0.46 = +
lka defncj Przykłady danych do klasyfkacj
Model nelnowy SVM Funkcja decyzyjna po przekształcenu Zasady klasyfkacj Sformułowane problemu nelnowego SVM Podobne jak poprzedno optymalzujemy funkcje z mnożnkam Lagrange a Funkcja klasyfkująca g + b = ) ( ) ( w ϕ 0 ) ( 0 ) ( < > + g g mn w w = N b w y,,, ) ) ( ( K = + Φ ( ) ) ( ) ( j j N N j j N y y Φ Φ = = = α α α = + Φ Φ = N b y sgn f ) ) ( ) ( ( ) ( α
Curse of dmensonalty and Oblcz Φ( ) Φ( j ) Problem: Trudne oblczenowo do wykonana! Wele parametrów do oszacowana - weloman stopna p dla N atrybutów w orygnalnej przestrzen prowadz do P O( N ) atrybutów w nowej rozszerzonej F feature space Skorzystaj z dot product (loczynu skalarnego) na wektorach wejścowych jako mary podobeństwa wektorów Iloczyn Φ( ) Φ( j ) może być odnesony do podobeństwa wektorów j w transformowanej rozszerzonej przestrzen Idea kernel (funkcj jądrowych) Proste funkcje K dwóch argumentów wektorowych pozwalają oblczyć wartość loczynu skalarnego w rozszerzonej przestrzen
Co to są funkcje jądrowe (Kernel functon) Wywodzą sę z badań lnowych przestrzen wektorowych, przestrzen Hlberta, Banacha Intucyjne są to stosunkowo proste symetryczne K(, j ) zależne od odległośc mędzy j które spełnają pewne wymagana matem. K( u) du =, σ K = uk( u) du > K( u) 0, 0
Wnosek z twerdzena Mercera Własność podstawą tzw. trku kernelowego (kernel trck ) :... map the data nto some other scalar product space (feature space) F by means of a nonlnear mappng lke the above, and perform the lnear algorthm (lke decson boundary for classes) n the feature space F. In many cases the mappng Φ cannot be eplctly computed, due to the hgh-dmensonalty of F. But ths s not an obstacle, when the decson functon requres the evaluaton of scalar products Φ() Φ (y), and not the pattern Φ() n eplct form. [Camastra] every dot product s replaced by a non-lnear kernel functon.
ypowo stosowane jądra Dopuszczalne typy jąder zwązane z SVM Normalne (Gaussowske) Welomanowe sgmodalne K(, j j ( ) = ep{ σ K (, ) = ( + d) j j ) } K(, ) tgh( κ δ ) j = j p
Przykład prostego przekształcena welomanowego SVM: the kernel trck The kernel trck: ( ) ( ) ) ( ) (,,,, ) ( ), ( j j j j j j j Φ Φ = = = ( ) j j N N j j N K y y = = = α α α Orgnal optmzaton functon: Ne musmy znać funkcj Ф, wystarczy znać jądro (kernel)
Funkcja decyzyjna Wykorzystane funkcj jądrowych f ( ) = sgn sgn ( N ) α y b Φ( ) Φ( ) + = ( N ) α y K(, ) + b = Model klasyfkacj bnarnej rozszerza sę na zagadnene weloklasowe K > Specyfczne konstrukcje złożone: one-versus-all Parwse classfcaton (Haste, )
Gaussan kernel, C=0000, 0CV, 00% tran, 79.3 ± 7.8 test Gaussan kernel, C=, 0CV, 93.8% tran, 8.6 ± 8.0 test Auto C=3 and Gaussan dsperson 0.004: about 84.4 ± 5. on test Eample : Cleveland heart data Left: D MDS features, lnear SVM, C=, acc. 8.9% Rght: support vectors removed, margn s clear.
Przykładowe zastosowana Można sę zapoznać z lstą: http://www.clopnet.com/sabelle/projects/svm/applst.html A few nterestng applcatons, wth hghly compettve results: On-lne Handwrtng Recognton, zp codes 3D object recognton Stock forecastng Intruson Detecton Systems (IDSs) Image classfcaton Detectng Steganography n dgtal mages Medcal applcatons: dagnostcs, survval rates... Techncal: Combuston Engne Knock Detecton Elementary Partcle Identfcaton n Hgh Energy Physcs Bonformatcs: proten propertes, genomcs, mcroarrays Informaton retreval, tet categorzaton
rochę hstor Wczesne lata sześćdzesąte została opracowana metoda support vectors w celu konstruowana hperpłaszczyzn do rozpoznawana obrazu ( Vapnk Lerner 963, Vapnk Czervonenks 964) lnowa SVM. Początek lat 990-sątych: uogólnene metody pozwalające na konstruowane nelnowych funkcj separujących (Boser 99, Cortes Vapnk 995). 995: dalsze rozszerzene pozwalające otrzymać estymację funkcj cągłej na wyjścu regresja (Vapnk 995).
Klka zagadn. efektywnego stosowana SVM Normalzuj sygnały wejścowe Dobrze wyberz wartość C Wybór funkcj jądrowej Uogólnena dla problemów weloklasowych co jeszcze? Na le są skuteczne SVM w analze danych nezrównoważonych
Parę uwag podsumowujących Dane odwzorowane (przy pomocy funkcj jądrowych) w nową przestrzeń cech slna przewaga nad nnym metodam W nowej przestrzen dane pownny być lnowo separowalne W porównanu do nnych podejść welowymarowość przekształcena jest rozwązana przez trck kernelowy Pośredno ograncza sę nebezpeczeństwo przeuczena Teoretyczne poszukują mnmum globalnego a ne lokalnego (jak podejśca heurystyczne MLP) Ogranczena Dobór parametrów Skrajne podejśce black bo
ocne strony SVM Stopeń skomplkowana/pojemność jest nezależna od lczby wymarów. Bardzo dobra podbudowa statystyczno-teoretyczna Znajdowane mnmum glonalnego. Mnmalzujemy funkcję kwadratową co gwarantuje zawsze znalezene mnmum. Algorytm jest wydajny SVM generuje prawe optymalny klasyfkator. Ne jest tez czuły na przetrenowane. Dobre uogólnane dzęk welowymarowej feature space. Najważnejsze: poprzez użyce odpowednej funkcj jądra SVM bardzo duża skuteczność w praktyce Janfeng Feng, Susse Unversty
łabe strony SVM owolny trenng mnmalzacja funkcj, szczególne okuczlwy przy dużej lośc danych użytych do renngu. ozwązana też są skomplkowane (normalne >60% ektorów użytych do nauk staje sę wektoram sperającym), szczególne dla dużych lośc danych. Przykład (Haykn): poprawa o.5% ponad wynk osągnęty przez MLP. Ale MLP używał ukrytych węzłów, a SVM 85 wektorów. rudno dodać własną wedzę (pror knowledge) Janfeng Feng, Susse Unversty
Przetarg mędzy złożonoścą modelu a mnmalzacją błędów n. number of ranng errors, odel complety complety + mn. tranng errors mn. tranng errors complety Best trade-off Functons ordered n ncreasng complety
Odnośnk lteraturowe T.Haste, R.Tbshran, J.Fredman: The Elements of Statstcal Learnng. Sprnger poszukaj wersj elektroncznej pdf J.Koronack, J.Ćwk: Statystyczne systemy uczące sę (rozdz. 6) M.Krzyśko, W.Wołyńsk, T.Góreck,M.Skorzybut: Systemy uczące sę. S.Osowsk: Sec neuronowe w przetwarzanu nformacj.
Inne materały - nternet A.Bartkowak: Wykłady nt. Sec Neuronowych: w Kernele, sece SVM sec GDA. http://www..un.wroc.pl/~aba/ W.Duch: wyklady nt. Computatonal Intellgence http://www.fzyka.umk.pl/~duch/wyklady/nn_plan. html Angelska wersja Wkped Thorsten Joachms: Support Vector and Kernel Methods - SIGIR 003 Tutoral
SVM Related Lnks SVM Webste http://www.kernel-machnes.org/ Representatve mplementatons LIBSVM: an effcent mplementaton of SVM, mult-class classfcatons, nu-svm, one-class SVM, ncludng also varous nterfaces wth java, python, etc. SVM-lght: smpler but performance s not better than LIBSVM, support only bnary classfcaton and only C language SVM-torch: another recent mplementaton also wrtten n C.
Inne odnośnk do lteratury anglojęzycznej Statstcal Learnng Theory by Vapnk: etremely hard to understand, contanng many errors too. C. J. C. Burges. A Tutoral on Support Vector Machnes for Pattern Recognton. Knowledge Dscovery and Data Mnng, (), 998. Better than the Vapnk s book, but stll wrtten too hard for ntroducton, and the eamples are so not-ntutve The book An Introducton to Support Vector Machnes by N. Crstann and J. Shawe-Taylor Also wrtten hard for ntroducton, but the eplanaton about the mercer s theorem s better than above lteratures The neural network book by Haykns