Support -vektor maskine - Support-vector machine

I machine learning , support-vector maskiner ( SVMs , også støtte-vektor-netværk ) er overvågede læring modeller med tilhørende læring algoritmer , der analyserer data til klassificering og regressionsanalyse . Udviklet på AT&T Bell Laboratories af Vladimir Vapnik med kolleger (Boser et al., 1992, Guyon et al., 1993, Vapnik et al., 1997) SVM'er er en af ​​de mest robuste forudsigelsesmetoder, der er baseret på statistiske læringsrammer eller VC teori foreslået af Vapnik (1982, 1995) og Chervonenkis (1974). I betragtning af et sæt træningseksempler, der hver især er markeret som tilhørende en af ​​to kategorier, bygger en SVM-træningsalgoritme en model, der tildeler nye eksempler til den ene eller den anden kategori, hvilket gør den til en ikke- sandsynlig binær lineær klassifikator (selvom metoder som Platt skalering findes for at bruge SVM i en sandsynlighedsindstilling). SVM kortlægger træningseksempler til punkter i rummet for at maksimere bredden af ​​afstanden mellem de to kategorier. Nye eksempler kortlægges derefter i det samme rum og forudsiges at tilhøre en kategori baseret på hvilken side af hullet de falder.

Ud over at udføre lineær klassificering , kan SVMs effektivt udføre en ikke-lineær klassificering ved hjælp af hvad der kaldes kerne trick , implicit kortlægge deres input i høj-dimensionelle funktion rum.

Når data er umærket, er overvåget læring ikke mulig, og der kræves en uovervåget indlæringsmetode , som forsøger at finde en naturlig klynge af data til grupper og derefter kortlægge nye data til disse dannede grupper. Den støtte-vektor clustering algoritme, skabt af Hava Siegelmann og Vladimir Vapnik gælder statistikkerne for support vektorer, der er udviklet i bæreren vektor maskiner algoritme, til at kategorisere umærkede data, og er en af de mest udbredte klyngedannelse algoritmer i industrielle anvendelser.

Motivering

Image
H 1 adskiller ikke klasserne. H 2 gør, men kun med en lille margin. H 3 adskiller dem med den maksimale margin.

Klassificering af data er en almindelig opgave inden for maskinlæring . Antag, at nogle givne datapunkter hver især tilhører en af ​​to klasser, og målet er at bestemme, hvilken klasse et nyt datapunkt vil være i. I tilfælde af understøttelsesvektormaskiner ses et datapunkt som en -dimensionel vektor (en liste over tal), og vi vil vide, om vi kan adskille sådanne punkter med et -dimensionalt hyperplan . Dette kaldes en lineær klassifikator . Der er mange hyperplaner, der kan klassificere dataene. Et rimeligt valg som det bedste hyperplan er det, der repræsenterer den største adskillelse eller margin mellem de to klasser. Så vi vælger hyperplanet, så afstanden fra det til det nærmeste datapunkt på hver side maksimeres. Hvis der findes et sådant hyperplan, er det kendt som hypermargen for maksimalmargen, og den lineære klassifikator, det definerer, er kendt som en klassifikator for maksimalmargen ; eller ækvivalent, perceptronen for optimal stabilitet .

Definition

Mere formelt konstruerer en understøttelsesvektormaskine et hyperplan eller et sæt hyperplaner i et høj- eller uendeligt dimensionelt rum, som kan bruges til klassificering , regression eller andre opgaver som detektion af ekstreme højder. Intuitivt opnås en god adskillelse ved hjælp af det hyperplan, der har den største afstand til det nærmeste træningsdatapunkt i enhver klasse (såkaldt funktionsmargen), da jo større marginen er, jo lavere er generaliseringsfejlen i klassifikatoren.

Image
Kernemaskine

