サポートベクトル回帰 (support vector regression)

次の回帰直線と \[f(\mathbf{x})=\mathbf{x}^\top\mathbf{w}+b\] 回帰直線とサンプルの残差を \(r\) として,次の ε許容誤差 (ε-insensitive error) を考える. \[\xi(r)=\left\{\begin{array}{ll}0,&\mathrm{if}\;|r|\lt\epsilon\\|r|-\epsilon,&\mathrm{otherwise}\end{array}\right.\] このとき,サンプル\((\mathbf{x}_1,y_1),\ldots,(\mathbf{x}_N,y_N)\)について,次の最適化問題を考える. \[\min_{\mathbf{w},b}\sum_{i=1}^N\xi(y_i-f(\mathbf{x}_i))+\frac{\lambda}{2}||\mathbf{w}||^2\] ただし,\(\lambda\)は正則化パラメータ.

この双対問題は次の二次計画問題に書き換えられる. \[\displaystyle\min_{\alpha_i,\alpha_i^\ast}\;\epsilon\sum_{i=1}^N(\alpha_i^\ast+\alpha_i)-\sum_{i=1}^N y_i(\alpha_i^\ast-\alpha_i)+\frac{1}{2}\sum_{i,j=1}^N(\alpha_i^\ast-\alpha_i)(\alpha_j^\ast-\alpha_j)\mathbf{x}_i^\top\mathbf{x}_j\]

制約: \(0\le\alpha_i,\alpha_i^\ast\le 1/\lambda\) と \(\sum_{i=1}^N(\alpha_i-\alpha_i^\ast)=0\)

これがサポートベクトル回帰と呼ばれる.誤差関数にはε許容誤差以外にHuber関数なども用いられる.サンプルの内積しか使わないので,カーネルトリックが利用可能で,非線形回帰もできる.

-- しましま

関連項目

リンク集

関連文献


トップ   編集 凍結 差分 履歴 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2010-02-11 (木) 16:12:20