約30の独立変数を持つデータセットがあり、それらと従属変数との関係を調べるために一般化線形モデル(GLM)を構築したいと思います。
この状況で教えられた方法である段階的回帰は、現在統計的な罪と見なされていることを認識しています。
この状況では、どのような最新のモデル選択方法を使用する必要がありますか?
約30の独立変数を持つデータセットがあり、それらと従属変数との関係を調べるために一般化線形モデル(GLM)を構築したいと思います。
この状況で教えられた方法である段階的回帰は、現在統計的な罪と見なされていることを認識しています。
この状況では、どのような最新のモデル選択方法を使用する必要がありますか?
回答:
Stepwise Regressionにはいくつかの選択肢があります。私が見た中で最も使用されているのは:
PLS回帰とLASSOの両方は、次のようなRパッケージで実装されます。
PLS:http : //cran.r-project.org/web/packages/pls/および
LARS:http : //cran.r-project.org/web/packages/lars/index.html
従属変数と独立変数の関係のみを調べたい場合(たとえば、統計的有意性検定は不要)、ランダムフォレストや分類/回帰ツリーなどの機械学習法もお勧めします。ランダムフォレストは、従属変数と独立変数の間の複雑な非線形関係を近似することもできます。これは、線形手法(線形回帰など)では明らかにされなかった可能性があります。
機械学習の良い出発点は、CRANの機械学習タスクビューです。
機械学習タスクビュー:http : //cran.r-project.org/web/views/MachineLearning.html
変数の選択と正則化のために考慮できる別のオプションは、エラスティックネットです。Rにはglmnetパッケージを介して実装されています。
モデルの平均化は、進むべき1つの方法です(情報理論的アプローチ)。Rパッケージglmultiは、予測変数のすべての組み合わせに対して線形モデルを実行し、これらの結果に対してモデル平均化を実行できます。
http://sites.google.com/site/mcgillbgsa/workshops/glmultiをご覧ください
ただし、予測変数間の共線性を最初に調査することを忘れないでください。分散インフレーション係数(Rパッケージ "car"で利用可能)はここで役立ちます。
MuMIn
、AICcmodavg
パッケージ、glmulti
大きなモデルセットについては賢いです。