Mens det oprindelige problem kan angives i et endeligt-dimensionelt rum, sker det ofte, at de sæt, der skal diskriminere, ikke er lineært adskillelige i dette rum. Af denne grund blev det foreslået, at det oprindelige endelige-dimensionelle rum blev kortlagt til et meget højere-dimensionelt rum, formentlig at gøre adskillelsen lettere i dette rum. For at holde beregningsbelastningen rimelig er de kortlægninger, der bruges af SVM -skemaer, designet til at sikre, at prikprodukter af par inputdatavektorer let kan beregnes med hensyn til variablerne i det originale rum ved at definere dem i form af en valgt kernefunktion der passer til problemet. Hyperplanerne i det højere dimensionelle rum er defineret som det sæt af punkter, hvis prikprodukt med en vektor i dette rum er konstant, hvor et sådant sæt vektorer er et ortogonalt (og dermed minimalt) sæt af vektorer, der definerer et hyperplan. De vektorer, der definerer hyperplanerne, kan vælges til at være lineære kombinationer med parametre for billeder af funktionsvektorer, der forekommer i databasen. Med dette valg af et hyperplan er punkterne i funktionsrummet, der er kortlagt til hyperplanet, defineret af forholdet Bemærk, at hvis det bliver lille, når det vokser længere væk fra , måler hvert udtryk i summen graden af ​​nærhed af testpunktet til det tilsvarende databasepunkt . På denne måde kan summen af ​​kerner ovenfor bruges til at måle den relative nærhed af hvert testpunkt til datapunkterne, der stammer fra det ene eller det andet sæt, der skal diskrimineres. Bemærk det faktum, at det sæt punkter, der er kortlagt til et hvilket som helst hyperplan, kan være ret krøllet som følge heraf, hvilket tillader meget mere kompleks diskrimination mellem sæt, der slet ikke er konvekse i det oprindelige rum.

Ansøgninger

SVM'er kan bruges til at løse forskellige virkelige problemer:

  • SVM'er er nyttige i tekst- og hypertekstkategorisering , da deres anvendelse betydeligt kan reducere behovet for mærkede træningsforekomster i både standard induktive og transduktive indstillinger. Nogle metoder til lav semantisk analyse er baseret på understøttelsesvektormaskiner.
  • Klassificering af billeder kan også udføres ved hjælp af SVM'er. Eksperimentelle resultater viser, at SVM'er opnår betydeligt højere søgenøjagtighed end traditionelle forespørgselsforfininger efter kun tre til fire runder med relevansfeedback. Dette gælder også for billedsegmenteringssystemer , herunder dem, der bruger en modificeret version SVM, der bruger den privilegerede tilgang som foreslået af Vapnik.
  • Klassificering af satellitdata som SAR -data ved hjælp af overvåget SVM.
  • Håndskrevne tegn kan genkendes ved hjælp af SVM.
  • SVM -algoritmen er blevet bredt anvendt i de biologiske og andre videnskaber. De er blevet brugt til at klassificere proteiner med op til 90% af forbindelserne klassificeret korrekt. Permutationstest baseret på SVM -vægte er blevet foreslået som en mekanisme til fortolkning af SVM -modeller. Support-vektor maskine vægte er også blevet brugt til at fortolke SVM modeller tidligere. Posthoc-fortolkning af understøttelsesvektormaskinemodeller for at identificere funktioner, som modellen bruger til at forudsige, er et relativt nyt forskningsområde med særlig betydning inden for de biologiske videnskaber.

Historie

Den originale SVM -algoritme blev opfundet af Vladimir N. Vapnik og Alexey Ya. Chervonenkis i 1963. I 1992 foreslog Bernhard Boser, Isabelle Guyon og Vladimir Vapnik en måde at skabe ikke-lineære klassifikatorer ved at anvende kernetricket på hyperplan med maksimalmargin. Den "bløde margin" inkarnation, som det er almindeligt anvendte softwarepakker, blev foreslået af Corinna Cortes og Vapnik i 1993 og udgivet i 1995.

Lineær SVM

Image
Maksimalmargin hyperplan og margener for en SVM trænet med prøver fra to klasser. Prøver på margenen kaldes støttevektorer.

Vi får et træningsdatasæt med formularens punkter

hvor enten er 1 eller −1, der hver angiver den klasse, som punktet tilhører. Hver er en -dimensionel reel vektor. Vi ønsker at finde det "maksimalmargin-hyperplan", der deler den gruppe af punkter, for hvilke fra den gruppe af punkter , som er defineret således, at afstanden mellem hyperplanet og det nærmeste punkt fra hver gruppe maksimeres.

Ethvert hyperplan kan skrives som et sæt punkter, der tilfredsstiller

