次へ: 正則化とソフトマージン
上へ: パーセプトロンからサポートベクタマシンへ
戻る: カーネルトリック
線形分離の場合,サンプルを分離する超平面は一般に無限にたくさんある.
次元を上げれば上げるほどその自由度は高くなる.
パーセプトロンはそのなかのどれかに収束することしか保証してくれない.
サポートベクタマシン (SVM) では,そのような超平面のうち
一番近いサンプル点までの距離(これをマージンという)が最も大きいものを選ぶ.
とりあえずカーネルのことは忘れて,特徴空間のサンプルを超平面で分けること
を考えよう. 識別超平面
は
に任
意の正定数を掛けても不変なので,正のサンプルに対して
,負のサンプルに対しては
を満たすようにできる.
少なくとも一つがこの等式を満たしているとすると,マージンが
であることは容易にわかる.
従って,解くべき問題は以下の制約付き最適問題に帰着される.
このままでは高次元での内積が入っているので,Lagrange の未定係数を導入し,
で微分して得られる式を代入すると,Wolfe-dual と呼ばれる双対問題
が得られる. ただし
同士の内積はカーネルで置き換えた.
この解を用いて,重み係数
は
と書くことができ,入出力関数に入れると
|
(4) |
となり,サンプル点でのカーネル関数の形で書けることがわかる.
こうして導かれた識別器を(ハードマージン)SVMと呼ぶ.
さて,最適化問題の形を見ると,線形制約のもとでの最適化であり,
最適化関数
は凸な 2 次関数である. このような問題は
凸 2 次計画問題と呼ばれる.
凸 2 次計画問題であることによって,SVM のもつ
以下のような特長が示される.
- 大域的最適解を一つだけ持つ. これは多くの複雑な学習モデルが
局所最適解を持つのに対して優位性がある.
- Karush-Kuhn-Tucker 条件により, となるサンプルは制約の
不等式を等号で満たすことがわかる. つまり,入出力関数は
超平面に最も近いサンプルだけに依存した関数となる. 多くの場合これは
サンプル数よりもずっと少ないので,識別を行う際には計算量
の大きな節約となる. でないサンプルを超平面の支持関数
という意味でサポートベクタと呼ぶ.
この基底関数のスパースネスは他のカーネルベースの方法にはない
SVM の大きな特長である.
- 凸 2 次計画問題は数理計画法の基本的なパッケージに含まれていて
比較的高速に解くことができる.
Shotaro Akaho
平成15年7月18日