データと前処理

多重共線性 たじゅうきょうせんせい

多重共線性共線性VIF線形回帰特徴量間相関
多重共線性について教えて

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

複数の特徴量が互いに強く関連しあっている状態だよ。「身長と体重の両方」を使って体型を予測しようとすると、この2つが似たような情報を持ってるから、モデルがどちらが重要か混乱してしまう。特に線形モデルで深刻な問題になるんだ!


多重共線性とは

多重共線性(Multicollinearity)とは、回帰モデルに含まれる複数の特徴量が互いに強く相関している状態です。例えば「年収」と「月収×12」は完全に同一の情報であり、両方を特徴量に含めると多重共線性が発生します。

多重共線性が起きると、モデルの係数が不安定になります。「身長を1cm増やしたら体重はどう変わるか」を推定したいのに、身長と体重の両方が特徴量にあると、モデルがその係数を正確に算出できません。


何が問題になるのか

影響説明
係数が不安定データが少し変わるだけで係数が大きく変動
係数の符号が逆転直感と逆の正負になることがある
解釈が困難どの変数が効いているか分からなくなる
予測精度への影響予測精度は意外と影響を受けにくい(矛盾するが事実)

多重共線性の検出方法

相関行列による確認

特徴量間の相関係数が0.9以上なら要注意。

VIF(分散拡大因子)

VIF = 1 / (1 - R²)

R²:その特徴量を他の特徴量で回帰した時の決定係数

  VIF < 5    :問題なし
  5 ≤ VIF < 10:注意が必要
  VIF ≥ 10   :深刻な多重共線性

対処法

手法説明
相関の高い変数を削除片方を除去してシンプルにする
L2正則化(Ridge回帰)係数を安定させる正則化
PCAで次元削減相関変数を合成変数にまとめる
ドメイン知識で選択意味的に重要な変数だけを残す

どのモデルで問題になるか

深刻な影響あり
  - 線形回帰
  - ロジスティック回帰
  - 線形SVM

影響は少ない(ただし解釈は困難)
  - 決定木・ランダムフォレスト
  - 勾配ブースティング(XGBoost等)
  - ニューラルネットワーク

歴史と背景

  • 1930年代〜:計量経済学・統計学での重要課題として研究
  • 1960年代:VIFが正式に提案される
  • 現在機械学習ではPCAや正則化で実用的に対処

関連用語

  • 相関分析 — 多重共線性を検出する手法
  • 特徴量選択 — 多重共線性の解消に使う
  • 次元削減 — 相関変数をまとめる手法
  • L1・L2正則化 — 多重共線性への対処法のひとつ
  • 線形回帰 — 多重共線性の影響を最も受けるモデル
  • PCA — 多重共線性解消のための次元削減手法