hvor er den (ikke nødvendigvis normaliserede) normale vektor til hyperplanet. Dette ligner meget Hesse normal form , bortset fra at det ikke nødvendigvis er en enhedsvektor. Parameteren bestemmer forskydningen af ​​hyperplanet fra oprindelsen langs den normale vektor .

Hård margin

Hvis træningsdataene er lineært adskillelige , kan vi vælge to parallelle hyperplaner, der adskiller de to dataklasser, så afstanden mellem dem er så stor som muligt. Regionen afgrænset af disse to hyperplaner kaldes "margen", og maksimalmargin-hyperplanet er det hyperplan, der ligger halvvejs imellem dem. Med et normaliseret eller standardiseret datasæt kan disse hyperplaner beskrives ved ligningerne

(alt på eller over denne grænse er af en klasse, med etiket 1)

og

(alt på eller under denne grænse er af den anden klasse med etiket −1).

Geometrisk er afstanden mellem disse to hyperplaner , så for at maksimere afstanden mellem flyene vil vi minimere . Afstanden beregnes ved hjælp af afstanden fra et punkt til en planligning. Vi skal også forhindre datapunkter i at falde ind i margenen, vi tilføjer følgende begrænsning: for hver af dem

, hvis ,

eller

, hvis .

Disse begrænsninger angiver, at hvert datapunkt skal ligge på den korrekte side af margenen.

Dette kan omskrives som

Vi kan sammensætte dette for at få optimeringsproblemet:

"Minimer emne til for ."

Den og som løser dette problem bestemmer vores klassifikator, hvor er tegnfunktionen .

En vigtig konsekvens af denne geometriske beskrivelse er, at max-margin-hyperplanet er fuldstændigt bestemt af dem, der ligger nærmest det. Disse kaldes støttevektorer .

Soft-margin

For at udvide SVM til tilfælde, hvor dataene ikke er lineært adskillelige, er funktionen til tab af hængsler nyttig

Bemærk, at det er i -th -målet (dvs. i dette tilfælde 1 eller −1), og er i -th -output.

Denne funktion er nul, hvis begrænsningen i (1) er opfyldt, med andre ord, hvis den ligger på den korrekte side af margenen. For data på den forkerte side af margenen er funktionens værdi proportional med afstanden fra margenen.

Målet med optimeringen er så at minimere

hvor parameteren bestemmer afvejningen mellem at øge marginalstørrelsen og sikre, at liggen ligger på den korrekte side af margenen. For tilstrækkeligt store værdier af vil den således opføre sig på samme måde som hard-margin SVM, hvis inputdataene er lineært klassificerbare, men stadig vil lære, om en klassificeringsregel er levedygtig eller ej. (Denne parameter kaldes også C, f.eks. I LIBSVM .)

Ikke -lineær klassificering

Image
Kernemaskine

Den originale maksimalmargin-hyperplanalgoritme, som Vapnik foreslog i 1963, konstruerede en lineær klassifikator . Men i 1992, Bernhard Boser , Isabelle Guyon og Vladimir Vapnik foreslog en måde at skabe ikke-lineære klassificører ved at anvende den kerne trick (oprindeligt foreslået af Aizerman et al.) Til maksimum-margin hyperplaner. Den resulterende algoritme er formelt ens, bortset fra at hvert punktprodukt erstattes af en ikke -lineær kernefunktion . Dette gør det muligt for algoritmen at passe til maksimalmargin-hyperplanet i et transformeret funktionsrum . Transformationen kan være ikke-lineær, og det transformerede rum er højdimensionelt; Selvom klassifikatoren er et hyperplan i det transformerede funktionsrum, kan det være ikke -lineært i det originale inputrum.

Det er bemærkelsesværdigt, at arbejde i et højere-dimensionelt funktionsrum øger generaliseringsfejlen i understøttelsesvektormaskiner, selvom algoritmen stadig er god, hvis den får nok prøver.

Nogle almindelige kerner omfatter:

  • Polynomial (homogen) : .
  • Polynomial (inhomogen): .
  • Gaussisk radial basisfunktion : for . Nogle gange parametreret ved hjælp .
  • Hyperbolsk tangent : for nogle (ikke alle) og .

Kernen er relateret til transformationen ved hjælp af ligningen . Værdien w er også i det transformerede rum, med . Dot produkter med w for klassificering kan igen beregnes af kerne trick, dvs. .

