ソフトマージン
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/06/05 23:41 UTC 版)
「サポートベクターマシン」の記事における「ソフトマージン」の解説
SVMを拡張して線形分離可能ではないデータを扱えるようにするためには、ヒンジ損失(英語版)関数が有用である。 max ( 0 , 1 − y i ( w T x i − b ) ) . {\displaystyle \max \left(0,1-y_{i}(\mathbf {w} ^{T}\mathbf {x} _{i}-b)\right).} ここで、 y i {\displaystyle y_{i}} は i {\displaystyle i} 番目のターゲット(すなわち、1または−1)であり、 w T x i − b {\displaystyle \mathbf {w} ^{T}\mathbf {x} _{i}-b} は i {\displaystyle i} 番目の出力である。 この関数の値は、(1) の制約が満たされている場合、つまり、 x i {\displaystyle \mathbf {x} _{i}} がマージンの正しい側にある場合にはゼロとなる。マージンの反対側にあるデータに対しては、関数の値はマージンからの距離に比例する。 最適化の目的は、以下を最小化することである。 [ 1 n ∑ i = 1 n max ( 0 , 1 − y i ( w T x i − b ) ) ] + λ ‖ w ‖ 2 , {\displaystyle \left[{\frac {1}{n}}\sum _{i=1}^{n}\max \left(0,1-y_{i}(\mathbf {w} ^{T}\mathbf {x} _{i}-b)\right)\right]+\lambda \lVert \mathbf {w} \rVert ^{2},} パラメータ λ {\displaystyle \lambda } は、マージンサイズを大きくすることと、 x i {\displaystyle \mathbf {x} _{i}} がマージンの正しい側にあることとのトレードオフを決定する。 λ {\displaystyle \lambda } が充分に小さいとき、損失関数の第2項は無視可能になり、ハードマージンSVMと同様の振る舞いをする。
※この「ソフトマージン」の解説は、「サポートベクターマシン」の解説の一部です。
「ソフトマージン」を含む「サポートベクターマシン」の記事については、「サポートベクターマシン」の概要を参照ください。
- ソフトマージンのページへのリンク