SVM - Support Vector Machines
Modul Support Vector Machines (SVM, do češtiny se někdy překládá jako metoda podpůrných vektorů) nabízí velmi progresivní a novou metodu z oblasti strojového učení, kterou rozpracoval koncem 20. a začátkem 21. století Vladimir Naumovič Vapnik a Alexej Jakovlevič Červoněnkis (Akademie věd SSSR, Stanford University, Royal Holloway College London, AT&T Bell Labs New Jersey, NEC Labs Princeton, Columbia University New York). Této metody lze využít především pro klasifikační úlohy, rovněž ale nachází uplatnění v regresním modelování a neparametrických odhadech hustoty. Modely SVM využívají teorii empirického risku R a Vapnik-Chervonenkisovy (VC) dimenze modelu h. S pravděpodobností 1 – η platí nerovnost
SVM - Support Vector Machines
kde
SVM - Support Vector Machines
je risk (skutečná střední chyba modelu), l je počet dat, α parametry modelu,
SVM - Support Vector Machines
je empirický risk a h je nezáporná celočíselná VC-dimenze modelu. Poslední člen na pravé straně (celá odmocnina) se nazývá VC-confidence.

SVM-C – Klasifikační modely SVM
SVM-R – Regresní modely SVM
SVM-OneClass – Hustota rozdělení

SVM-jádrové transformace

Zde uvádíme několik jednoduchých ilustračních příkladů pro snadnější orientaci v metodách SVM a rychlou referenci pro nastavení a smysl parametrů metod SVM. Přestože metody SVM jsou určeny pro větší množství vysvětlujících proměnných x (prediktorů), pro účely lepší ilustrace se omezíme převážně na dvourozměrné, snáze pochopitelné příklady (jeden nebo dva sloupce x). Pro vícerozměrné modely se nicméně SVM chovají analogicky.

Více informací naleznete v manuálu:
PDF SVM Support Vector Machines - manuál ve formátu Pdf

Příklad 1 – Klasifikace
Pro hodnoty spojitých prediktorů X a Y jsou známy kategorie A, B, C, D. Tyto kategorie mohou být například výsledky experimentů při podmínkách xi, yi, nebo předem známé kategorie, u nichž jsou známy hodnoty X a Y. Výskyty různých úrovní kategorie se překrývají nejsou zřejmě zcela separovatelné v rovině X, Y. Pro tato (trénovací) data se vytvoří model SVM-C. Následující grafy ukazují chování modelu SVM nejprve bez transformace (lineární jádro) a pak s RBF transformací s různými hodnotami strmosti (nebo nelinearity) γ od γ=0.01 do γ=10. U výsledných modelů jsou uvedeny i počty misklasifikací (misclass), tedy chybných klasifikací. Volbou vhodného γ chceme získat takový model, který bude nejlépe předpovídat kategorii pro nové hodnoty x a y bez ohledu na náhodné umístění trénovacích dat. Proto poslední („přetrénovaný“) model s nejmenším počtem misklasifikací nebude zřejmě nejlepší. Kvalitu modelu lze posoudit cross-validací, kdy odstraníme část z trénovacích dat (obvykle 10-30%) a tuto část pak použijeme pro predikci kategorie. Podíl správně predikovaných kategorií pak může být mírou úspěšnosti zvoleného modelu.
Příklad 2 – Klasifikace
Následující tři grafy ukazují lineárně neseparovatelná data s binární odezvou (A,B), kdy lineární model SVM-C, a částečně i polynomické jádro 2. stupně je geometricky nevhodné a selhává. Transformace s RBF jádrem naopak velmi dobře separuje obě kategorie.
Příklad 3 – Robustní regrese
Nastavením parametru ε se určuje šířka pásu kolem modelu, v němž má ležet co nejvíce dat. Zmenšováním hodnoty tohoto parametru lze dosáhnout obdoby robustnosti u klasických regresních modelů. Data mimo interval SVM - Support Vector Machines se v SVM regresi považují za data, která jsou mimo interval přípustných chyb a tedy neodpovídají modelu. Na následujících grafech je ilustrováno chování lineárního SVM-regresního modelu v porovnání s klasickou lineární regresí metodou nejmenších čtverců (A) a iterativní robustní metodou bounded influence regression (B). Na obrázcích (C) až (F) jsou přímky pro různě široké přípustné meze ±ε. Z ilustrace je zřejmé, že se model snaží „nacpat“ do zadaného pásu co nejvíce dat. Tím lze dosáhnout plynulho zvyšování robustnosti modelu vůči odlehlým datům. Povaha této robustnosti je však značně odlišná od robustních metod v klasické regresi.
Příklad 4 – Adekvátnost regresního modelu
Data odpovídající regresnímu modelu se řídí vztahem yi = f(xi) + ei, úkolem regrese je odhad f(x) a tím i velikosti chyb ei a jejich rozptylu. Díky značné flexibilitě modelů SVM je snadné model přeurčit. Takový model pak nereprezentuje střední hodnotu, ale spíše šum v datech a není použitelný jako popis sledované závislosti. Vhodná diagnostika, která pomůže indikovat přeurčení modelu je (mimo standardních cross-validačních technik) koncentrace výskytu residuí na hranici ± ε. Grafy na předcházející straně ilustrují čtyři modely na stejných datech, z nichž pouze první (A) zřejmě správně modeluje hladkou křivku skutečné závislosti (zda je modelem křivka (RBF, polynom, sigmoida), či přímka, je volbou uživatele). Křivost ostatních modelů je ovlivněna náhodnými chybami v datech. Koncentrace reziduí na nastavených hranicích indikující příliš velkou hodnotu γ, případně i C je zvláště patrná na grafech (B) a (D). Model (D) ilustruje mezní možnost, kdy model kopíruje pouze náhodné chyby a je zcela nepoužitelný.

Následující příklad ilustruje postup cross-validace, kdy se model vytvoří z podmnožiny původních dat (obvykle náhodně vybraných 70-90% trénovacích dat) avšak predikce se počítá ze všech (100%) dat. Zobrazení vynechaných testovacích dat v grafu predikce pomůže posoudit predikční schopnost modelu. Modely SVM mohou být tak flexibilní, že „dokonale“ proloží i zcela náhodná data (A), takový model je však nepoužitelný, má nulovou predikční schopnost (světlejší predikovaná data v grafu predikce jsou zcela mimo dokonalý fit). V grafu (B) má sice model 50x větší chyby, než (A), avšak tento model má velmi dobrou predikční schopnost, světlejší testovací data prakticky splývají s trénovacími.

Příklad 5 – Vliv γ a ν na model rozdělení
Následující tabulka grafů ilustruje vliv volitelných parametrů na tvar hranice hustoty rozdělení na příkladu jádra RBF. Parametr γ ovlivňuje „tuhost“ rozdělení, parametr ν odpovídá podílu rozdělení mimo hranici. Uvedených 16 grafů znázorňuje tvar vypočítané hranice pro rostoucí podíl ν při konstantním γ a pro rostoucí γ při konstantním ν.


Aktualizováno ( Pondělí, 03 června 2013 )