Beregning af SVM -klassifikatoren

Beregning af (soft-margin) SVM-klassifikatoren svarer til at minimere et udtryk for formularen

Vi fokuserer på soft-margin-klassifikatoren, da, som nævnt ovenfor, vælger en tilstrækkelig lille værdi til giver hard-margin-klassifikatoren til lineært klassificerbare inputdata. Den klassiske tilgang, der indebærer at reducere (2) til et kvadratisk programmeringsproblem , er beskrevet detaljeret nedenfor. Derefter vil nyere tilgange som nedstigning i undergradient og koordinering af nedstigning blive diskuteret.

Primal

Minimering (2) kan omskrives som et begrænset optimeringsproblem med en differentierbar objektiv funktion på følgende måde.

For hver introducerer vi en variabel . Bemærk, at det er det mindste ikke -negative tal, der tilfredsstiller

Således kan vi omskrive optimeringsproblemet som følger

Dette kaldes det primære problem.

Dobbelt

Ved at løse for Lagrangian dual af ovenstående problem opnår man det forenklede problem

Dette kaldes det dobbelte problem. Da problemet med dobbeltmaksimering er en kvadratisk funktion af subjektet for lineære begrænsninger, er det effektivt løseligt ved kvadratiske programmeringsalgoritmer .

Her defineres variablerne således, at

.

Desuden præcis når den ligger på den korrekte side af margenen, og når den ligger på margenens grænse. Det følger, der kan skrives som en lineær kombination af understøttelsesvektorerne.

Forskydningen,, kan inddrives ved at finde en på margenens grænse og løse

(Bemærk, at siden .)

Kernel trick

Image
Et træningseksempel på SVM med kerne givet af φ (( a , b )) = ( a , b , a 2 + b 2 )

Antag nu, at vi gerne vil lære en ikke -lineær klassificeringsregel, der svarer til en lineær klassificeringsregel for de transformerede datapunkter. Desuden får vi en kernefunktion, der opfylder .

Vi ved, at klassificeringsvektoren i det transformerede rum opfylder

hvor, de opnås ved at løse optimeringsproblemet

Koefficienterne kan løses for at bruge kvadratisk programmering, som før. Igen kan vi finde nogle indeks således at , så ligger på grænsen af margenen i den transformerede rum, og derefter løse

Endelig,

Moderne metoder

Nylige algoritmer til at finde SVM-klassifikatoren inkluderer nedgradering af undergradient og koordinering af nedstigning. Begge teknikker har vist sig at give betydelige fordele i forhold til den traditionelle tilgang, når der skal håndteres store, sparsomme datasæt-metoder til undergradient er særlig effektive, når der er mange træningseksempler, og koordinerer nedstigning, når dimensionen af ​​funktionsrummet er høj.

Undergradient nedstigning

Undergradient-nedstigningsalgoritmer til SVM fungerer direkte med udtrykket

Bemærk, at det er en konveks funktion af og . Som sådan kan traditionelle gradient-nedstigningsmetoder (eller SGD ) tilpasses, hvor der i stedet for at tage et skridt i retning af funktionens gradient tages et skridt i retning af en vektor valgt fra funktionens undergradient . Denne tilgang har den fordel, at antallet af iterationer ikke skaleres med antallet af datapunkter for visse implementeringer .

Koordinere nedstigning

Koordinere nedstigningsalgoritmer til SVM -arbejdet ud fra det dobbelte problem

For hver , iterativt, justeres koefficienten i retning af . Derefter projiceres den resulterende vektor af koefficienter på den nærmeste vektor af koefficienter, der opfylder de givne begrænsninger. (Normalt bruges euklidiske afstande.) Processen gentages derefter, indtil der opnås en næsten optimal vektor af koefficienter. Den resulterende algoritme er ekstremt hurtig i praksis, selvom få ydelsesgarantier er bevist.

Empirisk risikominimering

Softvektorstøttevektormaskinen beskrevet ovenfor er et eksempel på en empirisk risikominimeringsalgoritme (ERM) for hængselstab . Set på denne måde tilhører understøttelsesvektormaskiner en naturlig klasse af algoritmer til statistisk inferens, og mange af dens unikke egenskaber skyldes adfærden ved hængselstabet. Dette perspektiv kan give yderligere indsigt i, hvordan og hvorfor SVM'er fungerer, og give os mulighed for bedre at analysere deres statistiske egenskaber.

