Tukivektorikone
Wikipedia
Tukivektorikone (engl. Support Vector Machine) on 1990-luvulla keksitty neuroverkkotyyppi [1], joka lähestyy aihepiiriä tilastollisen riskin minimoimisen näkökulmasta. Tukivektorikoneen mahdollinen hyöty on parempi yleistämiskyky verrattuna perinteisiin neuroverkkoihin. Yleistämiskyky tarkoittaa kykyä arvioida uutta tietoa, jota koneelle ei ole opetuksen aikana näytetty. Tukivektorikoneisiin perustuvat luokittelumenetelmät pystyvät käsittelemään korkeaulotteisia avaruuksia hyvin, koska luokittelija pystyy karsimaan epäoleellisen opetustiedon. Epäoleellisuus määritellään siten, että piste on sitä epäoleellisempi mitä kauempana se on tietyn luokan reuna-alueesta. Tukivektorikonetta voi käyttää sekä piirteiden luokitteluun että funktioiden arvioimiseen.
Sisällysluettelo |
[muokkaa] Tukivektoriluokittelija
Tukivektoriluokittelijan perusajatus on jakaa piirreavaruus kahteen tai useampaan luokkaan (avaruuden osajoukkoon). Tukivektorikoneen pitää opetuksen jälkeen osata arvioida luokka mille tahansa avaruuden pisteelle. Luokittelija suunnitellaan tietyn opetusaineiston perusteella, ja siksi sen hyvyys on riippuvainen opetusaineiston hyvyydestä. Samaan luokkaan kuuluvien pisteiden ei tarvitse muodostaa yhtenäisiä alueita, vaan ne voivat olla ripoteltuna mielivaltaisesti ympäri avaruutta. Suunnittelumenetelmä etsii opetusaineistosta ne vektorit, jotka määrittävät eri luokkien reuna-alueet. Kyseisiä vektoreita kutsutaan tukivektoreiksi. Opetuksen jälkeen sama tulos voitaisiin saavuttaa pelkästään tukivektoreiden perusteella, joten menetelmä osaa karsia epäoleellisen opetustiedon pois.
[muokkaa] Joustava marginaaliluokittelija
Joustava marginaaliluokittelija (C-SVM) on samankaltainen luokittelija kuin optimimarginaaliluokittelija, mutta sallii joidenkin pisteiden luokittelun menevän väärin. Tämä on käytännön kannalta haluttava asia, koska täydellinen luokittelu on usein mahdotonta ja oikein luokittelu suurella todennäköisyydellä on riittävää.
Joustava marginaaliluokittelija Rn-avaruudessa voidaan määrittää ratkaisemalla neliöllisen optimoinnin ongelma joka on muotoa
Minimoi

muuttujien , b ja γi suhteen kun reunaehdot ratkaisulle ovat


kaikilla arvoilla . Tämä ratkaisu on kuitenkin erikoistapaus euklidiselle Rn-avaruudelle, ja seuraava tehtävänasettelu perustuu ratkaisuun implisiittisessä piirreavaruudesta.
Monesti on piirrevaruus tuntematon, mutta siitä tunnetaan ydinfunktio joka kuvaa vektorit
ja
sitä vastaavaan implisiittiseen sisätuloavaruuteen ja laskee siellä sisätulon näille kahdelle vektorille. Kuvausfunktiota lähtöavaruudesta piirreavaruuteen ei kuitenkaan välttämättä tunneta, ja siksi kyseistä piirreavaruutta kutsutaan implisiittiseksi. Mercerin teorian perusteella voidaan tietää, että tietylle ydinfunktiolle K on olemassa tarkoitukseen sopiva sisätuloavaruus mikäli matriisi M on positiivisemidefiniitti ja K on symmetrinen funktio, kun
kaikille
. Luokittelu suoritetaan implisiittisessä piirreavaruudessa lineaarisesti, mutta lähtöavaruuden näkökulmasta on kyseessä epälineaarinen luokittelu. Käytännön kannalta Mercerin teoria mahdollistaa epälineaaristen luokittelijoiden rakentamisen intuitiivisella tavalla.
Tehtävän asettelussa minimoidaan kohdefunktio

vektorin suhteen, kun reunaehdot ovat


missä ja
.
Tämän jälkeen voidaan mielivaltaisen pisteen luokittelu implisiittisessä piirreavaruudessa laskea epäsuorasti vektorin
ja ydinfunktion K avulla kaavalla

Kun d > 0, piste kuuluu luokkaan + 1 ja muussa tapauksessa toiseen luokkaan − 1. Oleellista on erityisesti se, että mikäli αi > 0 on
tukivektori. Kaikki muut kuin tukivektorit voidaan jättää huomioimatta luokittelussa, koska niillä ei ole vaikutusta d:n arvoon.
[muokkaa] Ydinfunktiota
Yleisiä perusvalintoja ydinfunktioksi K ovat esimerkiksi polynomiaalinen ydinfunktio , kun p on positiivinen kokonaisluku, ja RBF-ydinfunktio
, kun σ > 0. Polynomiaalisesta ydinfunktiosta erottelee piirteet lineaarisesti lähtöavaruudessa kun taas RBF-ydinfunktio erottelee piirteet lineaarisesti tietyssä ääretönulotteisessa vektoriavaruudessa. Lähtöavaruuden näkökulmasta RBF-ydinfunktio erottelee piirteitä epälineaarisesti ja se on siten kykeneväinen erottelemaan tiettyjä luokkia mitä polynomiaalisella luokittelijalla ei pystyisi erottelemaan ollenkaan.
[muokkaa] Lähteet
^ C. Cortes, V. N. Vapnik, Support Vector Networks, Machine Learning, 1995. Volume 20, Number 3. pp. 273-297