Support Vector Machines. Johannes Ulén Handledare: Petter Strandmark

Relevanta dokument
Övning 7 Diffraktion och upplösning

Ge bara ett svar på varje fråga. Välj det svar som passar in bäst. Det är viktigt att du svarar på samtliga frågor.

Verksamhetsberättelse 2010 Uppsökande Verksamhet med Munhälsobedömning

Verksamhetsberättelse 2009

r+1 Uppvidinge \2:1 KOMMUN Kallelse/underrättelse Svar på skolinspektionens riktade tillsyn i Uppvidinge./. kornmun Dnr.

Analytisk mekanik för MMT, 5C1121 Tentamen, , kl

Tentamen i matematisk statistik för MI/EPI/DI/MEI den 19 dec 2012

Byggställning. Scaffold

Föreläsning 9. Induktionslagen sammanfattning (Kap ) Elektromotorisk kraft (emk) n i Griffiths. E(r, t) = (differentiell form)

Motion 1982/83: 697. Thorbjörn Fälldin m. fl. Ökat sparande

Verksamhetsberättelse 2012 Uppsökande Verksamhet med Munhälsobedömning

Lexmark Print Management

Introduktion till partiella differentialekvationer

Låt ledarskap löna sig!

Svenska Spels GRI-profil 2013

IDEOLOGI OCH VERKLIGHET

Övning 8 Diffraktion och upplösning

IF1330 Ellära KK1 LAB1 KK2 LAB2. tentamen

IF1330 Ellära KK1 LAB1 KK2 LAB2. tentamen

Mot. 1982/ Motion

UPPSTÄLLDA SAMBAND SKALL MOTIVERAS (gärna med en enkel skiss). Uppgifterna är inte avsiktligt ordnade efter hur svåra de är.

Föreläsning 9: Beräkning av tröghetsmoment och tröghetsprodukter (kap ) Kinetisk energi för roterande stelt system: T rot

En punkt avbildas inte till en punkt p.g.a. diffraktion i optiken. I stället ser vi en Airy Disk:

l l l l l l l l l l l Motion till riksdagen 1988/89: Ub532 av Lennart B runander och Marianne Andersson (båda c) Förskollärarutbildning i Borås

Tillsammans kan vi göra skillnad. Här är en guide som hjälper dig att komma igång!

KBU Grundskolan Åk Friskolan Stellatus

Angående utökat samarbete, enligt kriterier DUA "Unga till arbete". orgnr: orgnr:

KBU Grundskolan Åk Friskolan Stellatus

Varför låter musikinstrument

KBU Grundskolan Åk Kronoparksskolan

Mekanik 2 f or F Obligatorisk del

Tentamen i Fourieranalys MVE030 för F2 och Kf2 och Fouriermetoder MVE290 för TM2

Hårdhet & Avhärdning -Luftning & Oxidation

hela rapporten:


Windows. Kundstödskontakter världen över för ArcSoft Inc.

SAMMANTRÄDESPROTOKOLL 27 {43) M SALA LEDNINGSUTSKOTTET. Ulrika Spärebo [S] inkom den 19 juni 2017 med rubricerad motion.

Utbildningsprogram Hogia PA-kompetens AB våren 2001

krokens stål greppa. FFA tog rygg på fiskeguiden Micke Puhakka för att kolla om ryktena var sanna.

Superi mot välfårdssamhället

729G43 Artificiell intelligens (2016) Maskininlärning 2. Marco Kuhlmann Institutionen för datavetenskap

l l l Motion till riksdagen 1988/89: So546 av Bengt Westerberg m. fl. (fp) Förbättrad omvårdnad l l l l l

information förs in i prissystemets informationsmekanismer.

KBU Grundskolan Fritids Åk Friskolan Stellatus

Metodtest för elasticitetsberäkningar ur Sampers RAPPORT. Del 1 Tågelasticiteter enligt befintlig differentiering utifrån basprognos 2030.

SOLIDA GÄNGFRÄSAR. ThreadBurr

