Support Vector Machines 1 Support Vector Machines n
- Slides: 39
Support Vector Machines 1
Support Vector Machines n n n Predstavujú veľmi dôležitý objav z oblasti strojového učenia Rozhodovanie na základe hyperplochy rovnako pri perceptróne (priamka v 2 D, rovina v 3 D, atď. ) Nájdenie hyperplochy ktorá zabezpečí najväčšie oddelenie dvoch tried vstupných vzorov 2
Rozhodovacia funkcia n Realizuje klasifikovanie nového vstupného vzoru x: ? x 2 x 2 x 1 Nearest Neighbor Rozhodovacie stromy x 1 Lineárne funkcie x 2 x 1 Nelineárne funkcie 3
Support Vector Machines n n n Definujú optimálnu deliacu rovinu maximalizovanie hranice medzi triedami Dokážu fungovať aj na lineárne neseparovateľných problémoch – pomocou penalizácie za zlú klasifikáciu Transformujú vstupy do “priestoru zaujímavých vlastností” (feature space) – problém je preformulovaný tak aby v sebe transformáciu zahŕňal implicitne 4
Support Vector Machines n n n Definujú optimálnu deliacu rovinu maximalizovanie hranice medzi triedami Dokážu fungovať aj na lineárne neseparovateľných problémoch – pomocou penalizácie za zlú klasifikáciu Transformujú vstupy do “priestoru zaujímavých vlastností” (feature space) – problém je preformulovaný tak aby v sebe transformáciu zahŕňal implicitne 5
Ktorá rovina separuje triedy optimálne? x 1 vstupný vektor / vstupný vzor trieda vstupných vzorov x 2 6
Maximalizovanie hranice medzi triedami šírka hranice x 1 Treba nájsť takú rovinu ktorá zabezpečí najširšiu oddeľujúcu hranicu medzi oboma triedami šírka hranice x 2 7
Podporné vektory x 1 Polohu a smer optimálne separujúcej roviny určujú len “okrajové body” v oboch triedach. Vzdialenejšie vstupy na jej polohu ani smer nevplývajú podporné vektory (angl. support vectors) x 2 8
Formálna definícia problému Vstupný vzor – vektor x klasifikujeme na základe vektora váh w a prahu b. x 1 Pre body na okraji hranice platí Šírka hranice medzi triedami je x 2 Skalárny súčin je definovaný ako súčin veľkostí dvoch vektorov a kosínusu uhla, ktorý navzájom zvierajú. 9
Formálna definícia problému Cieľom je maximalizovať hranicu pričom musia byť splnené podmienky správnej klasifikácie x 1 x 2 10
Formálna definícia problému n Ak prvá triedu klasifikujeme ako hodnotu 1 a druhú triedu ako hodnotu -1, môžno podmienky n upraviť na n Optimalizačný problém má teda tvar alebo 11
Hard-Margin SVM n Treba nájsť parametre w, b ktoré sú riešením n Konvexný problém (kvadradická funkcia) garantuje jedinečné globálne minimum - ak existuje! Ak sú vstupné vzory (lineárne) neseparovateľné uvedená formulácia problému nenájde riešenie n 12
Support Vector Machines n n n Definujú optimálnu deliacu rovinu maximalizovanie hranice medzi triedami Dokážu fungovať aj na lineárne neseparovateľných problémoch – pomocou penalizácie za zlú klasifikáciu Transformujú vstupy do “priestoru zaujímavých vlastností” (feature space) – problém je preformulovaný tak aby v sebe transformáciu zahŕňal implicitne 13
Lineárne neseparovateľné vstupné vzory Zavedieme tolerančné premenné x 1 Umožnia aby sa niektoré vstupné vzory nachádzali za klasifikačnými hranicami Tieto vzory však budeme penalizovať x 2 14
Preformulovanie optimalizačného problému Obmedzenia majú tvar: x 1 Objektívna funkcia penalizuje zlé klasifikované vzory, ako aj tie ktoré sa nachádzajú v hraničnom pásme x 2 Parameter C dolaďuje vplyv nesprávane klasifikovaných vzorov a šírky hranice pri optimalizácii 15
Soft-Margin SVM n n n Algoritmus sa snaží ponechať tolerančné premenné i na nulovej hodnote pričom súčasne maximalizuje oddelujúcu hranicu Algoritmus neminimalizuje počet nesprávne klasifikovaných vzorov (NP-complete problem) ale minimalizuje len sumu vzdialeností od rozhodovacích Väčšia hodnoda C , spôsobí že riešenie sa bude približovať k hard-margin SVM 16
Soft vs. Hard Margin SVM x 1 x 2 n Soft margin SVM q q vždy existuje riešenie sú robustnejšie v pripade zašumených vstupov x 2 n Hard margin SVM q q nemusí existovať riešenie je potrebné odhadovať hodnotu parametra C 17
Hľadanie riešenia - optimalizácia Kvadratické programovanie s lineárnymi obmedzeniami s. t. Lagrangián s. t. 18
Hľadanie riešenia - optimalizácia s. t. 19
Hľadanie riešenia - optimalizácia s. t. Lagrangián - Duálny Problém s. t. , and 20
Hľadanie riešenia - optimalizácia n Keďže musí platiť: n Iba podporné vektory majú n Riešenie má tvar: x 1 x 2 21
Algoritmy pre trénovanie SVM n Lagrangeove SVM - LSVM Newtonova SVM – NSVM Sequential minimal optimization – SMO SVM light atď. n Distribuované prístupy n n q Riešia problémy s veľkým počtom trénovacích vzorov 22
Hľadanie riešenia - optimalizácia n Rozhodovacia funkcia má tvar: n Je založená na skalárnom súčine medzi testovaným bodom x a podpornými vektormi xi n Hľadanie riešenia optimalizačného problému v sebe zahŕňa výpočet skalárneho súčinu medzi všetkými dvojicami vstupných vzorov xi xj 23
Support Vector Machines n n n Definujú optimálnu deliacu rovinu maximalizovanie hranice medzi triedami Dokážu fungovať aj na lineárne neseparovateľných problémoch – pomocou penalizácie za zlú klasifikáciu Transformujú vstupy do “priestoru zaujímavých vlastností” (feature space) – problém je preformulovaný tak aby v sebe transformáciu zahŕňal implicitne 24
Nelineárne SVM – priestor zaujímavých vlastností f 1 x 1 (x) () x f 3 x 2 f 2 Funkcia (x) transformuje vstupné vzory do “mnohorozmerného” priestoru zaujímavých vlastností 25
Kernel trick n n (xi) (xj) predstavuje transformovanie vstupných vzorov do nového priestoru a následne vypočítanie skalárneho súčinu Ak dokážeme nájsť funkciu pre ktorú platí: t. j. jej výsledok predstavuje skalárny súčin obrazov v mnohorozmernom priestore, nemusíme vykonávať explicitné transformovanie vstupov do mnohorozmerného priestoru. Klasifikácia nového vzoru sa dá totiž spraviť nasledovne: 26
Kernel trick n Príklad: n Nech n Je potrebné ukázať 27
Kernel trick n Sa nazýva polynomyálny kernel stupňa p. n Ak p=2, a vstupný vzor (vektor) má 7000 prvkov použitie kernela znamená vypočítať skalárny súčin so 7000 členmi a jeho následné umocnenie dvoma n Ak by sme mali použiť explicitnú transformáciu do mnohorozmerného priestoru znamenalo by to výpočet približne 50, 000 nových zaujímavých vlastnosti pre oba trénovacie vzory a následne počítať skalárny súčin uvedených vektorov n Kenel trik teda umožňuje výrazným spôsobom znižovať výpočtovú náročnosť v porovnaní s explicitnou transformáciou 28
Mercerova podmienka n n n Nie každá symetrická funkcia K(x, z) predstavuje kernel, t. j. Nemusí existovať zodpovedaujúca transformácia (x) Duálna formulácia SVM vyžaduje výpočet tzv. Gramovej matice Gij = K(xi , xj) ktorá obsahuje hodnoty K(xi, xj) pre každú dvojicu trénovacích vzorov Transformácia (x) do priestor zaujímavých vlastností existuje keď je matica G semi pozitivne definitná (Mercerova podmienka) 29
Príklady kernelových funkcií n Príklady kernelových funkcií: q Linearny kernel: q Polynomiálny kernel: q q n Gaussovský (Radial-Basis Function (RBF) ) kernel: Sigmoidálny kernel: Funkcie ktoré splnujú tzv. Mercerovu podmienku môžu byť kernelové funkcie. 30
SVM n Voľba kernelovej funkcie q q q n Voľba parametrov kernela q q q n Gaussovský, resp. polynomiálny kernel je prvá voľba Ak nevyhovuje, je nutné nájsť iné pokročilé kernely Spravidla je nutná znalosť problémovej domény Napr. σ pri Gaussovskom kerneli σ predstavuje vzdialenosť medzi najbliššími vstupnými vzormi s rozdielnou triedou klasifikácie Inou možnosťou je využiť validačné množiny, resp. cross validáciu Optimalizácia – Hard margin v. s. Soft margin q Spravidla viacero sérií experimentov s rôznymi parametrami This slide is courtesy of www. iro. umontreal. ca/~pift 6080/documents/papers/svm_tutorial. ppt 31
Iné druhy Kernelových metód n n SVM pre regressiu (SVR) SVM pre klasterizáciu Kernel PCA Aplikácie: q q q Detekcia a rozpoznávanie tvárí v obrázku Spracovanie textu – klasifikácia dokumentov / filtrovanie emailov Bioinformatické aplikácie n n hľadanie kódujúcej sekvencie v DNA potvrdenie diagnózy 32
Klasifikácia pri viacerých triedach n n n Jeden voči všetkým (One-versus-all) q n binárnych klasifikátorov, každý pre jednu triedu vs všetky ostatné triedy. q Vyberie sa tireda ktorá má najväčšiu pravdepodobnosť Jeden voči jednému (One-versus-one) q n(n-1)/2 klasifikátorov, každý rozlišuje medzi jednou dvojicou tried q Viacero stratégií pre výber výslednej tiredy na základe výstupu binárnych výstupov SVM Multi. Class SVMs q Zobšeobecnenie formalizmu SVM pre viacero tried 33
Porovnanie s neuronovými sietami Neurónové siete n n n Skrytá vrstva transformuje do nízko rozmerného feature space Prehľadavany priestor váh ma viacero lokálnych miním Trénovanie je výpočtovo náročné Klasifikácie je extrémne efektívna Vyžaduje stanoviť počet skrytých neurónov a vrstiev SVM n n n Kernelové funkcie transformujú vstupy do mnohorozmerných priestorov Prehľadávaný priestor má jedinečné minimum Trénovanie aj klasifikácia je extrémne efektívne Je potrebné zvoliť Kernelovú funkciu a parameter C Robustný prístup avšak citlivý na zle označené vstupy 34
Prečo sú SVM zovšeobecňujú? n VC dimenzia q q q Najvyšší počet vstupných vzorov, ešte ktoré dokáže model správne klasifikovať Pre priamku v R 2 je VC rovná 3 ? ? ? Pre hyperrovinu v Rn je VC rovná n+1 VC meria zložitosť zvolenej triedy rozhodovacích funkcií Nesúvisí ale s počtom jej parametrov!! 35
Prečo sú SVM zovšeobecňujú? n VC dimenzia q q Nesúvisí ale s počtom jej parametrov!! Napr. f(x, w)=sign( sin(w. x) ), w R x R Pre ľubovolný počet vstupných vzorov vždy existuje hodnota parametera w, ktorá správne klasifikuje VC dimenzia tejto triedy funkcií je 36
Prečo sú SVM zovšeobecňujú? n VC dimenzia Pre priamku v R 2 je VC rovná 3 n Ak je počet vstupných vzorov >> VC dimenzia modelu, získavame istotu, že model je vhodný na klasifikáciu n Pri SVM je VC dimenzia závislá len od šírky oddeľujúcej hranice a nezávisí od rozmeru vstupného vektora, resp. počtu parametrov. 37
Záver n n n Predstavujú veľmi dôležitý objav z oblasti strojového učenia Nájdenie hyperplochy ktorá zabezpečí najväčšie oddelenie dvoch tried vstupných vzorov Kernel trick – umožní efektívne pracovať v mnohorozmernom priestore zaujímavých vlastností 38
Zdroje Prezentácie n n www. iro. umontreal. ca/~pift 6080/documents/papers/svm_tutorial. ppt www. cs. cmu. edu/~awm/tutorials www. site. uottawa. ca/~stan/csi 5387/SVM-appl. pdf http: //www. cadlm. fr/%5 Cworkshop%5 Cdoc%5 Cproceedings/Kxen. ppt Web n n www. kernel-machines. org www. kernel-methods. net www. support-vector-machines. org 39
- Transductive support vector machine
- What is position vector
- Unit vector
- Vector
- Why is vector resolution the opposite of vector addition
- Svm exercise solutions
- Svm cost function
- Support vector machine icon
- Support vector machine pdf
- Structured support vector machine
- Support vector machine regression
- Support vector regression
- Support vector machine intuition
- Father of support vector machine
- Support vector regression
- What are the signal words
- Simple machines science olympiad
- Stapler compound machine
- Tools tackles list
- Electric machines
- Fabric tape measure target
- Principles of electrical machines vk mehta
- Wheelbarrow compound machine
- Georgia coam
- 6 types of simple machines examples
- Work power and machines
- Dr. dudley sargent invented 80 machines, using
- Types of pulley
- Charles beck physical education
- Utcs lab machines
- Function of diathermy machine
- Wheel and axle mechanical advantage
- It has a wheel that is fixed to the axle
- Function machines maths
- Names of simple machines
- What is it called
- Machines in physics
- Advanced risc machines
- Chapter 10 energy, work and simple machines answer key
- Classification of turbo machines