4. Tukivektorikoneet

Samankaltaiset tiedostot
Kaksiluokkainen tapaus, lineaarinen päätöspinta, lineaarisesti erottuvat luokat

KKT: log p i v 1 + v 2 x i = 0, i = 1,...,n.

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi.

b 1. b m ) + ( 2b Ax) + (b b)

Luento 12: Duaalitehtävä. Tarkennuksia Lagrangen kertoimen tulkintaan. Hajautettu optimointi.

Optimaalisuusehdot. Yleinen minimointitehtävä (NLP): min f(x) kun g i (x) 0 h j (x) = 0

1 Kertaus. Lineaarinen optimointitehtävä on muotoa:

min x x2 2 x 1 + x 2 1 = 0 (1) 2x1 1, h = f = 4x 2 2x1 + v = 0 4x 2 + v = 0 min x x3 2 x1 = ± v/3 = ±a x 2 = ± v/3 = ±a, a > 0 0 6x 2

Osakesalkun optimointi. Anni Halkola Turun yliopisto 2016

Duaalisuus kokonaislukuoptimoinnissa. Mat , Sovelletun matematiikan tutkijaseminaari, kevät 2008, Janne Karimäki

Osakesalkun optimointi

Luento 9: Yhtälörajoitukset optimoinnissa

2 Osittaisderivaattojen sovelluksia

Malliratkaisut Demot

Oletetaan ensin, että tangenttitaso on olemassa. Nyt pinnalla S on koordinaattiesitys ψ, jolle pätee että kaikilla x V U

JYVÄSKYLÄN YLIOPISTO. 3. Luennon sisältö

1 Rajoitettu optimointi I

1. LINEAARISET LUOKITTIMET (jatkoa)

Talousmatematiikan perusteet: Luento 12. Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 7: Pienimmän neliösumman menetelmä ja Newtonin menetelmä.

MS-A0204 Differentiaali- ja integraalilaskenta 2 (ELEC2) Luento 6: Ääriarvojen luokittelu. Lagrangen kertojat.

Luento 11: Rajoitusehdot. Ulkopistemenetelmät

Kimppu-suodatus-menetelmä