EXAMENSARBETE. LQ-reglering av inverterad pendel. Micael Karlsson H97Ei

skruvarmering som förstärkning i trä vid belastning vinkelrätt fiberriktningen

SKÖTSELPLAN Dnr: Skötselplan för naturreservatet Knuthöjdsmossen i Hällefors kommun

Dagens frågor. Kjell-Olof Feldt understryker att det gäller att öka produktiviteten i kommunerna, att omprioritera och effektivisera

b Salstentamen Kognitiv och psykisk aktivitetsbegränsning 6 hp, tentamen 20ltS

Säkerhet för lösningsinriktade skrivare och multifunktionsskrivare från Lexmark

KBU Grundskolan Fritids Åk Kronoparksskolan

729G43 Artificiell intelligens / Maskininlärning 2. Marco Kuhlmann

Bilaga A, Terminalprogram

e l h a ll byb o 4-6 januari Cupen för hela föreningen +

Föreläsning 5. Approximationsteori

729G43 Artificiell intelligens / Maskininlärning 3. Marco Kuhlmann

Trendspaning i Stockholm

mellan i grunden likartade partier.

Leaderområde VÄXTLUST VÄRMLAND. Utvecklingsstrategi

Ledarnas rapport om chefslöner 2012

Vannaktiviteter. Torsby och Sunne

:w ~; n_. bi -3f,fr. 'Jkm= \&5 ~75/t!4ttlh. Problemlösning. i/()6,~ Xx h. h = 5 h1 '3o = 5' h. uj, s=' f7-3~ X = 't(jo' EXEMPEL X :=3T.

Föreläsning 6 (kap i Optics)

.,_, MODELLERING AV SKIVOR PA REGELSTOMME. Examensarbete utfört av: Göran Nilsson Handledare: Sture Akerlund BÄRANDE KONSTRUKTIONER

1.1 MATLABs kommandon för matriser

jlsocialstyrelsen Regler och behörighet/klassifikationer Dnr: /2014 och terminologi

Resultat av medborgarenkät uppdelat på kön. Kön. Annat, könsöverskridande. Total. identitet. Namn Antal % Antal % Antal % Antal %

INSTALLATIONS- HANDBOK

Lathund. för programmet TeamViewer. Deltagare/elever

Förskolan Remonthagen. Plan gällande läsåret 2017/2018

Handläggare. Lena Henlöv Svar på motion från folkpartiet "utvärdering av södertälje skol modell"

Återinför namnet Drevviksstrand i stället för Östra Skogås svar på medborgarförslag väckt av Lars Andersson, Björn Engman, Bo Lundberg och Kim Wiking

Ungdomslyftet. År svensk konståkning lyfter ungdomar mot framtida världsklass

Nya svenska råvaror på skånsk mark. Hälsosammare livsmedelsprodukter.

Tentamen i SG1140 Mekanik II, Inga hjälpmedel. Lycka till! Problem

Epipolärgeometri och den fundamentala matrisen. Epipolarlinje. Epipoler. Exempel. vara dess avbildning i två bilder genom

ECL-portal. Standardiserad SCADA-lösning för ECL Comfort 310. Datablad. Beskrivning

Totalkväve. Transport av totalkväve Kvävetransport. ton/år. Totalkväve, ton/år P12 P13.1

18 december (skrivningstid 5 timmar) LÖSNINGAR. Vid tveksamma fall: kontakta skrivningsvakten innan hjälpmedlet används.

Tentamen i FEM för ingenjörstillämpningar (SE1025) den 15 mars 2011 kl

Hur hanterar vi varandra i trygghetsnarkomanernas land

l iootterdotterdotterdotterbolag

VÄNDBAR "VÄNDBAR. Tävlingsförslag Dalslandsstugan 2.0

SJ ÅRSREDOVISNING & HÅLLBARHETSREDOVISNING 2013

Mälarhöjdens ryttarsällskap

SJ ÅRSREDOVISNING & HÅLLBARHETSREDOVISNING 2013

