データと前処理

特徴量選択 とくちょうりょうせんたく

特徴量選択フィーチャーセレクション次元削減過学習防止変数選択
特徴量選択について教えて

簡単に言うとこんな感じ!

100個ある変数から「本当に予測に役立つ変数だけ」を選び出す作業だよ。「顧客の誕生日月なんて関係ない」「でも購買頻度は超大事」みたいに絞り込むことで、モデルを軽くしつつ精度を上げたり、過学習を防いだりできるんだ!


特徴量選択とは

特徴量選択(Feature Selection)とは、大量の特徴量(変数)の中から、予測に有効な特徴量のみを選び出す手法です。無関係な特徴量を削除することで、モデルの精度向上・過学習の防止・計算コスト削減・解釈性の向上が期待できます。

特徴量選択は次元削減の一種ですが、PCAなどの次元削減が「新たな合成変数を作る」のに対し、特徴量選択は「元の変数をそのまま使いつつ不要なものを除外する」点で異なります。


特徴量選択の手法

フィルター法(Filter Methods)

モデルに依存せず、統計的な基準で選択

手法基準
相関係数ターゲットとの相関が高い変数を選択
カイ二乗検定カテゴリ変数の独立性を検定
情報利得ターゲットの不確実性を減らす度合い
分散フィルタほぼ変化しない変数(分散が低い)を除去

ラッパー法(Wrapper Methods)

実際にモデルを使って特徴量の組み合わせを評価

手法説明
前向き選択(Forward Selection)1つずつ追加し精度が改善されれば残す
後ろ向き除去(Backward Elimination)全変数から1つずつ削除し影響を確認
再帰的特徴量除去(RFE)モデルの重要度を使って再帰的に削除

組み込み法(Embedded Methods)

学習アルゴリズム自体が特徴量選択を行う

手法説明
L1正則化(Lasso)不要な特徴量の係数を0に圧縮
決定木の特徴量重要度ツリーの分岐に使われた回数・ゲイン
ElasticNetL1+L2正則化の組み合わせ

歴史と背景

  • 1990年代:フィルター法が統計学から機械学習に導入
  • 2000年代:ラッパー法・組み込み法の研究が活発化
  • 2010年代:Lasso・ランダムフォレスト重要度がKaggleで定番に
  • 現在:AutoMLが特徴量選択を自動化

選択基準の考え方

ステップ1: 分散フィルタ
  → ほぼ定数の変数を除去

ステップ2: 相関分析
  → ターゲットとの相関確認
  → 特徴量間の多重共線性を確認

ステップ3: 特徴量重要度(ツリーモデル)
  → ランダムフォレストなどで粗い重要度を確認

ステップ4: RFEや交差検証
  → 精緻に選択

関連用語