【データ分析】重回帰分析について
1 前提:重回帰分析とは何か?
大きくまとめると2点
①目的変数の予測
②どの要因(説明変数)がどの程度結果に影響しているか関係性を表す
よく以下の式で表されていますね。
Y=a1X1+a2X2+⋯+b
以下サイトの説明がとても分かりやすかったです。
重回帰分析とは、ある結果(目的変数)を説明する際に、関連する複数の要因(説明変数)のうち、どの変数がどの程度、結果を左右しているのかを関数の形で数値化し両者の関係を表し、それを元にして将来の予測を行う統計手法のことです。
2 重回帰分析の進め方
2.1 多重共線性(マルチコ)の有無を確認する
重回帰分析において、
説明変数は独立性を持つことで精度の高い予測が可能になります。
私は抽象的にしか出来ていないですが、、
説明変数間の相関が高まると回帰係数のばらつきが大きくなり、
結果推定値がぶれてしまう、という理解をしています。
予測出来ないという事はないですが、精度と係数の説明性に悪影響するというもの(だと思っています)。
そのため、まずデータセットを用意したら、
説明変数の相関行列をプロットして説明変数間の相関係数を見ます。
そこで強い相関が見られる場合はその説明変数を削除します。
基準はざっくりですが、理想は0.3以下→甘めにみると0.6以下でしょうか。
ここに明確なボーダーはないようです。
2.2 説明変数を標準化
次にデータを標準化します。
これは単位や大きさの違うデータを比較できるようにするためです。
冒頭の②にヒットするステップです。
例えば、売上予測を立てる場合に、
広告費数百万円と従業員数名の影響を比較する場合に、
大きさの規模が違うため比べることが難しいです。
そこで、この段階で標準化をします。
2.3 重回帰分析を実行
実行したら分析結果を見て、3点チェックします。
①予測値が正規性に従うか → 正規確率グラフで直線かどうかチェック
②補正R2(自由度調整済み決定係数R^2)>=0.7
③回帰係数のP値<0.05
①を満たさない場合は回帰分析が適していない可能性が高いです
②説明変数が不足している可能性が高いです
③P値が低い説明変数を削除して再実行する
2.4 重回帰の再実行
2.3の修正をしてら再実行します。
すべてクリアしたら予測や影響要因の分析が可能になります。
3 活用シーン
予測と説明変数の重要度可視化で考えると、
機械学習も同様のことが出来ますが、
統計的な回帰分析を用いた方がWEBマーケには向いていると考えてます。
その理由は、
①ハイサイクル → 実行までが早く、かつExcelでサクッと進められる
②説明性が高い → MLはどうしてもブラックボックスの側面を
持ってしまいますが重回帰は非データの人にも伝えやすい
活用シーンとしては・・
KPI設定時の予測値
KPI進捗時の月の着地予測
好不調の影響要因分析
などがあると思います。
分析結果を蓄積したりレポーティングすることで、
なんの説明変数を使うか、重回帰分析で目的を果たせるか?
よりハイサイクルで進めることができるようになるはずです。
そこは今後社内で取り組んでみたいところ。
4 最後に
サンプルデータ要因して分析回すの面倒なのと、
社内データは使用できないのでドキュメント中心になりました。
・・が、下手に私が用意するより分かりやすいページを、
このノート書くのに見つけました。
これらのブログを読むのが一番ですw
めちゃくちゃ分かりやすい
↓重回帰の全体
↓マルチコとVIFを用いて除外する方法
↓データ標準化する意味