Föreläsning 7: Klassificering, minsta kvadratproblem, SVD, forts.

ECL-portal. Standardiserad SCADA-lösning för ECL Comfort 310. Datablad. Beskrivning

Information om lägenhetsnummer Lägenheterna har fått lägenhetsnummer enligt nedan i det lägenhetsregister som Lantmäteriverket just nu bygger upp.

LEDVANCE.SE EN INTRODUKTION TILL VÅRT SORTIMENT OSRAM LED- LJUSKÄLLOR FRÅN LEDVANCE

Frågeområde Funktionshinder

l l l l l l l l l l l l l l l

I laget får ingå godtyckligt antal nollor. De aktivt tävlande nollorna ska vara tre till antalet, och av dessa ska minst en vara av motsatta könet.

100 %, 50 %, 25 % och 75 %

Gränssnittsprogrammet EL V AR

1. (a) (1p) Undersök om de tre vektorerna nedan är linjärt oberoende i vektorrummet

LARS ULVELAND HOPFIELDNÄTVERK FÖR IGENKÄNNING AV DEGRADERADE BILDER OCH HANDSKRIVNA TECKEN

Hemuppgift 2, SF1861 Optimeringslära för T, VT-10

Transkript:

Support Vector Machines Johannes Uén 86015-1450 tf05ju1@student.th.se Handedare: Petter Strandmark

Introduktion I projektet har teorin för Support Vector Machines (SVM) gåtts igenom och impementerats i MatLab. Träningen av SVMen är impementerade med hjäp av Sequentia Minima Optimization (SMO) som möjiggör träning även när antaet träningsdata är vädigt stort. För att sedan testa impementeringen har kassi- cering gjorts på standarddatabasen USPS. 1 Support Vector Machines SVM är en kassiceringsmetod som i dess enkaste form separerar data i två oika kasser. Teorin byggs upp från det enkaste faet med två kasser som kan separeras med ett hyperpan, ti faet med godtyckigt anta kasser som ej går att separera. x w. x - b = 1 w. x - b = 0 w. x - b = -1 w x 1 Figur 1: Geometrisk förkaring av era begrepp i häredningen när datan är tvådimensione, biden är från []. 1.1 Linjärt separabe data Träningsdatan är av formen (x 1, y 1 ),... (x, y ) x R n, y i { 1, 1}, där x i är en n-dimensione vektor innehåande data och y i anger viken kass datan tihör (-1 eer 1). De två kasserna kan man separera med ett n-dimensionet hyperpan, detta kan på an form skrivas som w x + b = 0, där w är panets normariktning och b förskjutningen från origo. Figur (1) visar ett sådant hyperpan i faet då datan enbart har två dimensioner. Vi inför nu även krav på hur ångt ifrån hyperpanet data tihörande de två kasserna får igga, detta görs genom att införa två nya hyperpan. Detta kan ses streckade injer i gur (1). Vi tvingar a data att igga på de två hyperpanen eer ängre bort, formet kan detta uttryckas för de punkter som tihör kassen y i = 1 som och de andra punkterna som tihör kassen y i = 1 som w x i + b 1 (1) w x i + b 1. () Detta kan snyggt skrivas om med hjäp av y i ti ett enda krav för aa punkter:

