AI資格ドリル
資格を選ぶ

用語比較

SVMとランダムフォレストの違い|境界の引き方と木の多数決(G検定)

SVMとランダムフォレストの違いは、予測の作り方です。SVMはクラスの境界をマージン最大で1本引き、ランダムフォレストは多数の決定木の予測を集めて決めます。

G検定の出題範囲は「代表的な手法」にサポートベクターマシン(SVM)とランダムフォレストの両方を挙げています。この記事は、scikit-learn公式文書の記述で2つを並べて整理します。

この記事の根拠と出典

各セクションの見出しの下に、公式資料で確認した内容か編集部の整理かをラベルで示しています。 試験日・料金・申込条件・試験方式は変わることがあるため、申込前に公式サイトで確認してください。

SVMとランダムフォレストの要点

SVM

どのクラスの最も近い訓練データからも距離が最大になる境界(マージン最大)を求める。決定関数に使うのは、サポートベクターと呼ぶ訓練データの一部だけ。カーネル関数で非線形にも対応できる。

ランダムフォレスト

訓練データからの復元抽出(ブートストラップ標本)で多数の決定木を作り、各分割では特徴量のランダムな部分集合だけを考える。予測は木の結果を集めて決める。

違いを表で確認

比較軸SVMランダムフォレスト
予測の作り方マージンが最大になる境界を1つ求め、その境界のどちら側かで分類するブートストラップ標本ごとに作った多数の決定木の予測を集めて決める
過学習への向き合い方正則化項とカーネル関数の選び方が効く。特徴量の数が標本数よりはるかに多いときは、とくに選び方が重要木ごとにデータと特徴量をランダムにして、1本の木の分散を下げる。バギングは、十分に育てた複雑な木のような強いモデルと相性がよい
前処理(スケーリング)特徴量の尺度に敏感。公式文書は、データのスケーリングを強く勧めている木の分割で予測を作る。尺度をそろえる勧めは、SVMの側で公式文書が述べている注意点
確率の出し方確率の推定を直接は出さない。scikit-learnでは5分割交差検証で計算するため、費用がかかる多数の木の予測を集めて、最終の予測を作る
結果の見方決定関数に使うサポートベクターを確認できる特徴量ごとの重要度(feature_importances_)を確認できる
調整する主なもの正則化の強さ(C)とカーネル関数木の本数と、各分割で考える特徴量の数(max_features)

どこで迷っているかを切り分ける

01

どちらも「分類の手法」で区別が付かない人

SVMは境界を1本求める手法、ランダムフォレストは多数の木をまとめるアンサンブル学習の手法です。設問に「マージン」「サポートベクター」があればSVM、「ブートストラップ」「多数の決定木」があればランダムフォレストです。

02

ランダムフォレストとバギングの関係で迷う人

バギングは、訓練データのランダムな部分集合ごとに同じ種類のモデルを作って集める方法です。ランダムフォレストは、これに各分割で特徴量をランダムに絞る工夫を加えた手法として説明されます。

03

手を動かして、特徴量の尺度の影響を知りたい人

SVMは特徴量の尺度に影響されるため、0〜1への変換や標準化をしたうえで使うのが公式文書の勧めです。同じ変換を、テストデータにも適用します。

具体例で使い分ける

例 1

「マージン」と「サポートベクター」が出る設問

設問が「クラスの境界を、最も近い訓練データからの距離が最大になるように求める」手法を尋ねています。

  • 公式文書は、良い分離を、どのクラスの最も近い訓練データからも距離が最大になる超平面と説明しています。この距離がマージンで、決定関数に使う訓練データの一部がサポートベクターです。
  • 多数の木を集める説明は、この設問にはありません。ランダムフォレストの説明とは別の手法です。

結論: マージン最大とサポートベクターはSVMの語です。

例 2

「ブートストラップ」と「特徴量のランダムな部分集合」が出る設問

設問が、各木を復元抽出した標本から作り、各分割では特徴量の一部だけを考える手法を尋ねています。

  • 公式文書は、ランダムフォレストの各木を、訓練データから復元抽出した標本(ブートストラップ標本)から作ると説明しています。各木を作るときに考える特徴量も、ランダムな部分集合です。
  • どちらのランダムさも、1本の木のぶれ(分散)を下げ、過学習を抑えるためのものです。

