next up previous
次へ: 向きの変化への対応 上へ: 非線形手法への拡張 戻る: カーネル判別分析

カーネルサポートベクターマシン

サポートベクターマシンの式(23)や式 (36)の目的関数$L_{D}$は、

$\displaystyle L_{D}(\mbox{\boldmath$\alpha$})$ $\textstyle =$ $\displaystyle \sum_{i=1}^{N} \alpha_i - \frac{1}{2} \sum_{i,j=1}^{N} \alpha_i \alpha_j t_i t_j \phi(\mbox{\boldmath$x$}_i)^T \phi(\mbox{\boldmath$x$}_j)$  
  $\textstyle =$ $\displaystyle \sum_{i=1}^{N} \alpha_i - \frac{1}{2} \sum_{i,j=1}^{N} \alpha_i \alpha_j t_i t_j K(\mbox{\boldmath$x$}_i, \mbox{\boldmath$x$}_j)$ (70)

のように内積をカーネルで置き換えた形に書ける。また、式(26) から最適な識別関数は、
$\displaystyle y$ $\textstyle =$ $\displaystyle \mbox{sign} (\mbox{\boldmath$w$}^{*T} \phi(\mbox{\boldmath$x$}) - h^{*})$  
  $\textstyle =$ $\displaystyle \mbox{sign}(\sum_{i \in S} \alpha^{*}_i t_i \phi(\mbox{\boldmath$x$}_i)^T \phi(\mbox{\boldmath$x$}) - h^{*})$  
  $\textstyle =$ $\displaystyle \mbox{sign}(\sum_{i \in S} \alpha^{*}_i t_i K(\mbox{\boldmath$x$}_i, \mbox{\boldmath$x$}) - h^{*})$ (71)

のようにサポートベクターマシンの内積をカーネルで置き換えた形に書ける。こ こで、この式にシグモイドカーネルを代入すると、いわゆる3層の多層パーセプ トロンと同じ構造となる。また、Gaussカーネルを代入すると、Radial Basis Function (RBF)ネットワークと同じ構造になり、構造的には従来のニューラルネッ トワークと同じになる。しかし、カーネルトリックを用いて非線形に拡張したサ ポートベクターマシンでは、中間層から出力層への結合荷重のみが学習により決 定され、前段の入力層から中間層への結合荷重は固定で、訓練データから機械的 に求められる。また、中間層のユニット数が非常に大きく、訓練サンプル数と同 じになる。つまり、カーネルトリックを用いて非線形に拡張したサポートベクター マシンでは、入力層から出力層への結合荷重を適応的に学習により求めない代わ りにあらかじめ中間層に非常に多くのユニットを用意することで複雑な非線形写 像を構成しようとする。

Osuna等は、サポートベクターマシンを顔検出に応用し、その有効性を示した [76].



平成14年11月18日