Keskeiset tulokset heikko duaalisuus (duaaliaukko, 6.2.1) vahva duaalisuus (6.2.4) satulapisteominaisuus (6.2.5) yhteys KKT ehtoihin (6.2.

Epäyhtälöt ovat yksi matemaatikon voimakkaimmista

Taustatietoja ja perusteita

1 Rajoittamaton optimointi

, on säännöllinen 2-ulotteinen pinta. Määrää T x0 pisteessä x 0 = (0, 1, 1).

Differentiaali- ja integraalilaskenta 2 Laskuharjoitus 4 / vko 40

12. Hessen matriisi. Ääriarvoteoriaa

Yhtälöryhmä matriisimuodossa. MS-A0007 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Lineaarinen optimointi. Harjoitus 6-7, Olkoon A R m n, x, c R ja b R m. Osoita, että LP-tehtävän. c T x = min!

Numeeriset menetelmät TIEA381. Luento 8. Kirsi Valjus. Jyväskylän yliopisto. Luento 8 () Numeeriset menetelmät / 35

Talousmatematiikan perusteet: Luento 15. Rajoitettu optimointi Lagrangen menetelmä Lagrangen kerroin ja varjohinta

Talousmatematiikan perusteet: Luento 11. Lineaarinen optimointitehtävä Graafinen ratkaisu Ratkaisu Excel Solverilla

Yhtälöryhmä matriisimuodossa. MS-A0004/A0006 Matriisilaskenta. Tarkastellaan esimerkkinä lineaarista yhtälöparia. 2x1 x 2 = 1 x 1 + x 2 = 5.

Luento 6: Monitavoitteinen optimointi

Matematiikan tukikurssi

Malliratkaisut Demo 4

Numeeriset menetelmät

TEKNILLINEN KORKEAKOULU Systeemianalyysin laboratorio. Kimmo Berg. Mat Optimointioppi. 9. harjoitus - ratkaisut

Numeeriset menetelmät TIEA381. Luento 6. Kirsi Valjus. Jyväskylän yliopisto. Luento 6 () Numeeriset menetelmät / 33

Matematiikan tukikurssi

Numeeriset menetelmät

Harjoitus 7: vastausvihjeet

Kuva 1: Funktion f tasa-arvokäyriä. Ratkaisu. Suurin kasvunopeus on gradientin suuntaan. 6x 0,2

6. Luennon sisältö. Lineaarisen optimoinnin duaaliteoriaa

Talousmatematiikan perusteet: Luento 14. Rajoitettu optimointi Lagrangen menetelmä: yksi yhtälörajoitus Lagrangen menetelmä: monta yhtälörajoitusta

1 Sisätulo- ja normiavaruudet

. Kun p = 1, jono suppenee raja-arvoon 1. Jos p = 2, jono hajaantuu. Jono suppenee siis lineaarisesti. Vastaavasti jonolle r k+1 = r k, suhde on r k+1

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

x = y x i = y i i = 1, 2; x + y = (x 1 + y 1, x 2 + y 2 ); x y = (x 1 y 1, x 2 + y 2 );

Matematiikan tukikurssi

Este- ja sakkofunktiomenetelmät

MS-A0107 Differentiaali- ja integraalilaskenta 1 (CHEM)

Demo 1: Simplex-menetelmä

Harjoitus 3 ( )

Numeeriset menetelmät TIEA381. Luento 12. Kirsi Valjus. Jyväskylän yliopisto. Luento 12 () Numeeriset menetelmät / 33

Johdatus tekoälyn taustalla olevaan matematiikkaan

Aki Taanila LINEAARINEN OPTIMOINTI

Luento 8: Epälineaarinen optimointi

Derivaatta: funktion approksimaatio lineaarikuvauksella.

Malliratkaisut Demot

4.0.2 Kuinka hyvä ennuste on?

802320A LINEAARIALGEBRA OSA II

Luento 8: Epälineaarinen optimointi

Harjoitus 3 ( )

Luento 6: Monitavoiteoptimointi

Luento 1: Optimointimallin muodostaminen; optimointitehtävien luokittelu

Luento 10: Optimointitehtävien numeerinen ratkaiseminen; optimointi ilman rajoitusehtoja

Ellipsoidimenetelmä. Samuli Leppänen Kokonaislukuoptimointi. S ysteemianalyysin Laboratorio

1. Lineaarinen optimointi

Tilavuus puolestaan voidaan esittää funktiona V : (0, ) (0, ) R,

Ortogonaaliprojektio äärellisulotteiselle aliavaruudelle

Matematiikan tukikurssi

Malliratkaisut Demo 4

y x1 σ t 1 = c y x 1 σ t 1 = y x 2 σ t 2 y x 2 x 1 y = σ(t 2 t 1 ) x 2 x 1 y t 2 t 1

BM20A5840 Usean muuttujan funktiot ja sarjat Harjoitus 7, Kevät 2018

f(x, y) = x 2 y 2 f(0, t) = t 2 < 0 < t 2 = f(t, 0) kaikilla t 0.

Malliratkaisut Demot

x = y x i = y i i = 1, 2; x + y = (x 1 + y 1, x 2 + y 2 ); x y = (x 1 y 1, x 2 + y 2 );

Ristitulolle saadaan toinen muistisääntö determinantin avulla. Vektoreiden v ja w ristitulo saadaan laskemalla determinantti

TEKNILLINEN TIEDEKUNTA, MATEMATIIKAN JAOS

Dierentiaaliyhtälöistä

Inversio-ongelmien laskennallinen peruskurssi Luento 7 8

3 = Lisäksi z(4, 9) = = 21, joten kysytty lineaarinen approksimaatio on. L(x,y) =

Viikko 3: Lineaarista regressiota ja luokittelua Matti Kääriäinen

MS-A0104 Differentiaali- ja integraalilaskenta 1 (ELEC2) MS-A0106 Differentiaali- ja integraalilaskenta 1 (ENG2)

MS-C1340 Lineaarialgebra ja

Numeeriset menetelmät

Kirjallisuuskatsaus sisäpistemenetelmiin ja niiden soveltamiseen eri optimointiluokille (valmiin työn esittely)

Harjoitus 8: Excel - Optimointi

Johdatus tekoälyn taustalla olevaan matematiikkaan

1. Etsi seuraavien funktioiden kriittiset pisteet ja tutki niiden laatu: (a.) f(x,y) = 20x 2 +10xy +5y 2 (b.) f(x,y) = 4x 2 2y 2 xy +x+2y +100

Mat Lineaarinen ohjelmointi

2.2 Gaussin eliminaatio. 2.2 Gaussin eliminaatio. 2.2 Gaussin eliminaatio. 2.2 Gaussin eliminaatio

MS-A0207 Differentiaali- ja integraalilaskenta 2 (Chem) Tentti ja välikokeiden uusinta

Sekalaiset tehtävät, 11. syyskuuta 2005, sivu 1 / 13. Tehtäviä

2 Yhtälöitä ja epäyhtälöitä

Funktioiden approksimointi ja interpolointi

Transkriptio:

4. Tukivektorikoneet Tukivektorikoneen (Support Vector Machine, SVM) keskeiset piirteet: Tehdään lineaarista luokittelua (tai regressiota) korkeaulotteisessa piirreavaruudessa. Laskentaa tehostetaan käyttämällä ydinfunktiota. Lineaarisen luokittelijan valinnassa maksimoidaan marginaalia ennustustarkkuuden parantamiseksi. 38

Ydinfunktio Käytämme edelliseltä luennolta tuttua kernel-trikkiä epälineaarisen ongelman muuntamiseen lineaariseksi. Olkoon Hilbertin avaruus H piirreavaruus, Φ: X H piirrekuvaus ja k: X X R vastaava ydinfunktio. Merkintöjen yksinkertaistamiseksi kirjoitamme jatkossa φ(x) = z (ja φ(x i ) = z i jne.). Sisätulot, ja normit ovat Hilbertin avaruudessa H, ellei muuta mainita. 39

Suurimman marginaalin hypertaso Olkoon w H ja b R. Muistetaan, että pisteen z etäisyys hypertasosta { z H w, z + b = 0 } on w, z + b. w Parametrit w ja b määrittelevät myös luokittelijan h(z; w, b) = { 1 jos w, z + b 0 1 muuten. Jos (z i, y i ) on datapiste, missä z i H ja y i { 1,+1 }, niin h( ; w, b) luokittelee pisteen oikein jos y i ( w, z i + b) > 0 väärin jos y i ( w, z i + b) < 0. 40

Yhdistämällä etumerkin ja etäisyyden saamme datapisteen (z, y) marginaalin hypertasomme suhteen: y( w, z + b). w Datapisteen (z i, y i ) marginaalin tulkinta: positiivinen marginaali: luokittelija oikeassa negatiivinen marginaali: luokittelija tekee virheen itseisarvo suuri: luokittelija varma luokituksesta itseisarvo pieni: luokittelija epävarma luokituksesta. Tarkastelemme nyt tilannetta, jossa data on piirreavaruudessa lineaarisesti erottuvaa eli joillakin w ja b kaikki datapisteet (z i, y i ) saavat positiivisen marginaalin. 41

Lineaarisesti erottuvalla datalla on ääretön määrä erilaisia hypertasoja, jotka kaikki luokittelevat opetusdatan oikein. Luonteva ajatus on valita näistä se, joka on mahdollisimman turvallinen siinä mielessä, että mikään datapiste ei ole lähelläkään tulla väärin luokitelluksi. Menettelylle voidaan esittää myös tilastotieteellisiä perusteluja. Siis haluamme, että kaikki marginaalit ovat suuria positiivisia lukuja. Tämä johtaa pienimmän marginaalin maksimointiin: valitaan parametreiksi ( ) 1 (w, b ) = arg max w,b w min (y i( w, z + b)). 1 i N 42

Olkoon µ = min 1 i N (y i( w, z i + b )) optimiratkaisun normeeramaton marginaali. Sijoitus w αw, b αb millä tahansa α > 0 jättää arvon 1 w min 1 i N (y i( w, z i + b)) muuttumattomaksi. Valitaan α = 1/µ; oletuksen mukaan µ > 0. Saadaan w = w /µ ja b = b /µ, joilla optimoitavan funktion arvo on sama kuin alkuperäisillä w ja b. Siis myös w ja b ovat ratkaisuja alkuperäiseen optimointiongelmaan, ja lisäksi min 1 i N ( yi ( w, z i + b ) ) = 1. 43

Voimme kirjoittaa alkuperäisen ongelman ( ) 1 maksimoi w min (y i( w, z + b)) 1 i N muotoon ( ) 1 maksimoi w min (y i( w, z + b)) 1 i N rajoitteella y i ( w, z i + b) 1 kaikilla 1 i N. Ottamalla ehto huomioon ja vaihtamalla maksimointi minimoimiseksi saadaan neliöllinen optimointiongelma Optimointiongelma 4.1: Muuttujat w H, b R minimoi w 2 rajoitteella y i ( w, z i + b) 1 kaikilla 1 i N 44

Konveksi optimointi (pikakertaus) Olkoot f ja p funktioita R d R. Tarkastellaan ongelmaa Optimointiongelma 4.2: Muuttujat w R d minimoi f(x) rajoitteella p(x) 0 Intuitiivinen tulkinta: hiukkanen liukuu pitkin maanpintaa, jonka korkeutta f esittää pisteessä x hiukkaseen kohdistuu painovoima f(x) viivaa p(x) = 0 pitkin kulkee aita, joka ei päästä hiukkasta ulos aidan tukivoima on kohtisuorassa aitaan nähden ja sisääpäin tukivoima λ p(x) jollain λ 0 ei tukivoimaa ellei hiukkanen koske aitaan jos λ 0 niin p(x) = 0, eli λp(x) = 0. 45

Jos hiukkasen on tasapainossa pisteessä, x, voimien summa on nolla eli f(x ) + λ p(x ) = 0 λ 0 λp(x ) = 0 Kohtuullisten säännöllisyysehtojen vallitessa nämä ovat välttämättömiä ehtoja sille, että x on optimointiongelman ratkaisu. Jos ongelma on lisäksi konveksi eli f ja p ovat konvekseja, ylläolevat ehdot ovat riittäviä sille, että x on optimointiongelman ratkaisu. Funktio g: R d R on konveksi, jos g(αx + (1 α)y) αg(x) + (1 α)g(y) kaikilla x, y ja kaikilla 0 α 1. Riittävä ehto konveksiudelle on, että toinen derivaatta on kaikkialla ei-negatiivinen. 46

Yleinen muoto konveksille optimointiongelmalle on Optimointiongelma 4.3: muuttujat x R d missä minimoi f(x) rajoitteilla p i (x) 0 kun i = 1,..., m q j (x) = 0 kun j = 1,..., n f ja p 1,..., p m ovat konvekseja funktioita R d R q 1,..., q n ovat affiineja funktioita R d R eli muotoa q j (x) = w j, x + b j joillain w j R d ja b j R. Tämän ongelman Lagrangen funktio on m L(x; λ, β) = f(x) + λ i p i (x) + n β j q j (x), missä uusia muuttujia λ i ja β j sanotaan Lagrangen kertoimiksi. j=1 47

Tiettyjen säännöllisyysehtojen vallitessa x on konveksin optimointiongelman (4.jotain) ratkaisu, jos ja vain jos se toteuttaa Karush-Kuhn-Tucker-ehdot (KKT): L(x; λ, β) = 0 (10) p i (x ) 0 kun i = 1,..., m (11) q j (x ) = 0 kun j = 1,..., n (12) λ i 0 kun i = 1,..., m (13) λ i p i (x ) = 0 kun i = 1,..., m (14) missä ehdon (1) gradientti on muuttujien x suhteen. Ei-konvekseille ongelmille KKT-ehdot ovat kohtuullisten säännöllisyysehtojen vallitessa välttämättömät, mutta eivät riittävät. 48

Ongelman duaalifunktio on g: R m R n R { }, missä g(λ, β) = inf L(x; λ, β) x R d = inf x R d f(x) + m λ i p i (x) + n β j q j (x). Duaalifunktio on konkaavi, vaikkei primaali olisikaan konveksi. Määrittelemme nyt duaaliongelman: Optimointiongelma 4.4: muuttujat λ R m, β R n maksimoi g(λ, β) j=1 rajoitteella λ i 0 kun i = 1,..., m. 49

Aina kun x toteuttaa rajoitteet ja λ i 0, pätee g(λ, β) f(x). Olkoot x ja (λ, β ) primaalin ja duaalin ratkaisut. Tiettyjen säännöllisyysehtojen vallitessa konveksille ongelmalle pätee vahva duaalisuus: ja lisäksi g(λ, β ) = f(x ), x = arg min x R d L(x; λ, β ) 50

Saamme siis erään reseptin konveksin optimointiongelman ratkaisemiseksi: 1. Muodosta Lagrangen funktio L. 2. Ratkaise alkuperaiset muuttujat Lagrangen kertoimien avulla: x (λ, β) = arg min x R d 3. Muodosta duaalifunktio: L(x; λ, β). g(λ, β) = L(x (λ, β); λ, β). 4. Maksimoi duaalifunktio; saat Lagrangen kertoimien optimiarvot (λ, β ). 5. Suora sijoitus antaa alkuperäisten muuttujien optimiarvon: x = x (λ, β ). Käytännössä tämä ei usein toimi näin suoraviivaisesti, vaan vaiheessa 2 saadaan joitain ehtoja, joista vaiheessa 5 alkuperäiset muuttujat voidaan päätellä. 51

Esimerkki 4.5: Halutaan minimoida f(x, y) = (x 3) 2 + (y 3) 2 rajoitteella p(x, y) 0, missä p(x, y) = 2x + 3y 5. Muodostetaan Lagrangen funktio L(x, y, λ) = (x 3) 2 + (y 3) 2 + λ(2x + 3y 5). Ratkaistaan x ja y Lagrangen kertoimen λ avulla: { x y L(x, y, λ) = 0 L(x, y, λ) = 0 { x = 3 λ y = 3 3 2 λ. 52

Muodostetaan duaalifunktio (3 λ, 3 32 ) λ, λ g(λ) = L Maksimoidaan duaalifunktio: g (λ) = 0 λ = 20 13 Sijoitetaan takaisin primaaliin: λ = 20 13 Saadaan optimiarvo f ( 19 13, 9 ) 13 = 13 4 λ2 + 10λ. g(λ) = 100 13. { x = 3 λ = 19 13 y = 3 3 2 λ = 9 13. = 100 13. 53

Kovan marginaalin tukivektorikone Edellä johdettu marginaalin maksimointi voidaan esittää seuraavasti: Optimointiongelma 4.6: Muuttujat w H, b R minimoi 1 2 w 2 rajoitteella 1 y i ( w, z i + b) 0 kaikilla 1 i N. Saatavaa algoritmia sanotaan kovan marginaalin tukivektorikoneeksi, koska marginaalirajoite on ehdoton. Näemme jatkossa myös pehmeän marginaalin tukivektorikoneen, joka sopii paremmin kohinaiselle datalle. Muodostetaan Lagrangen funktio: L(w, b, a) = 1 2 w 2 + a i (1 y i ( w, z i + b)), missä Lagrangen kertoimilla a 1,..., a N on rajoitteet a i 0 a i (1 y i ( w, z i + b)) = 0. 54

Eliminoidaan alkuperäiset muuttujat Lagrangen funktiosta L(w, b, a) = 1 2 w 2 + asettamalla derivaatat nollaan: a i (1 y i ( w, z i + b)) L w = 0 w = L b = 0 a i y i z i a i y i = 0. Sijoittamalla nämä L:ään saadaan duaalifunktio L(a) = a i 1 2 j=1 a i a j t i t j z i, z j. 55

Ottamalla huomioon z i = φ(x i ) saadaan duaalifunktio lausutuksi ydinfunktion avulla: L(a) = a i 1 2 j=1 Tehtävänä on maksimoida tämä rajoitteilla a i 0 a i y i = 0. a i a j t i t j k(x i, x j ). kun i = 1,..., N Tämä on (etumerkin vaihdon jälkeen) normaali neliöllinen optimointiongelma. Huomaa, että ydinfunktion semidefiniittisyysehdon takia L on konkaavi. 56

Neliölliseen optimointiin on runsaasti hyviä ohjelmistoja. Tässä kuitenkin muuttujien a i lukumäärä N on sama kuin otoskoko, eli jopa kymmeniä tuhansia. Ongelmia voi siis tulla. Tätä nimenomaista ongelmaa varten on kehitetty algoritmeja, jotka hyödyntävät ongelman erityispiirteitä ja ovat yleensä ilmaisjakelussa verkossa (kernel-machines.org). Viimeaikaisia konferenssiartikkeleita selaamalla saa jonkinlaisen käsityksen tarjonnasta. Silti suurten aineistojen käsittelemiseen voi mennä päiviä. 57

Oletetaan nyt, että duaaliongelman ratkaisu a on löydetty. Olkoot w ja b vastaava primaalin ratkaisut. Tarkastellaan rajoitteita: a i 0 y i ( w, z i + b) 1 0 a i (y i ( w, z i + b) 1) = 0. Koska w = N a iy i z i, piirrevektorit z i kontribuoi lopputulokseen vain jos a i 0. Näitä z i sanotaan tukivektoreiksi. Tukivektorilla z i pätee y i ( w, z i + b) = 1 eli se on tasan etäisyydellä 1 luokittelijan hypertasosta. Siis tukivektorit puristavat hypertason paikalleen niin, ettei se mahdu liikkumaan ilman että jokin tukivektori tunkeutuisi yksikkömarginaalin sisäpuolelle. Tyypillisesti tukivektoreita on vain vähäinen osa syötteistä. 58

Kun saadaan uusi x X, malli ennustaa sen luokaksi y = sign( w, φ(x) + b) ( N ) = sign a i y i z i, φ(x) + b ( ) = sign a i y i k(x i, x) + b. i S missä S = { i a i 0 } on tukivektorien indeksijoukko. Arvon b laskemiseksi todetaan, että jos a i 0 niin y i j S a j y j k(x j, x i ) + b = 1. Tästä saadaan b valitsemalla mitkä tahansa x i ja y i, joilla a i 0. 59

Numeerisesti vakaampaa on kertoa y i j S a j y j k(x j, x i ) + b = 1 puolittain luvulla y i ja ottaa huomioon yi 2 = 1. Summaamalla yli joukon S saadaan b = 1 ti y j a j k(x j, x i ). S i S j S 60

Pehmeän marginaalin tukivektorikone Riittävän rikkaassa piirreavaruudessa melkein mikä tahansa data on lineaarisesti erottuvaa. Tämä ei tarkoita, että oppimisvirhe kannattaisi aina painaa nollaan, sillä ylisovittamisen vaara on ilmeinen. Olkoon f(x) = w, φ(x) + b funktio, jota malli käyttää luokitukseen. Kovan marginaalin tukivektorikoneen voidaan tulkita minimoivan virhefunktiota { 0 jos yf(x) 1 E (y, f(x)) = muuten. Pehmeän marginaalin tukivektorikoneen virhefunktiona on { 0 jos yf(x) 1 E hinge (y, f(x)) = 1 yf(x) muuten. Siis virhefunktio alkaa kasvaa lineaarisesti, kun marginaali putoaa alle sallitun. Tämä voidaan kirjoittaa muotoon E hinge (y, f(x)) = max {0,1 yf(x) }. 61

Virhefunktiota E hinge (y i, f(x i )) ei sellaisenaan ole mukava käsitellä numeerisessa optimoinnissa, koska se ei ole jatkuvasti derivoituva. Otamme käyttöön apumuuttujat ξ i, joiden intuitiivinen tulkinta on ξ i = E hinge (y i, f(x i )). Minimoimme siis funktiota ξ i, joka on uusien muuttujien suhteen lineaarinen. Haluttu muuttujien tulkinta saadaan aikaan rajoitteilla ξ i 0 ξ i 1 y i f(x i ). Koska ξ i on minimoitavana, saadaan haluttu tulos ξ i = max {0,1 y i f(x i ) }. 62

Koska virhefunktiossa E hinge on tavoitemarginaaliksi kiinnitetty 1, myös funktiota f on jollain lailla rajoitettava. Muuten funktion f kertominen positiivisella vakiolla muuttaisi virhefunktiota, mutta jättäisi mallin ennusteet ennalleen, mikä ei olisi mielekästä. Teemme tämän säännöllistämällä, jolloin optimointiongelmasta tulee lopulta samankaltainen kuin kovan marginaalin tapauksessa. Minimoimme siis funktiota C ξ i + 1 2 w 2, i=i missä C > 0 on vakio. Käytännössä C määrätään ristiinvalidoinnilla. Suuri C saa mallin ylisovittamaan, pieni C alisovittamaan. Rajalla C saadaan kovan marginaalin tukivektorikone. Rajalla C 0 saadaan datasta riippumatta aina ulos pelkkää nollaa. 63

Ongelma tulee muotoon Optimointiongelma 4.7: Muuttujat w H, b R, ξ R N minimoi C ξ i + 1 2 w 2 i=i rajoitteilla 1 y i ( w, z i + b) ξ i 0 kaikilla 1 i N ξ i 0 kaikilla 1 i N. Lagrangen funktio on L(w, b, ξ; a, µ) = C ξ i + 1 2 w 2 µ i ξ i + i=i a i (1 y i ( w, z i + b) ξ i ), missä a i 0 ja µ i 0 ovat Lagrangen kertoimet. 64

Eliminoidaan alkuperäiset muuttujat duaalin muodostamiseksi: L w = 0 w = L b = 0 a i y i z i a i y i = 0 L ξ i = 0 C a i µ i = 0. Koska a i 0 ja ξ i 0, viimeinen ehto implikoi 0 a i C. 65

Sijoittamalla edellisen kalvon tulokset Lagrangen funktioon saadaan duaalifunktio L(a) = a i 1 a i a j y i y j k(x i, x j ), 2 j=1 missä otimme ydinfunktion käyttöön kuten kovan marginaalin tapauksessa. Muuttujat µ i eliminoituivat. Rajoitteet ovat nyt 0 a i C a i y i = 0. 66

Duaalin numeerista ratkaisemista ja parametrin b laskemista koskee sama kuin kovan marginaalin tapauksessa. Oleellisin ero kovan marginaalin tapaukseen on laatikkorajoite 0 a i C. Kovalla marginaalilla rajoite oli vain 0 a i. Intuitiivisesti laatikkorajoite estää mitään yhtä piirrevektoria saamasta liian suurta painoa. Kovan marginaalin tapauksessa jos jokin piirrevektori z i olisi jäämässä marginaalin sisään, sen painoa a i ollaan valmiit kasvattamaan mielivaltaisen paljon, jotta hypertaso saadaan riittävälle etäisyydelle. 67

Kuten kovan marginaalin tapauksessa, sanomme että z i on tukivektori, jos a i 0. Primaalin KKT-ehdoista saadaan tukivektorille z i y i ( w, z i + b) = 1 ξ i 1, eli tavoitemarginaali 1 ei ainakaan ylity. Jos a i < C, niin µ i > 0, jolloin edelleen KKT-ehdosta µ i ξ i = 0 seuraa ξ i = 0 eli z i saa marginaalin tasan 1. Nillä tukivektoreilla z i, joilla marginaali on aidosti pienempi kuin 1, pätee a i = C. Jos ξ i > 1, niin z i saa negatiivisen marginaalin eli tulee väärin luokitelluksi. 68

ν-tukivektorikone Käytännössä pehmeän marginaalin tukivektorikoneen käyttöä hankaloittaa, että vakion C arvolla ei ole mitään intuitiivista merkitystä. Tätä varten ν-tukivektorikoneessa otetaan käyttöön intuitiivisempi parametrisointi. Valitaan 0 < ν < 1 ja otetaan lähtökohdaksi Optimointiongelma 4.8: Muuttujat w H, b R, ξ R N, ρ R minimoi C N ξ i + 1 2 w 2 Cνρ i=i rajoitteilla ρ y i ( w, z i + b) ξ i 0 kaikilla 1 i N ρ 0 ξ i 0 kaikilla 1 i N. Olemme siis ottaneet marginaalin ρ mukaan optimoitavaksi muuttujaksi sen sijaan, että se olisi kiinteästi 1. 69

Samaan tapaan kuin edellä saadaan duaaliongelma Optimointiongelma 4.9: maksimoi 1 2 a i a j y i y j k(x i, x j ) i=i j=1 rajoitteilla 0 a i C/N kaikilla 1 i N a i y i = 0 a i Cν. Nyt huomataan, että vakion C muuttaminen arvoon C = αc muuttaisi ratkaisussa a i -muuttujia tekijällä α ja kohdefunktio arvoa tekijällä α 2, mutta ei muuttaisi luokittelijaa. Siis parametrin C valinnalla ei ole väliä. Yksinkertaisuuden vuoksi valitsemme C = 1. 70

Valinnan C = 1 jälkeen rajoitteet ovat 0 a i 1/N a i y i = 0 a i ν. Tämä on samanlainen laatikkorajoite kuin alkuperäisessä pehmeän marginaalin tukivektorikoneessa. Jos y i ( w, z i + b) < ρ, sanomme että vektori z i on marginaalivirhe. Tällöin ξ i > 0 ja a i = 1/N analogisesti pehmeän marginaalin tukivektorikoneen kanssa. Katsomalla hieman tarkemmin rajoitteita ja niiden suhdetta primaaliin voidaan osoittaa, että marginaalivirheitä voi olla korkeintaan νn kappaletta. Siis parametri ν voidaan asettaa vastaamaan sopivaksi katsottua marginaalivirheiden osuutta. 71

Mitä jäi käsittelemättä: tukivektorikoneen ja ydinten sovellukset regressioon, PCA:han, moniluokkaiseen luokitteluun, yksiluokkaiseen luokitteluun,... ydinfunktiot verkoille, teksteille,... tukivektorikoneen yleistysvirheen matemaattinen analyysi optimointialgoritmit. Lisämateriaalia: J. Shawe-Taylor ja N. Cristianini: Kernel Methods for Pattern Analysis. paljon ydinkonstruktioita, ajantasainen teoriakatsaus S. Boyd ja L. Vandenberghe: Convex Optimization. eräs hyvä katsaus optimointiteoriaan kernel-machines.org: artikkeleita, koodia, dataa 72