Risikominimering

I supervised learning får man et sæt træningseksempler med etiketter og ønsker at forudsige givet . For at gøre dette én danner en hypotese , således, at er en "god" tilnærmelse af . En "god" tilnærmelse er normalt defineret ved hjælp af en tabsfunktion , som kendetegner hvor slemt er som en forudsigelse af . Vi vil så gerne vælge en hypotese, der minimerer den forventede risiko :

I de fleste tilfælde kender vi ikke den fælles fordeling af direkte. I disse tilfælde er en fælles strategi at vælge den hypotese, der minimerer den empiriske risiko:

Under visse forudsætninger om sekvensen af ​​tilfældige variabler (f.eks. At de genereres ved en endelig Markov -proces), hvis det sæt hypoteser, der overvejes, er lille nok, vil minimeren af ​​den empiriske risiko tæt tilnærme minimeren af ​​den forventede risiko som vokser sig stor. Denne tilgang kaldes empirisk risikominimering eller ERM.

Regularisering og stabilitet

For at minimeringsproblemet skal have en veldefineret løsning, er vi nødt til at lægge begrænsninger på det sæt hypoteser, der overvejes. Hvis er et normeret rum (som det er tilfældet for SVM), er en særlig effektiv teknik kun at overveje de hypoteser, hvortil . Dette svarer til at pålægge en reguleringsstraf og løse det nye optimeringsproblem

Denne fremgangsmåde kaldes Tikhonov -regulering .

Mere generelt kan være et mål for kompleksiteten af ​​hypotesen , så enklere hypoteser foretrækkes.

SVM og hængselstabet

Husk på, at (soft-margin) SVM-klassifikatoren er valgt for at minimere følgende udtryk:

I lyset af ovenstående diskussion ser vi, at SVM -teknikken svarer til empirisk risikominimering med Tikhonov -regulering, hvor tabsfunktionen i dette tilfælde er hængseltabet

Fra dette perspektiv er SVM tæt forbundet med andre grundlæggende klassificeringsalgoritmer, såsom regulerede mindste kvadrater og logistisk regression . Forskellen mellem de tre ligger i valget af tabsfunktion: legaliseret mindste kvadraters udgør empirisk risikominimering med den firkantede-tab , ; logistisk regression anvender log-tab ,

Målfunktioner

Forskellen mellem hængselstabet og disse andre tabsfunktioner angives bedst med hensyn til målfunktioner - den funktion, der minimerer forventet risiko for et givet par tilfældige variabler .

Lad især betegne betinget af, at begivenheden, at . I klassifikationsindstillingen har vi:

Den optimale klassificering er derfor:

For det firkantede tab, target funktion er den betingede forventning funktion, ; For den logistiske tab, det er logit-funktionen, . Selvom begge disse målfunktioner giver den korrekte klassifikator, giver de os mere information, end vi har brug for. Faktisk giver de os nok oplysninger til fuldstændigt at beskrive fordelingen af .

På den anden side kan man kontrollere, at målfunktionen for hængsletabet er præcis . Således vil SVM -klassifikatoren konvergere til den enkleste funktion (i form af ), der korrekt klassificerer dataene , i et tilstrækkeligt rigt hypoteserum - eller tilsvarende for en passende valgt kerne . Dette udvider den geometriske fortolkning af SVM-for lineær klassificering minimeres den empiriske risiko af enhver funktion, hvis margener ligger mellem understøttelsesvektorerne, og den enkleste af disse er max-margin klassifikatoren.

Ejendomme

SVM'er tilhører en familie af generaliserede lineære klassifikatorer og kan tolkes som en forlængelse af perceptronen . De kan også betragtes som et særligt tilfælde af Tikhonov -regulering . En særlig egenskab er, at de samtidig minimerer den empiriske klassifikationsfejl og maksimerer den geometriske margen ; dermed de er også kendt som maksimale margin klassificører .

En sammenligning af SVM med andre klassifikatorer er foretaget af Meyer, Leisch og Hornik.

Valg af parameter

