SVMツールと関連する論文まとめ

最近SVM(Support Vector Machine)周りの復習をしているので有名どころのツールと、それに関連する論文をまとめた。完全に個人用メモなので抜けがあるかも。あくまで参考程度に。


ツールは色々あるけれど使うのが目的なら定番のsvmlightやlibsvmがいい気がする。最近だとliblinearが流行っている。SVMといえばカーネル関数とマージン最大化だけれど、最近ではカーネルは線形でいいやという流れになってきている?個人的にはpegasosがわかり易い線形カーネル+オンライン学習になっていて自分で作って遊ぶには良いと思っている。またsvmsgdは"straightforward stochastic gradient descent"と言っているものの非常に高性能で、それを実現するための様々な工夫が施されていて実装を学ぶ上で大変参考になる。ここには挙げていないけれど、線形カーネル+オンライン学習でという話ならPassive Aggressiveなどでもいいような気はしている。

ツール・ライブラリ

svmsgd 実装がすごい
liblinear 最近の流行
tron
pegasos オンラインSVM
svmperf
svmlin
bsvm
tinysvm 定番
svmtorch
libsvm 定番
mysvm
svmlight 定番

論文

liblinear: A Dual Coordinate Descent Method for Large-scale Linear SVM Hsieh et al. ; 2008
           LIBLINEAR: A Library for Large Linear Classication Fan et al. ; 2008
tron:      Trust Region Newton Method for Large-Scale Logistic Regression Lin et al. ; 2008
pegasos:   Pegasos: Primal Estimated sub-GrAdient SOlver for SVM Shalev-Shwarz et al. ; 2007
svmperf:   Training Linear SVMs in Linear Time Joachims ; 2006
svmlin:    A Modified Finite Newton Method for Fast Solution of Large Scale Linear SVMs Keerthi et al. ; 2005
bsvm:      A Simple Decomposition Method for Support Vector Machines Hsu et al. ; 2002
svmtorch:  SVMTorch: Support Vector Machines for Large-Scale Regression Problems Collobert et al. ; 2001
libsvm:    LIBSVM: a Library for Support Vector Machines Chang et al. ; 2001
svmlight:  Making Large-Scale SVM Learning Practical Joachims ; 1998

リンク集

SVM - 機械学習の「朱鷺の杜Wiki」 リンクが超充実
Support Vector Machines: Software PageRankなど人気の指標があって面白い
マインドウエア -ダウンロード / クラシフィケーション用SVM (サポートベクタマシン) ソフトウェア