サポートベクターマシン
出典: フリー百科事典『ウィキペディア(Wikipedia)』
サポートベクターマシン(Support vector machine; 以降 SVM と表記)は、 教師あり学習を用いる識別手法の一つである。 パターン認識や回帰分析へ適用できる。
[編集] 基本的な考え方
SVMではデータを二つの種類に分離するために、各データ点との距離が最大となる 分離平面(超平面)を求めるマージン最大化という考え方を用いる。
最も簡単な場合である、与えられたデータを線形に分離することが可能である (例えば、3次元のデータを2次元平面で完全に区切ることができる)場合を考えよう。
このとき、SVMは与えられた学習用サンプルを、もっとも大胆に区切る境目を学習する。 学習の結果得られた超平面は、境界に最も近いサンプルとの距離(マージン)が 最大となるものとなる。
学習過程はラグランジュ乗数法を用いることにより、 最適化問題の一種である凸二次計画問題で定式化される。 ただし、学習サンプル数が増えると急速に計算量が増大するため、 分割統治法の考え方を用いた手法なども提案されている。
[編集] 線形分離不可能な問題への適用
サポートベクターマシンは、本来は線形分離不可能な問題には適用できない。 しかし、再生核ヒルベルト空間の理論を取り入れたカーネル関数を用いて パターンを有限もしくは無限次元の特徴空間へ写像し、 特徴空間上で線形分離を行う手法が 1992年に Vladimir Vapnik らによって提案された。
これにより、非線形分類問題にも優れて性能を発揮することがわかり、 近年特に注目を集めている。
なお、カーネル関数を取り入れた一連の手法では、 どのような写像が行われるか知らずに計算できることから、 カーネルトリック(Kernel Trick)と呼ばれている。