Effektiviteten af ​​SVM afhænger af valget af kerne, kernens parametre og parameteren soft margin . Et almindeligt valg er en gaussisk kerne, som har en enkelt parameter . Den bedste kombination af og vælges ofte ved en gittersøgning med eksponentielt voksende sekvenser af og for eksempel ; . Typisk kontrolleres hver kombination af parametervalg ved hjælp af krydsvalidering , og parametrene med den bedste krydsvalideringsnøjagtighed vælges. Alternativt kan nyere arbejde med bayesisk optimering bruges til at vælge og ofte kræve evaluering af langt færre parameterkombinationer end gittersøgning. Den endelige model, der bruges til test og til klassificering af nye data, trænes derefter i hele træningssættet ved hjælp af de valgte parametre.

Problemer

Potentielle ulemper ved SVM omfatter følgende aspekter:

  • Kræver fuld mærkning af inputdata
  • Ukalibrerede klassemedlemskabssandsynligheder —SVM stammer fra Vapniks teori, der undgår at estimere sandsynligheder på endelige data
  • SVM er kun direkte anvendelig til opgaver i to klasser. Derfor skal algoritmer, der reducerer multi-class opgaven til flere binære problemer, anvendes; se SVM- sektionen i flere klasser .
  • Parametre for en løst model er svære at fortolke.

Udvidelser

Support-vector clustering (SVC)

SVC er en lignende metode, der også bygger på kernefunktioner, men er egnet til uovervåget læring. Det betragtes som en grundlæggende metode inden for datavidenskab .

SVM i flere klasser

Multiclass SVM sigter mod at tildele etiketter til instanser ved hjælp af understøttelsesvektormaskiner, hvor etiketterne er trukket fra et begrænset sæt af flere elementer.

Den dominerende tilgang til at gøre det er at reducere det enkelt multiklasse problem til flere binære klassificeringsproblemer . Almindelige metoder til en sådan reduktion omfatter:

  • Bygger binære klassifikatorer, der skelner mellem en af ​​etiketterne og resten ( en-mod-alle ) eller mellem hvert par af klasser ( en-mod-en ). Klassificering af nye forekomster i en-mod-alle-sagen udføres ved en strategi for vinder-tager-alt, hvor klassifikatoren med funktionen med den højeste output tildeler klassen (det er vigtigt, at outputfunktionerne kalibreres for at producere sammenlignelige scores ). For en-mod-en-fremgangsmåden foretages klassificering ved en maks-vinder-afstemningsstrategi, hvor hver klassifikator tildeler instansen til en af ​​de to klasser, derefter øges afstemningen til den tildelte klasse med en stemme, og til sidst klasse med flest stemmer afgør instansklassificeringen.
  • Rettet acyklisk graf SVM (DAGSVM)
  • Fejlkorrigerende outputkoder

Crammer og Singer foreslog en SVM -metode i flere klasser, der kaster multiklassificeringsproblemet ind i et enkelt optimeringsproblem i stedet for at dekomponere det i flere binære klassificeringsproblemer. Se også Lee, Lin og Wahba og Van den Burg og Groenen.

Transduktive support-vektormaskiner

Transduktive supportvektormaskiner udvider SVM'er ved, at de også kunne behandle delvist mærkede data i semi-superviseret læring ved at følge principperne for transduktion . Her får eleven udover træningssættet også et sæt

af testeksempler, der skal klassificeres. Formelt defineres en transduktiv støttevektormaskine af følgende primaloptimeringsproblem:

Minimer (in )

underlagt (for enhver og enhver )

og

Transduktive støttevektormaskiner blev introduceret af Vladimir N. Vapnik i 1998.

Struktureret SVM

SVM'er er blevet generaliseret til strukturerede SVM'er , hvor etiketrummet er struktureret og muligvis uendeligt stort.

Regression

Image
Support-vektor regression (forudsigelse) med forskellige tærskler ε . Når ε stiger, bliver forudsigelsen mindre følsom over for fejl.

En version af SVM til regression blev foreslået i 1996 af Vladimir N. Vapnik , Harris Drucker, Christopher JC Burges, Linda Kaufman og Alexander J. Smola. Denne metode kaldes support-vector regression (SVR). Modellen produceret ved støtte-vektor klassificering (som beskrevet ovenfor) afhænger kun af et undersæt af træningsdata, fordi omkostningsfunktionen til at bygge modellen ikke er ligeglad med træningspunkter, der ligger ud over margenen. Analogt afhænger modellen produceret af SVR kun af et undersæt af træningsdataene, fordi omkostningsfunktionen til at bygge modellen ignorerer alle træningsdata tæt på modelforudsigelsen. En anden SVM-version kendt som mindste-firkanter support-vektor maskine (LS-SVM) er blevet foreslået af Suykens og Vandewalle.

