AI用語集・機械学習の概要

マージン最大化とは

まーじんさいだいかmargin maximization

別名:最大マージン

  • シラバス 技術7
  • ◯×チェック3問
  • 練習問題2問

最終更新日:作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未出典

1行定義

マージン最大化とは、クラスを分ける境界と、境界に最も近いデータとの距離(マージン)が最も大きくなるように境界を決める考え方のことです。

くわしく

マージン最大化は、サポートベクターマシン(SVM)が分類の境界を決めるときの基準です。2つのクラスを分ける直線(高次元では超平面)は、多くの場合いくつも引けます。その中から、どちらのクラスからもできるだけ離れた境界を1つ選ぶのがマージン最大化です。

マージンとサポートベクター

マージンは、境界と、境界に最も近いデータとの距離です。この最も近いデータをサポートベクターと呼びます。境界の位置はサポートベクターだけで決まり、遠くにある大多数のデータは影響しません。

なぜマージンを広く取るのか

境界がデータのすぐそばを通ると、少し違う新しいデータが来ただけで、反対側に分類されてしまいます。両側に余裕を持たせた境界は、未知のデータに対しても誤りにくくなります。つまりマージン最大化は、汎化性能を高めるための考え方です。

数式では、境界を w・x + b = 0 と表し、サポートベクターで |w・x + b| = 1 となるように尺度をそろえると、マージンは 1 / ||w||(両側を合わせた幅は 2 / ||w||)になります。そのため、すべてのデータを正しく分けるという条件のもとで、||w|| を最小にする最適化問題として解きます。

ハードマージンとソフトマージン

すべての訓練データを完全に分けることを求める方式を、ハードマージンと呼びます。しかし現実のデータにはノイズや外れ値があり、完全には分けられないことが多くあります。そこで、境界を越えるデータをある程度許し、そのはみ出しに罰(ペナルティ)を与える方式を使います。これがソフトマージンで、罰の強さはパラメータCで調整します。

直線では分けられないデータには、カーネルトリックを組み合わせます。高次元の空間でマージン最大化を行うことで、元の空間では曲がった境界を学習できます。

覚え方

「境界は、両側のいちばん近いデータからなるべく遠くに引く」と覚えます。

G検定での出題

出題のされ方

SVMが境界を決める基準として、マージンとサポートベクターの意味が問われます。ハードマージンとソフトマージンの違いや、カーネルトリックと組み合わせた非線形な分類との関係も問われます。

◯×チェック

3問

次の文が正しいか、誤りかを選んでください。

  1. マージン最大化で決めた境界は、境界から遠く離れたデータを少し動かしても、サポートベクターが変わらなければ変わらない。

    答えを見る

    答え ◯ 正しい

    境界の位置を決めるのは、境界に最も近いサポートベクターだけです。遠くのデータは影響しません。

  2. ハードマージンは、訓練データの一部が境界を越えたり、マージンの内側に入ったりすることを許す方式である。

    答えを見る

    答え × 誤り

    はみ出しを許すのはソフトマージンです。ハードマージンは、すべての訓練データを誤りなく分けることを前提にします。

  3. カーネルトリックを使って非線形な境界を学習するSVMでは、マージン最大化の考え方は使われない。

    答えを見る

    答え × 誤り

    カーネルトリックを使うSVMも、写像した高次元の空間でマージンを最大化します。その境界を元の空間で見ると、曲がった境界になります。

この用語の練習問題

2問
  1. #0021SVMのマージンとカーネル難易度 基礎・組合せ未回答
  2. #0330SVMとロジスティック回帰の違い難易度 基礎・単一選択未回答

出典

作成:ウカトレ編集部(AIで作成し、別のAIが一次資料と照合)人による確認:未 最終確認日: 対応シラバス:シラバス第1.4版 技術7

誤りを報告

表示設定

テーマ
文字の大きさ
問題演習