y i (w x i + b) 1. (3) Datan som igger precis på de två begränsande hyperpanen kaas supportvektorer. De uppfyer w x 1 + b = 1 och w x + b = 1 där x 1 är en supportvektor från den ena kassen och x är från den andra kassen. Detta kan skrivas som w (x 1 x ) =. Avståndet mean de två hyperpanen ges av w (x 1 x ) w = w. För att göra vår kassicering så robust som möjigt vi vi hitta det hyperpanet som maximerar avståndet mean panen, vi ska atså minimera w. Detta är ekvivaent med det ättare probemet att minimera 1 w w. Sammanfattningsvis får vi det kvadratiska minimeringsprobemet min w,b 1 w w under bivikoret y i (w x i + b) 1 (4) Viket ger oss Lagrangefunktionen: L (w, b, λ) = 1 w w λ i (y i (x i w + b) 1) (5) Vi passar nu även på att häreda det duaa probemet ti (4). Från [1] vet vi att den optimaa ösningen ti (4) måste uppfya Karush-Kuhn-Tucker (KKT) vikoren. Dvs b.a. att Detta ger oss L (w, b, λ) = 0 L (w, b, λ) w L (w, b, λ) b Sätter vi in (6) och (7) i Lagrange funktionen (5) får vi D (λ, x, y) = 1 j=1 = λ i y i = 0 (6) = w λ i y i x i = 0 w = λ i y i x i (7) λ i λ j y i y j x i x j j=1 λ i λ j y i y j x i x j λ i y i b + λ i Använder vi (6) och det faktum b är en skaär som går att ytta utanför summeringen får vi D (λ, x, y) = λ i 1 j=1 λ i λ j y i y j x i x j At beroende av w har försvunnit och direkt fås det duaa probemet som max λ λ i 1 j=1 λ iλ j y i y j x i x j under bivikoret λ i 0, i, och λ iy i = 0. (8) Det duaa probemet har fördeen att datan x enbart förekommer i en skaärprodukt. Om vi nu öser (8) och får fram λ kan vi räknade fram w från (7) som w = λ i y i x i. (9) 3

Från [1] hämtar vi compementary sackness principe, dvs att för de Langrangemutipikatorer som är aktiva ( 0) gäer ikhet i (1) och (), viket ger oss b som: w x i + b = 1 b = 1 w x i (10) för de i där motsvarande Langrangemutipikatorer λ i 0. Vi har nu fått ut ösningen ti vårat primaa probem från ösningen ti det duaa probemet. Vi kan nu tisut kassicera ny data x via besutsfunktionen. ( ) f (x) = sign ((w x) + b) = sign λ i y i x i x + b (11) Dvs vi kassicerar data i någon av kasserna 1 och 1, utifrån viken sida av vårat framräknade hyperpan datan igger. För att kassicera en okänd data x så behövs enbart supportvektorerna (den datan som har noskid agrangemutipikator). Eftersom dessa i de ara esta fa enbart består av bråkde av den totaa datamängden kommer supportvektorerna att vara gesa och därmed kommer skaärprodukten i (11) att kunna beräknas snabbt och därmed kommer det även gå snabbt att kassicera ny data. 1. Icke-injärt separabe data Om datan inte går att separera med ett hyperpan så kan man avbida datan med en oinjär funktion ti högre dimension och i denna högre dimension hitta ett hyperpan som separerar den. Om vi kaar funktionen som avbidar x på en högre dimension för φ (x), så ser vi att det duaa probemet (8) förekommer datapunkterna enbart innanför en skaärprodukt. Så istäet för att byta dimensionen på aa punkter, utföra skaärprodukt och byta tibaka dimensionen kan vi utföra skaärprodukten direkt i den högre dimensionen. Detta trick gör SVMs snabba. Vi inför kärnan K (x, y) := (φ (x) φ (y)). Det nns många exempe på kärnor som ämpar sig bra, t.ex de poyonomiea: K (x, y) = γ (x y) n, n Z +, γ > 0 (1) och de radiea basfunktionerna (RBF): K (x, y) = exp ( γ x y ) γ > 0 (13) För att visa att detta faktiskt hjäper oss betrakta kärnan K (x, y) = (x y) i det tvådimensionea faet x = (x 1, x ), y = (y 1, y ). Omskrivet bir detta (x y) = (x 1 y 1 + x y ) = x 1y 1 + x y + x 1 y 1 x y = ( x 1, x, x 1 x 1 ) ( y 1, y, y 1 y ) = (φ (x) φ (y)) Där vi identierar φ (x) = ( x 1, x, x 1 x 1 ). Dvs via denna skaärprodukt så går vi från R ti R 3 oinjärt. Ett exempe en oinjär avbidning kan ses i gur (). Om vi istäet för att använda oss φ (x) direkt bara använder oss av vår nya kärna kan det duaa probemet nu skrivas som maximera λ i 1 j=1 λ iλ j y i y j K (x i, x j ) under bivikoret λ i 0, i, och λ iy i = 0 på samma sätt kan nu b fås som b = y j i λ i y i K (x j, x i ) när λ j är aktivt ( 0). Samma procedur på vår besutfunktion (11) ger den nya besutsfunktionen ( ) f (x) = sign λ i y i K (x i, x j ) + b i 4

