Tugivektor-masin

Tugivektor-masinaid (TVM) [1] kasutatakse juhendatud masinõppes klassifikatsiooni ja regressiooni analüüsiks. Tugivektor vajab treenimiseks eelnevalt märgendatud treenimishulka ning treenitud mudel teeb oma ennustuse märgendamata andmetele olenevalt sellele, kummale poole treenitud hüpertasandit vektor jääb, kusjuures eraldava hüpertasandi kaugus lähimatest treeningandmetest võiks olla võrdne. Eristatakse kõva ja pehme äärega TVM-e: esimesel juhul eeldatakse, et treeningandmeid on võimalik lineaarselt hüpertasandiga eraldada, ja teisel juhul saab TVM-i treenida ka kattuvuse korral.

Tugivektor-masinad leiutasid Vladimir N. Vapnik ja Alexey Chervonenkis 1963. [1]

Tugivektor-masinaid on modifitseeritud, et need tegeleksid ka märgendamata andmete klasteranalüüsiga [2] ja tõenäosusjaotuste väljastamisega (Platti skaleerimine[3]). Samuti kasutatakse kernelitrikki olukorras, kus treeningandmeid ei ole võimalik lineaarselt eraldada, kuid leidub funktsioon treeningandmeid eraldava hüpertasandi kirjeldamiseks.

Tugivektor-masin kahedimensionaalsetel märgendatud andmetel


Lineaarne TVM

muuda

Antud on treeningandmed, mis koosnevad treeningolemi   ja sellele vastava märgendi   paaridest

 ,

kus   vastavalt selle märgendile. Iga   on reaalarvuline  -dimensionaalne vektor. TVM treenimise ülesanne on leida maksimaalse eraldatusega hüpertasand, mis eraldab punkte   punktidest  . Maksimaalse eraldatusega tähendab siin kohal, et hüpertasand on lähimatest vastandmärgenditega treeningolemitest võrdsel ja maksimaalsel kaugusel.

Eraldav hüpertasand koosneb punktidest  , mis rahuldavad võrrandit

 ,

kus   on hüpertasandi normaalvektor.

Kõva äärega TVM

muuda

Kui treeningandmed on lineaarselt eraldatavad, me võime valida kaks hüpertasandit, mis mõlemad eraldavad binaarse märgendusega andmed ning on sealjuures suurima võimaliku omavahelise kaugusega. Neid kaht hüpertasandit kirjeldavad kaks võrrandit:

  (kõik treeningolemid, mis on kas hüpertasandil või sellest kõrgemal, saavad ennustuseks märgendi 1),
  (kõik treeningolemid, mis on kas hüpertasandil või sellest madalamal, saavad ennustuseks märgendi -1).

Et kahe hüpertasandi kaugus peab olema maksimaalne ning seda kaugust kirjeldav võrrand on  [4], siis me peame minimeerima  .

Eelmised kaks võrratust võib ümber kirjutada kujule:

 ,

kus optimeerimisülesandeks jääb   minimeerimine eelnevast võrrandist sõltuvalt.

Siinkohal vajab märkimist, et tulemus   sõltub vaid lähimatest punktidest, mida kutsutaksegi tugivektoriteks.

Pehme äärega TVM

muuda

Et saaksime kasutada TVM-e juhul, kus treeningandmed ei ole lineaarselt eraldatavad ülekattuvuse tõttu, tutvustame hinge kaotusfunktsiooni

 , siis me peame minimeerima  . [5]

Kaotusfunktsiooni väärtus on 0 juhtudel, kus õpitakse ennustama õige märgendiga olemit. Kui aga olem on valel pool hüpertasandit, siis funktsiooni väärtus on proportsionaalne kaugusega sellest tasandist.

Me soovime minimeerida

 ,

kus parameeter   määrab ära, kui palju soovitakse karistada vale märgendi ennustamist ning kui tähtis on minimaalne  . Juhul kus   on väike, muutub minimeeritava funktsiooni teine liige tühiselt väikseks ning algoritm käitub nagu kõva äärega TVM.

Viited

muuda
  1. 1,0 1,1 Cortes, Corinna; Vapnik, Vladimir N. (1995). "Support-vector networks". Machine Learning. 20 (3): 273–297. DOI:10.1007/BF00994018.
  2. SVM paper - Cortes, Corinna; Vapnik, Vladimir N. (1995). "Support-vector networks". Machine Learning. 20 (3): 273–297. doi:10.1007/BF00994018.
  3. Platt, John (1999). "Probabilistic outputs for support vector machines and comparisons to regularized likelihood methods" (PDF). Advances in large margin classifiers. 10 (3): 61–74.
  4. "Why does the SVM margin is $\frac{2}{\-\mathbf{w}\-}$". Mathematics Stack Exchange.
  5. "A general formulation for support vector machines" (PDF). Gatsby computational neuroscience unit.