結論: 復元抽出の標本と、特徴量のランダムな部分集合はランダムフォレストの語です。

問題文から答えを選ぶ手順

  1. 1

    設問の語を見る

    「マージン」「サポートベクター」「カーネル」はSVM、「ブートストラップ」「多数の決定木」「特徴量の部分集合」はランダムフォレストを指します。

  2. 2

    手法の種類を見る

    SVMは境界を求める手法です。ランダムフォレストは、複数のモデルを組み合わせるアンサンブル学習(バギングの仲間)です。

  3. 3

    前処理の話かを見る

    特徴量の尺度をそろえる話が出たら、SVMの注意点です。

試験での見分け方

  • 1SVMはマージン最大の境界を求め、決定関数にはサポートベクターだけを使う。
  • 2SVMは特徴量の尺度に影響されるため、スケーリングが勧められる。
  • 3SVMは確率の推定を直接は出さない(scikit-learnでは5分割交差検証で計算する)。
  • 4ランダムフォレストは、ブートストラップ標本で作った木の予測を集める。各分割では特徴量のランダムな部分集合だけを考える。
  • 5バギングの目的は、基本モデル(決定木など)の分散を下げて過学習を抑えること。
  • 6ここでのscikit-learnの実装の説明は、G検定の出題範囲の語(SVM・ランダムフォレスト)の理解を助けるための整理。

誤答しやすい選択肢

SVMは「多数のモデルを組み合わせる手法」だと考える

修正: SVMは1つの境界を求める手法です。多数のモデルを組み合わせるのは、ランダムフォレストなどのアンサンブル学習です。

ランダムフォレストのランダムさを、データの抽出だけだと考える

修正: 公式文書は、木ごとの復元抽出に加えて、各分割で考える特徴量もランダムな部分集合にすると述べています。ランダムさは2つあります。

SVMの尺度の注意を、どの手法にも共通の決まりだと考える

修正: 公式文書がスケーリングを強く勧めているのはSVMです。SVMがマージンや距離で境界を決める手法であることと結びつけて覚えます。

確認問題

Q1どのクラスの最も近い訓練データからも距離が最大になる境界を求める手法は?

答え: SVM(サポートベクターマシン)

公式文書は、良い分離を、最も近い訓練データからの距離が最大になる超平面と説明しています。

Q2各木をブートストラップ標本から作り、各分割で特徴量のランダムな部分集合を考える手法は?

答え: ランダムフォレスト

公式文書は、ランダムフォレストの各木を復元抽出した標本から作り、各木の構築では特徴量のランダムな部分集合を考えると説明しています。

Q3特徴量の尺度の違いに注意し、スケーリングが勧められるのはどちらか?

答え: SVM

公式文書は、SVMのアルゴリズムは尺度に対して不変でないため、データのスケーリングを強く勧めています。

到達チェック

  • SVMが境界を求める手法で、ランダムフォレストが多数の木をまとめる手法だと説明できる
  • ランダムフォレストの2つのランダムさ(復元抽出と特徴量の部分集合)を説明できる
  • SVMでスケーリングが勧められる理由を説明できる

同じ資格で次に知りたいこと

よくある質問

QSVMとランダムフォレストの違いは何ですか?

A

予測の作り方です。SVMはマージン最大の境界を求めて分類します。ランダムフォレストは、ブートストラップ標本で作った多数の決定木の予測を集めて決めます。scikit-learn公式文書の記述にもとづきます。

QSVMで特徴量のスケーリングは必要ですか?

A

公式文書は、SVMのアルゴリズムは尺度に対して不変でないため、データのスケーリングを強く勧めています。例として、0〜1または-1〜+1への変換や、平均0・分散1への標準化を挙げ、テストデータにも同じ変換を適用するとしています。

Qランダムフォレストの「ランダム」とは何ですか?

A

2つあります。各木を、訓練データからの復元抽出標本(ブートストラップ標本)で作ることと、各木の構築で考える特徴量をランダムな部分集合にすることです。

QG検定でSVMとランダムフォレストは問われますか?

A

G検定の出題範囲は「代表的な手法」にサポートベクターマシン(SVM)とランダムフォレストを挙げています。設問の形式は受験前に公式の案内で確認してください。

次に見る比較

執筆: AI資格ドリル編集部(運営者情報を見る)