「手元にあるデータ、全部ぶち込めば精度が上がるんじゃないの?」
もしあなたが今、そんな風に考えているとしたら、少しだけストップしてください。重回帰分析の世界では、変数は「多ければいい」というものではありません。むしろ、適当に選んだ変数のせいで、分析結果がめちゃくちゃになってしまうことすらあるんです。
データ分析の現場で最も頭を悩ませる「説明変数の選定」。今回は、初心者から実務家までが迷わずに済むよう、精度の高いモデルを作るための基準と、絶対にハマってはいけない落とし穴について、じっくりとお話ししていきます。
なぜ「説明変数の選び方」で分析の成否が決まるのか
重回帰分析の目的は、ある結果(目的変数)に対して、どの要因(説明変数)がどれくらい影響を与えているかを明らかにすることです。
例えば、商品の売上を予測したいとき。気温、広告費、ライバル店の数、店員の接客スキルなど、候補はたくさんありますよね。ここで「とりあえず全部入れよう」とすると、モデルは複雑になりすぎて、かえって真実が見えなくなります。
これを統計学の世界では「過学習(オーバーフィッティング)」と呼びます。手元のデータには完璧にフィットするけれど、新しいデータに使ってみると全く当たらない。そんな「内弁慶なモデル」にならないために、変数の選び方が重要になるわけです。
良い説明変数を選ぶための「3つの絶対基準」
納得感のある分析結果を導き出すために、プロが必ずチェックしている3つの基準があります。
1. 目的変数との間に「理屈」があること
統計ソフトを使えば、全く関係のないデータ同士でも「なんとなくそれっぽい数字」が出てしまいます。しかし、大事なのは「なぜその変数が影響を与えるのか」という論理的な裏付けです。
相関係数が高いからといって飛びつく前に、まずはドメイン知識(その分野の経験や知識)に照らし合わせて、因果関係が想定できるかを確認しましょう。
2. 変数同士が「仲良すぎない」こと
これが後ほど詳しく解説する「多重共線性(マルチコ)」の問題です。説明変数Aと説明変数Bが似通った性質を持っていると、分析結果が不安定になります。お互いに独立した、異なる角度から目的変数を照らしてくれる変数を選ぶのがコツです。
3. データが正確で、欠損が少ないこと
どんなに理論的に素晴らしい変数でも、中身がスカスカだったり、入力ミスばかりだったりしては意味がありません。分析に投入する前に、データの分布や異常値の有無を必ずチェックしてください。
統計的な手法で機械的に選ぶメリットとデメリット
「自分で選ぶのは主観が入りそうで怖い」という方のために、統計ソフトが自動で変数を選んでくれる手法も存在します。代表的な3つの方法を見ていきましょう。
前進選択法(Forward Selection)
変数がない状態からスタートし、目的変数を最もよく説明する変数を1つずつ足していく方法です。計算が速く、直感的にも分かりやすいのが特徴です。ただし、一度入れた変数は最後まで残るため、後から入れた変数との組み合わせが悪くても修正できないという弱点があります。
後退削除法(Backward Elimination)
最初に候補となる変数をすべて投入し、そこから影響の少ない(有意でない)変数を1つずつ削っていく方法です。全体像を見てから削るため、変数同士の関連性を考慮しやすいというメリットがありますが、最初に大量のデータを準備する必要があります。
ステップワイズ法(Stepwise Method)
前進選択と後退削除を組み合わせた、いわば「いいとこ取り」の手法です。変数を足したり引いたりしながら、最適な組み合わせを探ります。非常に便利ですが、機械的に選ばれるため、理論的に説明がつかない変数が残ってしまうリスクも孕んでいます。
これらの手法は、あくまで「候補を絞り込むためのガイド」として使い、最終的な判断は人間の目で行うのがベストです。
現場で最も恐れられる「多重共線性(マルチコ)」の正体
重回帰分析を語る上で避けて通れないのが「多重共線性(Multicollinearity)」、通称マルチコです。これは、説明変数の中に、お互いに強い相関関係にあるものが混ざっている状態を指します。
例えば、家賃を予測するモデルに「部屋の面積(平方メートル)」と「畳数(何畳か)」を両方入れたらどうなるでしょうか。この2つは単位が違うだけで、本質的には同じ情報を表していますよね。
このような変数を同時に投入すると、以下のような不具合が起きます。
- 本来は重要なはずの変数が「有意ではない(影響がない)」と判定される。
- 係数のプラスマイナスが逆転する(面積が広いほど家賃が下がる、といったおかしな結果が出る)。
- データを少し入れ替えただけで、分析結果がコロコロ変わる。
これを防ぐための指標が「VIF(分散膨張係数)」です。一般的に、VIFの値が10を超えるとマルチコの疑いが強く、5以上でも注意が必要とされています。似たような意味を持つ変数は、どちらか一方に絞る勇気が必要です。
質的なデータを変数に入れる方法(ダミー変数の活用)
数値ではないデータ、例えば「性別(男性・女性)」や「地域(東京・大阪・名古屋)」などを説明変数に組み込みたい場面もありますよね。これらは「ダミー変数」という手法を使えば、重回帰分析に取り込むことができます。
やり方は簡単で、そのカテゴリーに該当すれば「1」、そうでなければ「0」という数値に置き換えるだけです。
ここで一つ、重要なルールがあります。それは「カテゴリー数マイナス1」の数だけ変数を作る、ということです。
例えば「信号の色(赤・青・黄)」なら、変数は「赤かどうか」「青かどうか」の2つで済みます。両方が「0」であれば、消去法で自動的に「黄」であることが確定するからです。
全部入れてしまうと、これまた計算上のエラー(マルチコの一種)が起きてしまうので注意しましょう。
自由度調整済み決定係数とAICで「モデルの良さ」を測る
変数を入れ替えていくつかモデルを作ったら、どれが一番優れているかを比較する必要があります。このとき、単純な「決定係数(R²)」だけを見てはいけません。
決定係数は、無関係なゴミのような変数を足していくだけでも、数値が上がってしまう性質があるからです。
チェックすべきは以下の2つです。
自由度調整済み決定係数
変数の数による「水増し」を補正した決定係数です。これが高いほど、無駄な変数を使わずに効率よく説明できているモデルと言えます。
AIC(赤池情報量基準)
「モデルのシンプルさ」と「当てはまりの良さ」のバランスを数値化したものです。この値が「小さければ小さいほど良いモデル」と判断します。実務では、このAICを最小にする組み合わせを探すのが一般的です。
住宅価格予測で考える、実践的な変数の選び方
具体的なイメージを持つために、住宅価格を予測するケースを考えてみましょう。手元には以下のデータがあるとします。
- 目的変数:住宅価格
- 説明変数候補:
- 築年数
- 駅から徒歩何分か
- 部屋の広さ
- 窓の数
- 近隣のコンビニ数
- 土地の公示価格
まず、理論的に考えます。「築年数」「駅からの距離」「広さ」は間違いなく影響しそうです。
次にマルチコを警戒します。「広さ」と「窓の数」は相関が強そうなので、より本質的な「広さ」に絞ります。
「近隣のコンビニ数」はどうでしょうか。便利ではありますが、価格を決定づける直接的な要因としては弱いかもしれません。まずは外してモデルを作り、後で足してみてAICが下がるかどうかを確認します。
「土地の公示価格」は「住宅価格」とほぼ同じ意味を持ってしまう(自己相関に近い)可能性があるため、慎重に扱う必要があります。
このように、ひとつひとつの変数と対話するように選んでいくのが、精度の高い分析への近道です。
分析環境を整えるためのおすすめツール
重回帰分析をスムーズに行うためには、統計ソフトや表計算ソフトの活用が欠かせません。最近ではAIを活用したデータ分析ツールも増えており、複雑な計算を自動化してくれます。
日常的な業務でサクッと分析したいなら、まずは使い慣れた表計算ソフトの分析ツールアドインから始めるのが良いでしょう。より高度な分析や、数万件規模のデータを扱うなら、専用の統計パッケージやプログラミング言語のライブラリが必要になります。
データ入力や分析結果の整理を効率化するために、画面の大きなノートPCや、操作性の良いマウスを導入するのも、意外と馬鹿にできない投資です。例えばmacbook airのような高解像度ディスプレイを持つデバイスは、多くの変数を並べて比較する際に非常に重宝します。
実務で差がつく「交互作用」と「非線形」の視点
基本をマスターした方へ、もう一歩先のテクニックをお伝えします。
交互作用
「AとBが組み合わさったときだけ、爆発的に効果が出る」という現象です。例えば、単なる「広告費」だけでなく「広告費 × セール期間」という新しい変数を作ることで、相乗効果をモデルに組み込むことができます。
非線形性
世の中の現象は、必ずしも直線(右肩上がり)ではありません。「ある程度までは効果があるけれど、やりすぎると逆効果」という場合、変数を2乗したものを投入することで、カーブを描く関係性を表現できるようになります。
これらは難しそうに見えますが、「現場の感覚」を数式に落とし込む作業だと思えば、非常にクリエイティブで面白いプロセスです。
重回帰分析の説明変数の選び方|精度を高める基準と注意点を徹底解説:まとめ
重回帰分析の精度は、計算式の複雑さではなく、入り口である「説明変数の選び方」で決まります。
最後に、大切なポイントを振り返りましょう。
- 理論を優先する:数字の前に、人間としての納得感を大切にする。
- マルチコを避ける:似たもの同士の変数を入れず、VIFでチェックする。
- シンプルさを追求する:AICなどの指標を使い、無駄な変数を削ぎ落とす。
- ダミー変数を使いこなす:質的なデータもルールを守って取り込む。
重回帰分析は、正しく使えばビジネスや研究の強力な武器になります。最初は試行錯誤の連続かもしれませんが、変数を入れ替えながら「データが何を語ろうとしているのか」に耳を傾けてみてください。
あなたの分析から、世界を動かすような新しい発見が生まれることを応援しています。
次は、実際に手元のデータを使って、VIFの値を計算するところから始めてみませんか?

