重回帰モデルについて考える
重回帰のモデルは、行列で表すと、
この時、が元の値を最も近似できるようなを推定する。
単回帰モデルと重回帰モデルの違い
他の説明変数の影響を調整した上で、目的変数と説明変数の関連を見ることができるのが重回帰分析。 引用:https://www.niph.go.jp/soshiki/jinzai/download/etc/hotetsu2009.pdf
重回帰モデルの決定係数
決定係数は説明変数が増えると1に近づいてしまう傾向にある。 説明変数の数が多い場合には、そこを補正した自由度調整済み決定係数を使う。 n: サンプルサイズ、 k: 説明変数の数とすると
この決定係数の正の平方根が、「実際の目的変数と、重回帰式をあてはめて計算した推定値との相関係数」になる。
重回帰分析を行う上での注意点
相関の強い2変数が入っていると多重共線性が起きてしまい、正しく回帰係数を推定することができない。
多重共線性を防ぐ方法
相関行列を作成して、相関がないかどうかを見つける 相関がある2変数のうち、目的変数との相関が小さいものを削除したりする
stepwise法による変数選択を行う 参考:http://www.cardio.med.tohoku.ac.jp/news/pdf/20131010_slide.pdf
Elastic Netを利用する Elastic Netとかあまりよくわかってないので、勉強したい Rでスパースモデリング:Elastic Net回帰についてまとめてみる - データサイエンティスト(仮)
これらの利用の仕方は、こちらのソーシャルデータサイエンスの論文 を参考にしたい。 こちらの論文では、
Step1: 5 cross-validationでAICによるstepwise法、Elastic Netを実施
Step2: Step1によって学習データ・検証データの最小二乗誤差を確認
Step3: 学習データ・検証データの両方における最小二乗誤差が小さいモデルを選択する
という流れで、どのモデルを選択するかを考えている。