Figur : Exempe på när avbidningen φ (x) = ( x 1, x, x 1 + x ) gör det möjigt att separera två datamängder med ett hyperpan. 1.3 Icke-separabe data Nu är det tyvärr inte så ätt att det atid går att hitta en icke-injär avbidning som gör att vi kan separera våra data med ett hyperpan. Vi inför variaberna, ξ i 0, i,som midrar kravet (3) ti y i (x x i + b) 1 ξ i Eftersom vi vi att dessa termer ska vara så små som möjigt och hest no så ändrar vi om vårat primaa probem (4) ti 1 min {w,b,ξ} w w + C ξ i Där vi kan ändra på C för att ge oika stort stra för de punkter som inte vi indea sig med ett hyperpan. Vi får nu en ny Lagrangefunktion: L (w, b, ξ, λ, Γ) = 1 wt w + C ξ i λ i (y i (x i w + b) 1 + ξ) Γ i ξ i KKT ger oss nu ett nytt krav på den optimaa ösningen nämigen L (w, b, ξ, λ, Γ) ξ i = C λ i Γ i = 0 Eftersom Lagrangemutipikatorn Γ i 0 och vår stra term C > 0, kan vi skriva om detta ti kravet När vi vi få fram det duaa probemet så är inf λ,ξ 0 λ i C, i ( Γ i ξ i ) = 0 eftersom Γ i 0. Dvs vi får ut samma funktion som ska maximeras som i (8), men med ändrade bivikor. Sammanfattningsvis får vi det kvadratiska programmeringsprobemet: max λ λ i j=1 λ i λ j y i y j K (x i, x j ) (14) under bivikoren 0 λ i C, i, i och λ iy i = 0 5

1.4 Fer än två kasser Det nns versioner av SVM som är byggda direkt för er än två kasser se t.ex [5], men i praktiken har de fungerat dåigt på riktig data. För att utvidga våran binära SVM ti mer än två kasser använder vi oss av den snabba och enka metoden One-Against-the-Rest. One-Against-the-Rest (1-v-R) I 1-v-R så tränar man en SVM för varje kass mot resten av datan, vi kan ge varje kass sidan av hyperpanet som ger en positiv besutsfunktion f(x) > 1. Sedan kör man ett okänt x mot aa SVMs och ser hur den bir kassicerad. Om den enbart kassiceras ti en kass så godkänns den, (dvs besutsfunktionen bir enbart positiv för en av våra SVMs), annars sängs den och anses vara okassicerbar. Detta innebär att en de av datan inte kommer att gå att kassicera. En annan variant, den variant som använts i impementeringen, är att istäet för att kassicera enbart på tecken så kassicerar man efter den besutsfunktion som ger högst värde, dvs för den SVM som x kommer ängst bort från hyperpanet på rätt sida. En annan förde med denna metod är att aa punkter går att kassicera. 1.5 Eektivare träning I praktiken när man ska träna sin SVM så kan det kvadratiska optimeringsprobemet (14) bi probematiskt. Matrisen som ska innehåa aa bivikor får storeken n n, där n är antaet träningsdata. Så om man vi träna en SVM mot MNIST-databasen som innehåer 60000 träningsdata kommer man vara tvungen att arbeta med 60000 = 3.6 10 9 ta. Om man sparar dem med 3 bitar precision tar detta upp 13.4GB, viket överstiger minnet hos en vanig dator. Det nns dock eektivare sätt att sköta sjäva träningen av SVMen. En av dem, sequentia minima optimization (SMO) [4] har vi använt i impementeringen. 1.5.1 SMO I SMO så väjer man att ta ut två agrangemutipikatorer λ 1 och λ i par och optimera deras värde med avseende på måfunktionen (14) samtidigt som de efter optimeringen måste uppfya KKT vikoren. När aa λ uppfyer KKT med en viss toerans för numeriska fe, så är man kar. Hur man para ihop de oika agrangemutipiktorerna sker efter vissa heuristiska reger som strävar efter minimera körtiden för programmet. Först väjs λ 1 och sedan ett λ som troigast ger största kivet i måfunktionsvärdet. Va av λ 1 I första hand väjs λ 1 band de λ som för tifäet är skida från 0 och C. Om ingen av dessa går att uppdatera via en optimering så testat de andra λ. Va av λ För att snabba upp koden så sparar man i varje steg en uppskattning på hur fe varje data i ens träningsmängd kassiceras. Dvs f (x) y i. Där f (x) är besutsfunktionen och y i är kass tihörigheten. Utifrån denna feskattning kan man bedöma viket va λ som bör kunna öka måfunktionen i (14) så mycket som möjigt. Om detta va av λ ej eder ti någon möjig ökning av måfunktionen så testas aa λ som är skidra från 0 och C som λ. Och tisut om inget av dessa två va funkar så testat resten av aa λ. Uppdateringssteget I varje steg där man testar om ett par av λ kan ändras på ett sätt som ej bryter mot KKT och samtidigt ökar måfunktionen utförs era evauering av besutsfunktionen, och i varje sådan evauering utförs en skaärprodukt. Det är därmed ytterst viktigt att ens va av kärna går att impementera snabbt. 6

