用語比較
ハードマージンとソフトマージンの違い|誤分類を許さないか、許すかで見分ける(G検定のSVM)
ハードマージンは、訓練データを誤りなく分けることを求めるマージン最大化です。ソフトマージンは、マージンの内側に入る標本や誤分類を一部許し、その分にペナルティを課すマージン最大化です。
G検定では、SVMの設問で、2つの考え方が混同されやすくなります。ハードマージンは1本の境界で完全に分けられるデータ向け、ソフトマージンは完全には分けられないデータにも使えると覚えると、選択肢を整理できます。
このページは、scikit-learn公式ドキュメントのSVMの節と、Cortes・Vapnikの論文『Support-vector networks』(1995年)の抄録をもとに、誤分類の扱い・分けられるデータ・パラメータCの役割の3点で比べます。数値の例は、説明用の架空のデータです。
この記事の目次
この記事の根拠と出典
各セクションの見出しの下に、公式資料で確認した内容か編集部の整理かをラベルで示しています。 試験日・料金・申込条件・試験方式は変わることがあるため、申込前に公式サイトで確認してください。G検定の一次情報確認日: 2026-10-02。
結論
ハードマージン
訓練データが誤りなく分離できる場合を扱う。マージンの内側にも誤分類にも、標本を許さない。
ソフトマージン
正しいマージン境界から外れる標本を許し、その距離にペナルティを課す。ペナルティの強さをパラメータCが決める。
見分け方
「1つも誤分類を許さない」ならハードマージン、「許してペナルティを課す」ならソフトマージン。
違いを表で確認
| 比較軸 | ハードマージン | ソフトマージン |
|---|---|---|
| 誤分類の扱い | ハードマージン:許さない(すべての訓練データを正しい側に置く) | ソフトマージン:許す(許した分にペナルティを課す) |
| 分けられるデータ | ハードマージン:誤りなく分離できる訓練データ | ソフトマージン:完全には分けられない訓練データにも使える |
| パラメータCの役割 | ハードマージン:誤分類を許さないので、Cで許す量を調整する場面がない | ソフトマージン:Cがペナルティの強さを決める。高いCはすべての訓練例を正しく分類することを狙い、低いCは決定面を滑らかにする |
| サポートベクトル | ハードマージン:マージン境界の上にある標本 | ソフトマージン:マージン境界の内側にある標本も、サポートベクトルになる |
| 使うときの前提 | ハードマージン:線形分離可能であること | ソフトマージン:線形分離可能でなくてもよい |
G検定の学習に使う書籍(Amazon)
試験範囲を通して読むときの1冊です。読んだ章は、このサイトの章別問題で確かめられます。
どこで迷っているかを切り分ける
「誤分類を許す」の語が出てどちらか迷う人
マージンの内側の標本や誤分類を許してペナルティを課すのは、ソフトマージンです。ハードマージンは、誤りなく分けられる場合を扱います。
パラメータCの語が出てどちらか迷う人
Cは、ペナルティの強さを決める値で、ソフトマージンの語です。scikit-learnは、Cを逆正則化パラメータとして働くと説明しています。
Cを大きくすると何が起こるか聞かれる人
高いCは、すべての訓練例を正しく分類することを狙います。低いCは、決定面を滑らかにします。誤分類へのペナルティが重くなるほど、訓練データに合わせようとします。
ロジスティック回帰との違いも整理したい人
どちらの手法かでなく、SVMの中の誤分類の扱いを聞く設問です。SVMとロジスティック回帰の違いは、別のページで比べています。
具体例で使い分ける
例 1
スラック(マージンからの不足分)を計算する(架空のデータ)
y(w·x+b)が1以上なら、標本はマージン境界の外の正しい側にある。標本Aはy(w·x+b)=0.4、標本Bは=-0.5だった。
- 標本Aの不足分ζは、1-0.4=0.6です。正しい側にありますが、マージンの内側です。
- 標本Bの不足分ζは、1-(-0.5)=1.5です。符号が負なので、誤分類されています。
結論: ハードマージンは、このような標本を許しません。ソフトマージンは、許したうえで不足分ζにペナルティを課します。
例 2
Cを変えたときのペナルティ(架空のデータ)
上の2標本のζの合計は、0.6+1.5=2.1。ペナルティ項を、Cにζの合計を掛けた値とする。
- C=10なら、10×2.1=21です。
- C=0.1なら、0.1×2.1=0.21です。
結論: Cが大きいほど、同じ誤分類が重く罰せられます。そのため、高いCは誤分類を避ける方向に境界を動かします。
問題文から答えを選ぶ手順
- 1
誤分類の扱いを読む
1つも許さないならハードマージン、許すならソフトマージンです。
- 2
データを読む
誤りなく分離できる訓練データならハードマージン、完全には分けられないならソフトマージンです。
- 3
パラメータを読む
ペナルティの強さのCが出てきたら、ソフトマージンです。
- 4
サポートベクトルを読む
マージン境界の内側の標本も含むなら、ソフトマージンです。
試験での見分け方
- 1誤分類を許さないのがハードマージン。
- 2誤分類やマージンの内側を許してペナルティを課すのがソフトマージン。
- 3ペナルティの強さを決める値が、パラメータC。
- 4線形分離可能でないデータには、ソフトマージンを使う。
誤答しやすい選択肢
ソフトマージンは、マージンを使わない手法だと考える
修正: ソフトマージンも、マージンを最大化する考え方のままです。マージンの内側に入る標本を許し、その分にペナルティを課す点が違います。
Cが大きいほど、決定面が滑らかになると考える
修正: scikit-learnは、低いCが決定面を滑らかにし、高いCがすべての訓練例を正しく分類することを狙うと説明しています。滑らかになるのは、Cが小さいときです。
サポートベクトルは、常に境界の上にあると考える
修正: scikit-learnは、問題が線形分離可能でないとき、サポートベクトルはマージン境界の内側にある標本だと説明しています。
確認問題
Q1訓練データを誤りなく分けることを求めるマージン最大化は?
答え: ハードマージン
誤分類もマージンの内側の標本も許しません。
Q2誤分類を一部許し、その分にペナルティを課すマージン最大化は?
答え: ソフトマージン
ペナルティの強さをパラメータCが決めます。
Q3ζの合計が2.1のとき、C=10のペナルティ項(C×ζの合計)は?
答え: 21
10×2.1=21です。
到達チェック
- ハードマージンは誤分類を許さないと言える
- ソフトマージンは誤分類を許してペナルティを課すと言える
- 低いCは決定面を滑らかにすると言える
関連ページで確認する
同じ資格で次に知りたいこと
- ReLUとLeaky ReLUの違い|負の入力で勾配が0になるか、小さく残るかで見分ける(G検定)
ReLUとLeaky ReLUの違いを、負の入力での出力・勾配・dying ReLUへの強さで整理。x=-2での出力と微分の計算例、10層の勾配の積の例、確認問題つき。G検定の活性化関数の設問に使える。
- tanhとシグモイドの違い|出力の範囲と0での値で見分ける(G検定の活性化関数)
tanh(ハイパボリックタンジェント)とシグモイド(ロジスティック)の違いを、出力の範囲・0での値・微分の最大値で整理。tanh(z)=2σ(2z)−1の確認、勾配の計算例、確認問題つき。G検定の活性化関数の設問に使える。
- 早期終了(early stopping)とドロップアウトの違い|学習を止める対策か、ユニットを外す対策かで見分ける(G検定)
早期終了とドロップアウトの違いを、何をするか・使うデータ・推論時の扱いで整理。検証誤差の推移から止める回を読む計算例、取り外すユニットの数の例、確認問題つき。G検定の過学習対策の設問に使える。
よくある質問
Qハードマージンは、実際のデータでは使いにくい?
scikit-learnは、問題は通常ハイパープレーンで完全には分けられないと説明しています。誤りなく分けられるデータにだけ使えるので、使える場面は限られます。
QCはどう決める?
scikit-learnは、CとRBFカーネルのgammaを指数的に離した値で、GridSearchCVで選ぶことを勧めています。
Qソフトマージンの考え方は、いつ提案された?
Cortes・Vapnikの1995年の論文の抄録が、誤りなく分離できる場合の結果を、分離できない訓練データへ拡張すると述べています。
次に見る比較
- G検定・DS検定・統計検定2級で重なる用語10語の比較
同じ名前の用語の定義と収録章を、資格ごとに並べます。
- ベイズの定理と条件付き確率の違い(統計検定2級の式と計算例)
求める確率の向きの違いと、陽性になる確率の計算例を確かめます。
- 紛らわしい用語ペア早見表
混同しやすい用語の違いと判定の手掛かりを、資格別の一覧で確かめます。
執筆: ミナト編集部(運営者情報を見る)