At træne den originale SVR betyder at løse

minimere
underlagt

hvor er en træningsprøve med målværdi . Det indre produkt plus aflytning er forudsigelsen for den pågældende prøve og er en gratis parameter, der fungerer som en tærskel: alle forudsigelser skal ligge inden for et område af de sande forudsigelser. Slap variabler tilføjes normalt til ovenstående for at tillade fejl og for at tillade tilnærmelse i tilfælde af, at ovenstående problem er umuligt.

Bayesiansk SVM

I 2011 blev det vist af Polson og Scott, at SVM indrømmer en bayesiansk fortolkning gennem teknikken til dataforstørrelse . I denne tilgang ses SVM som en grafisk model (hvor parametrene er forbundet via sandsynlighedsfordelinger). Denne udvidede visning tillader anvendelse af bayesiske teknikker til SVM'er, såsom fleksibel funktionsmodellering, automatisk hyperparameterindstilling og forudsigelig usikkerhedskvantificering . For nylig blev en skalerbar version af Bayesian SVM udviklet af Florian Wenzel , der muliggjorde anvendelse af Bayesian SVM'er på big data . Florian Wenzel udviklede to forskellige versioner, en variation inference (VI) ordning for Bayesian kernel support vector machine (SVM) og en stokastisk version (SVI) for den lineære Bayesian SVM.

Implementering

Parametrene for maksimalmargin-hyperplanet er afledt ved at løse optimeringen. Der findes flere specialiserede algoritmer til hurtigt at løse det kvadratiske programmeringsproblem (QP), der opstår fra SVM'er, mest afhængige af heuristik til at opdele problemet i mindre, mere håndterbare bidder.

En anden tilgang er at bruge en interiør -punkt metode, der bruger Newton -lignende iterationer til at finde en løsning på Karush -Kuhn -Tucker betingelserne for de primære og dobbelte problemer. I stedet for at løse en række nedbrudte problemer løser denne tilgang problemet helt og holdent. For at undgå at løse et lineært system, der involverer den store kernematrix, bruges der ofte en lav tilnærmelse til matrixen i kernetricket.

En anden almindelig metode er Platt's sekventielle minimal optimering (SMO) algoritme, der opdeler problemet i 2-dimensionelle delproblemer, der løses analytisk, hvilket eliminerer behovet for en numerisk optimeringsalgoritme og matrixlagring. Denne algoritme er konceptuelt enkel, let at implementere, generelt hurtigere og har bedre skaleringsegenskaber til vanskelige SVM -problemer.

Specialtilfældet med lineære understøttelsesvektormaskiner kan løses mere effektivt med den samme slags algoritmer, der bruges til at optimere sin nære fætter, logistisk regression ; denne klasse af algoritmer inkluderer nedgradering af sub-gradient (f.eks. PEGASOS) og koordinatnedstigning (f.eks. LIBLINEAR). LIBLINEAR har nogle attraktive træningstidsegenskaber. Hver konvergens-iteration tager tid lineær i den tid, det tager at læse togdataene, og iterationerne har også en Q-lineær konvergensegenskab , hvilket gør algoritmen ekstremt hurtig.

De generelle kernel SVM'er kan også løses mere effektivt ved hjælp af sub-gradient nedstigning (f.eks. P-packSVM), især når parallelisering er tilladt.

Kernel SVM'er er tilgængelige i mange værktøjer til maskinlæring , herunder LIBSVM , MATLAB , SAS , SVMlight, kernlab , scikit-learn , Shogun , Weka , Shark , JKernelMachines , OpenCV og andre.

Forbehandling af data (standardisering) anbefales stærkt for at forbedre klassificeringens nøjagtighed. Der er et par metoder til standardisering, såsom min-max, normalisering ved decimalskala, Z-score. Subtraktion af middelværdi og division efter varians for hver funktion bruges normalt til SVM.

Se også

Referencer

Yderligere læsning

eksterne links