Otázka:
Výhody a nevýhody SVM
lakesh
2012-03-10 21:10:50 UTC
view on stackexchange narkive permalink

Může mi někdo vysvětlit výhody a nevýhody klasifikace SVM, která ji odlišuje od ostatních klasifikátorů?

V jakém kontextu? Za jakým účelem? S jakým druhem SVM? Pro jaký druh dat?
Jeden odpovědět:
Dikran Marsupial
2012-03-10 21:44:57 UTC
view on stackexchange narkive permalink

Existují čtyři hlavní výhody: Za prvé má regularizační parametr, díky kterému uživatel přemýšlí o tom, jak se vyhnout nadměrnému přizpůsobení. Zadruhé využívá trik s jádrem, takže můžete stavět na odborných znalostech o problému pomocí inženýrství jádra. Zatřetí je SVM definován problémem konvexní optimalizace (žádná lokální minima), pro který existují účinné metody (např.SMO). A konečně jde o přiblížení vázané na chybovost testu a je za ním podstatná část teorie, která naznačuje, že by to měl být dobrý nápad.

Nevýhody spočívají v tom, že teorie pokrývá pouze skutečně stanovení parametrů pro danou hodnotu regularizace a parametrů jádra a výběr jádra. Svým způsobem SVM posouvá problém over-fitingu z optimalizace parametrů na výběr modelu. Je smutné, že modely jádra mohou být docela citlivé na přílišné přizpůsobení kritériu výběru modelu, viz

G. C. Cawley a N. L. C. Talbot, Over-fiting in selection selection and subsequent selection bias in performance evaluation, Journal of Machine Learning Research, 2010. Research, vol. 11, pp. 2079-2107, July 2010. ( pdf)

Upozorňujeme však, že tento problém není u metod jádra jedinečný, většina metod strojového učení má podobné problémy. Ztráta závěsu použitá v SVM vede k řídkosti. Optimální volba parametrů jádra a regularizace však často znamená, že skončíte se všemi daty podporujícími vektory. Pokud opravdu chcete řídký stroj s jádrem, použijte něco, co bylo od samého začátku navrženo tak, aby bylo řídké (nikoli užitečné jako vedlejší produkt), například Informativní vektorový stroj. Funkce ztráty použitá pro regresi vektoru podpory nemá zjevnou statistickou interpretaci, často lze do funkce ztráty zakódovat odborné znalosti problému. Poisson nebo Beta nebo Gaussian. Podobně v mnoha problémech s klasifikací skutečně chcete pravděpodobnost členství ve třídě, takže by bylo lepší použít metodu, jako je Kernel Logistic Regression, místo post-process výstupu SVM, abyste získali pravděpodobnosti.

To je asi vše, co mě napadne.

A co výzvy pro potíže s klasifikací více tříd u SVM?
@Vaas dobrý bod, v minulosti jsem použil algoritmus DAGSVM a zjistil jsem, že je docela efektivní.Zdá se, že problémy s více třídami nemají v rámci SVM tak elegantní řešení, logická regrese s více třídami jádra by byla pravděpodobně nejpodobnějším přístupem, který zůstal „elegantní“.


Tyto otázky a odpovědi byly automaticky přeloženy z anglického jazyka.Původní obsah je k dispozici na webu stackexchange, za který děkujeme za licenci cc by-sa 3.0, pod kterou je distribuován.
Loading...