Figur 3: Framsumpade exempe på hur sirorna i USPS databasen kan se ut. Resutat För att testa hur bra den impementerade SVM bev på riktig data hämtades testdatabasen USPS 1. USPS är en databas av handskrivna siror som kommer från amerikanska brev, för exempe på hur dessa sior kan se ut se gur (3). För att få ut features så har varje enskid sierbid fatats med en d gaussisk kärna med σ = 0.75. Sedan har varje pixe i biden fått agera feature, viket gav oss 56 features. USPS består av 791 s.k träningsdata, dvs data som är menad att ära ens kassiceringsmetod hur de oika sirorna ser ut. Och sedan 007 testexempe som ska används för att utvärdera hur bra metoden fungerade. Först tränades SVMen med en RBF kärna K(x, y) = exp ( 1 50 x y ) med C = 10. Detta gav fe kassicering av testdatan i 4, 38% av faen. Sedan tränades SVMen med en poyonomiea kärna K (x, y) = (x y) 3 med C = 10. Detta gav ett fe på kassicering av testdatan i 5, 08% av faen. Som jämförese så kassicerar en människa fe på ca.5% av sirorna. Om man använder nearest neighbor cassier som kassiceringsmetod kan man få ett fe på 5.6%, se [3]. Nearest neighbourhood måste dock söka igenom a träningsdata för att utföra sin kassicering medans SVM bara behöver utföra en skaärprodukt med den deen av data som bivit supportvektorer. För varje enskid SVM så bev antaet supportvektors enbart,5% av a träningsdata. 1 Kan hämtas ifrån ftp://ftp.kyb.tuebingen.mpg.de/pub/bs/data 7

Referenser [1] Lars-Christer Böiers, Lectures on optimisation, KFS AB, 004. [] CYC, Wikipedia, http://en.wikipedia.org/wiki/fie:svm_max_sep_hyperpane_with_margin.png. [3] Danie Keysers, Experimenta resuts on the USPS database, http://www-i6.informatik.rwthaachen.de/ keysers/pubs/spr00/node10.htm. [4] John C. Patt, Fast training of support vector machines using sequentia minima optimization, Advances in kerne methods: support vector earning (1999), 18508. [5] J. Weston and C. Watkins, Muti-cass support vector machines, Technica report CSD-TR-98-04, Roya Hooway, 1998. 8