1. 定義と概要
スラック変数(記号ξ)とは、ソフトマージンSVM(多少の誤分類やマージンへの侵入を許しながら境界線を引くSVMの方式)において、各データ点がどれだけ反対側にはみ出したかの程度を表す非負の変数です。マージン(決定境界ともっとも近いデータ点との間の余白の広さ)や決定境界(データを2つのクラスに分ける境界線)に対するはみ出しが大きいほど、ξの値も大きくなります。
ξの値はデータ1点ごとに割り当てられます。たとえばマージンの外側で余裕を持って正しく分類されている点はξ=0となり、マージンには入り込んだものの正しい側にとどまっている点は、侵入した量に応じた小さな正の値をとります。
SVMは本来、2つのクラスを隙間なく完全に分離できる境界線を引く方式、いわゆるハードマージンSVM(誤分類を一切許さず完全に分離できることを前提にしたSVMの方式)として考えられていました。しかし現実のデータには外れ値(平均的な範囲から大きく外れた値)やノイズが混ざり、完全に分離できないケースが少なくありません。
この課題に対応するため、多少の誤分類やマージン侵入を許容しつつ、その許容量にペナルティを課す仕組みとしてスラック変数が導入され、ソフトマージンSVMという方式が成立しています。
2. 試験対策ポイント
理解するうえで中心になるのは、スラック変数ξの値がとる3段階の解釈です。この3区分は混同しやすい組み合わせなので、値の範囲とデータ点の状態を対応づけて押さえておきたいところです。
| ξの値 | データ点の状態 |
|---|---|
| ξ=0 | マージンの外側で余裕を持って正しく分類されている |
| 0<ξ≤1 | マージンの内側に入り込んでいるが、決定境界は越えていない正しい側 |
| ξ>1 | 決定境界を越えて誤った側に分類されている |
境界を越えたかどうかがξ=1をまたぐかどうかに対応している、という並びで覚えておくと取り違えにくくなります。
ソフトマージンSVMの目的関数(学習の過程で最小化、または最大化したい対象を表す数式)は、マージンの最大化と、全データ点のスラック変数の合計Σξに対するペナルティという2つの要素の和で構成されています。この2つはトレードオフ(一方を重視するともう一方が犠牲になる関係)にあり、マージンを広く取ろうとするほどスラック変数の合計は増えやすく、逆にスラック変数を抑えようとするほどマージンは狭くなる傾向があります。
このトレードオフの重みを調整するのが、正則化パラメータ(誤分類やマージン侵入をどこまで許すかの度合いを調整する数値)Cです。Cを大きくするほどスラック変数へのペナルティが強まり、誤分類やマージン侵入への許容度が下がって境界はハードマージンに近づきます。
反対にCを小さくすると誤分類への許容度が増し、マージンの広さを重視した境界になります。Cの大小と許容度の向きを逆にした記述は、順序が逆になりやすい点です。
また、ハードマージンSVMはスラック変数を持たず、全データ点でξ=0となる完全な線形分離を前提とする方式です。スラック変数の有無が、ハードマージンとソフトマージンを区別する境界線になっています。
3. 関連概念との比較・相違点
ハードマージンSVMとの最大の違いは、スラック変数の有無にあります。ハードマージンSVMは全データ点でξ=0であることを前提に、完全な線形分離を求める方式です。これに対してソフトマージンSVMは、ξ>0となる点、つまりマージンへの侵入や誤分類を一定量許容し、外れ値やノイズを含む現実のデータに対応します。
前提の違いは、両者を見分けるもっとも基本的な手がかりになっています。両方式を観点ごとに並べると、次のように対応します。
| 観点 | ハードマージンSVM | ソフトマージンSVM |
|---|---|---|
| スラック変数 | 持たない・全データ点でξ=0 | 導入する・ξが正の値をとる点を許容 |
| 前提とするデータ | 完全に線形分離できるデータ | 外れ値やノイズを含む現実のデータ |
| 誤分類・マージン侵入 | 一切許さない | 一定量を許容してペナルティを課す |
正則化パラメータCとの違いは、担う役割そのものにあります。スラック変数ξはデータ点1つひとつのはみ出し量を表す変数であるのに対し、Cはそのはみ出し全体に対するペナルティの重みを決める係数です。
いいかえれば、ξは学習の結果として個々の点に定まる値であり、Cはその値をどれだけ厳しく評価するかを左右する係数だという関係にあります。変数と係数という役割の違いは、両者を混同しないための軸になっています。ξの値そのものを大きく・小さくする係数がCであり、ξとCを同列の数値として扱うと関係を取り違えやすくなります。
4. ビジネス・実務での活用シナリオ
金融の与信審査や不正検知の分野では、取引データにノイズや例外的な事例が混ざるため、一部の誤分類を許容するソフトマージンSVMが与信スコアリングや不正検知モデルに使われています。スラック変数の合計を抑えつつ、未知のデータに対しても精度を保つ汎化性能(訓練データだけでなく未知のデータに対しても正しく予測できる能力)を確保する狙いがあります。
製造業の品質検査では、検査データに計測誤差が含まれ、完全な分離を求めることが非現実的です。スラック変数を用いたソフトマージンSVMによって良品と不良品を分ける境界を柔軟に設定し、外れ値1点に境界が引きずられる事態を防いでいます。
医療の分野でも、検査値をもとにした診断支援にソフトマージンSVMが用いられています。検査値の分布には個人差やばらつきがあるため、一部のデータ点がマージンに侵入することを許容しながら頑健な識別境界を学習し、極端な外れ値による誤判定を抑えています。
5. 要点まとめ
- スラック変数(ξ)はソフトマージンSVMで各データ点がマージンや決定境界をどれだけ越えたかを表す非負の変数で、ξ=0・0<ξ≤1・ξ>1の3段階で解釈されます。
- 目的関数はマージン最大化とスラック変数の合計へのペナルティのトレードオフで構成され、正則化パラメータCがそのバランスを調整します。
- ハードマージンSVMはスラック変数を持たず完全な線形分離を前提にするのに対し、ソフトマージンSVMはスラック変数の導入でノイズを含む現実のデータに対応します。
6. 確認問題
問1スラック変数ξの値がゼロであるデータ点は、マージンの外側で余裕を持って正しく分類されている。
解答・解説をみる
○ 正しい
ξ=0はマージン侵入も誤分類もない状態を表します。0<ξ≤1はマージンの内側に入り込んでいるが正しい側、ξ>1は誤分類という3段階の区分の起点にあたります。
問2スラック変数の値が1を超えるデータ点は、決定境界を挟んで誤った側に分類されている。
解答・解説をみる
○ 正しい
ξ>1は決定境界を越えて反対側に入り込んだ状態、つまり誤分類を意味します。0<ξ≤1がマージン内にとどまりつつ正しい側である点との違いが分かれ目です。
問3正則化パラメータCを大きくするほど、スラック変数への許容度が高まり、境界はハードマージンから遠ざかる。
解答・解説をみる
× 誤り
正しくは、Cを大きくするほどスラック変数へのペナルティが強まり、誤分類への許容度は下がって境界はハードマージンに近づきます。Cの大小と許容度の向きを取り違えた記述です。

