Chapter 19
重回帰分析 — 複数の要因を同時に扱う
この章がなぜ必要なのか——現実は 1 つの原因では動かない.
家賃を予測したい。面積だけでは足りない。駅からの距離も、築年数も、階数も効く。 複数の説明変数を同時に扱うのが重回帰である。
そして重回帰の本当の価値は予測精度ではない。 「他の条件を一定にしたときの、この変数だけの効果」を取り出せることである。 これは 03 章で見た交絡(アイスと水難事故)への、最初の対抗手段になる。
式は行列で書くと驚くほど簡潔になる。単回帰の式が、そのまま行列版に化ける。
この章で使う既出の用語(定義は各リンク先). 説明変数・目的変数(01 章 4 節)、独立(04 章 5 節)、期待値・分散・共分散・無相関(06 章 3〜5 節)、標準誤差(06 章 6 節)、推定量・不偏性・バイアス(10 章 1〜2 節)、\(\eta^2\)(15 章 4 節)、交互作用(15 章 5 節)、ガウス・マルコフの仮定(等分散・無相関・外生性・正規性)(18 章 1 節)、\(S_{xx}, S_{xy}\)(18 章 2 節)、平方和 \(SS_T, SS_R, SS_E\) と自由度(18 章 4 節)、残差分散 \(\hat\sigma^2\)(18 章 4 節)
1. モデル
データは \(n\) 個(\(i = 1,\dots,n\))、説明変数は \(p\) 個(\(j = 1,\dots,p\))とする。\(x_{ij}\) は \(i\) 番目のデータの \(j\) 番目の説明変数の値。
誤差 \(\varepsilon_i\) には 18 章と同じ仮定を置く: 平均 0(外生性)、分散はすべて \(\sigma^2\)(等分散)、互いに無相関。
行列表現
\(X\) は \(n\times(p+1)\) の計画行列 (design matrix)。第 1 列がすべて 1 なのは切片のためである。 \(X\) の第 \(i\) 行を縦に並べた列ベクトル \(\mathbf x_i = (1, x_{i1}, \dots, x_{ip})^\top\) を使うと、\(i\) 番目のデータのモデルは \(y_i = \mathbf x_i^\top\boldsymbol\beta + \varepsilon_i\) と書ける(\(\top\) は転置)。
2. 最小二乗推定量の導出
展開する。\((\mathbf a - \mathbf b)^\top(\mathbf a - \mathbf b) = \mathbf a^\top\mathbf a - \mathbf a^\top\mathbf b - \mathbf b^\top\mathbf a + \mathbf b^\top\mathbf b\) と \((X\boldsymbol\beta)^\top = \boldsymbol\beta^\top X^\top\) より
(\(\mathbf y^\top X\boldsymbol\beta\) は \(1\times1\) の数なので転置しても同じ値: \(\mathbf y^\top X\boldsymbol\beta = (\mathbf y^\top X\boldsymbol\beta)^\top = \boldsymbol\beta^\top X^\top\mathbf y\)。だから 2 倍にまとめられる。)
\(\boldsymbol\beta\) で微分する。「ベクトルで微分する」とは、\(S\) を \(\beta_0, \beta_1, \dots, \beta_p\) のそれぞれで偏微分(他の成分を定数とみなして微分)し、その結果を縦に並べたベクトルを作ることである。 成分ごとに計算すると次の公式が得られる: \(\dfrac{\partial(\mathbf a^\top\boldsymbol\beta)}{\partial\boldsymbol\beta}=\mathbf a\)(\(\mathbf a^\top\boldsymbol\beta = \sum_k a_k\beta_k\) を \(\beta_k\) で微分すると \(a_k\))、 \(\dfrac{\partial(\boldsymbol\beta^\top A\boldsymbol\beta)}{\partial\boldsymbol\beta}=2A\boldsymbol\beta\)(\(A\) が対称、すなわち \(A^\top = A\) のとき。\(\sum_{k,l}A_{kl}\beta_k\beta_l\) を \(\beta_k\) で微分すると \(\beta_k\) を含む項が 2 回ずつ現れる)。 \(X^\top X\) は \((X^\top X)^\top = X^\top X\) なので対称である。
\(X^\top X\) が正則(逆行列を持つ、すなわち \(X\) の列がどれも他の列の組み合わせで書けない)なら
単回帰の式と見比べる. 単回帰の \(\hat\beta_1 = S_{xy}/S_{xx}\)(18 章。\(S_{xx} = \sum(x_i-\bar x)^2\)、\(S_{xy} = \sum(x_i-\bar x)(y_i-\bar y)\))と \(\hat{\boldsymbol\beta}=(X^\top X)^{-1}X^\top\mathbf y\) は同じ形をしている。 \(X^\top X\) が「\(x\) の二乗和」、\(X^\top\mathbf y\) が「\(x\) と \(y\) の積和」に対応する。 単回帰は重回帰の \(p=1\) の場合にすぎない。
幾何学的な意味
\(H\) をハット行列(射影行列)と呼ぶ。\(H^2=H\)(2 回掛けても 1 回と同じ。この性質をべき等と呼ぶ)、\(H^\top=H\)(対称)。 確認: \(H^2 = X(X^\top X)^{-1}\underbrace{X^\top X(X^\top X)^{-1}}_{=I}X^\top = H\)。
回帰とは射影である. \(n\) 個の値を並べた \(\mathbf y\) を \(n\) 次元空間の 1 点と見る。\(X\) の \(p+1\) 本の列の定数倍の和で作れる点の集まり(列が張る\((p+1)\) 次元の部分空間——空間の中の「平面」のようなもの)へ、\(\mathbf y\) から垂線を下ろした足が \(\hat{\mathbf y}\) である(正射影)。 残差 \(\mathbf e = \mathbf y-\hat{\mathbf y}=(I-H)\mathbf y\) はその部分空間に直交する。
$$X^\top\mathbf e = X^\top(I-H)\mathbf y = (X^\top - X^\top H)\mathbf y = (X^\top - X^\top)\mathbf y=\mathbf 0$$
(\(X^\top H = X^\top X(X^\top X)^{-1}X^\top = X^\top\) を使った。)
これが「残差はすべての説明変数と無相関」の行列版であり、 15 章・18 章の平方和分解(ピタゴラスの定理)の正体でもある。 統計の中心的な計算は、幾何学的には射影である。
3. 推定量の性質
不偏性
\(E[\boldsymbol\varepsilon] = \mathbf 0\)(外生性)より \(E[\mathbf y] = X\boldsymbol\beta\) なので
分散共分散行列
ベクトルの分散 \(V[\mathbf y]\) は、対角に各成分の分散、非対角に成分どうしの共分散を並べた行列である。誤差が等分散(各成分の分散が \(\sigma^2\))かつ無相関(共分散が 0)なので \(V[\mathbf y]=\sigma^2 I\)(\(I\) は単位行列)。定数行列 \(A\) について \(V[A\mathbf y] = A\,V[\mathbf y]\,A^\top\) を使うと
対角成分の平方根が各係数の標準誤差になる。\(\sigma^2\) は未知なので残差から推定する。残差平方和を \(SS_E = \sum_i e_i^2 = \sum_i(y_i-\hat y_i)^2\) として
(18 章の \(n-2\) の一般化。\(n\) 個の残差はパラメータを \(p+1\) 個推定したことで \(p+1\) 本の制約(\(X^\top\mathbf e = \mathbf 0\))を受け、自由に動ける個数——自由度——が \(n-p-1\) になる。この値で割ると \(E[\hat\sigma^2] = \sigma^2\) となる。)
ガウス・マルコフの定理
最小二乗推定量は、線形不偏推定量の中で分散が最小である(BLUE: Best Linear Unbiased Estimator)。
ここで「線形推定量」とは、\(\mathbf y\) の線形結合 \(C\mathbf y\)(\(C\) は定数行列)の形で書ける推定量のこと(モデルが説明変数について線形、という意味の「線形」とは別の用法)。 正規性は不要。等分散・無相関・外生性の 3 つ(18 章)があれば成立する。
4. 偏回帰係数の意味
「他を一定に保つ」がすべてである。これを ceteris paribus(他の条件が同じなら)と呼ぶ。
フリッシュ・ウォー・ラベルの定理(重要)
\(\hat\beta_j\) は、次の 3 段階の手続きとまったく同じ値になる。
- \(x_j\) を他のすべての説明変数に回帰し、残差 \(\tilde x_j\) を得る
- \(y\) を他のすべての説明変数に回帰し、残差 \(\tilde y\) を得る
- \(\tilde y\) を \(\tilde x_j\) に単回帰する。その傾きが \(\hat\beta_j\)
これが「他の変数の影響を取り除く」ということの厳密な意味である. \(x_j\) から他の変数で説明できる部分を捨て、\(y\) からも同様に捨てる。 残った「純粋な部分どうし」の関係が偏回帰係数である。
だから重回帰は 03 章の交絡問題に部分的に対処できる。 ただしモデルに入れた変数についてだけである。測っていない交絡因子は調整できない(24 章)。
単回帰の係数と一致しない
\(x_1\) だけの単回帰と、\(x_1,x_2\) の重回帰では \(\hat\beta_1\) が変わる。 \(x_1\) と \(x_2\) が相関していれば、単回帰の \(\hat\beta_1\) は \(x_2\) の効果も拾ってしまう。
導出: 単回帰の傾きは \(\hat\beta_1^{\text{単}} = S_{x_1y}/S_{x_1x_1}\)。ここで \(y_i\) に重回帰の当てはめ \(y_i = \hat\beta_0 + \hat\beta_1^{\text{重}}x_{i1} + \hat\beta_2 x_{i2} + e_i\) を代入すると、 \(S_{x_1y} = \hat\beta_1^{\text{重}}S_{x_1x_1} + \hat\beta_2 S_{x_1x_2} + \sum(x_{i1}-\bar x_1)e_i\)。最後の項は「残差は説明変数と直交する」(2 節)ので 0。両辺を \(S_{x_1x_1}\) で割ると上の式になり、\(S_{x_1x_2}/S_{x_1x_1}\) は \(x_2\) を \(x_1\) に回帰した傾きである。∎
これが欠落変数バイアスである。
符号が反転することさえある. 03 章のシンプソンのパラドックスの回帰版である。 「変数を 1 つ追加したら係数の符号が変わった」は、統計ソフトのバグではなく、正常な現象である。
だからこそ「どの変数をモデルに入れるか」は統計の問題ではなく、因果の知識の問題になる(24 章)。
5. モデルの評価
決定係数と自由度調整済み決定係数
\(SS_T = \sum(y_i-\bar y)^2\)(全変動)、\(SS_R = \sum(\hat y_i-\bar y)^2\)(回帰で説明できた変動)とすると、18 章と同じく \(SS_T = SS_R + SS_E\) が成り立つ(2 節 の直交性による)。
\(R^2\) は変数を増やすと必ず増える. まったく無関係な乱数を説明変数に加えても、\(R^2\) は(わずかでも)上がる。 極端には、\(p=n-1\) にすれば \(R^2=1\) になる——完全に無意味なモデルなのに(係数が切片込みで \(n\) 個あり、\(n\) 個のデータを通す \(n\) 本の式をちょうど満たせるので残差がすべて 0 になる)。
自由度調整済み \(\bar R^2\) は「役に立たない変数を入れると下がる」ように補正されている。 モデル比較には \(\bar R^2\)(あるいは 22 章の AIC・交差検証)を使う。
F 検定(モデル全体の有意性)
部分 F 検定(変数群の追加効果)
変数を追加したモデル(full)と、しないモデル(reduced)を比べる。
(\(q\) = 追加した変数の個数。)交互作用項やダミー変数群をまとめて検定するのに使う。
6. カテゴリ変数の扱い — ダミー変数
\(k\) 水準のカテゴリは、\(k-1\) 個の 0/1 変数で表す。
| 地域 | \(D_{\text{東}}\) | \(D_{\text{西}}\) |
|---|---|---|
| 北(基準) | 0 | 0 |
| 東 | 1 | 0 |
| 西 | 0 | 1 |
\(\beta_{\text{東}}\) は「基準(北)に対する東の差」を表す。
なぜ \(k\) 個ではなく \(k-1\) 個なのか(ダミー変数の罠). 3 つ全部入れると \(D_{\text{北}}+D_{\text{東}}+D_{\text{西}}=1\) となり、切片の列(すべて 1)と完全に一致してしまう。 \(X\) が特異行列になり \((X^\top X)^{-1}\) が存在しなくなる。 だから 1 つを基準として落とす。
分散分析は重回帰の特別な場合である. 15 章の一元配置分散分析は、群をダミー変数にした重回帰とまったく同じ結果を与える。 F 統計量も、効果量 \(\eta^2\)(15 章)\(=R^2\) も一致する。 分散分析・共分散分析・t 検定・回帰は、すべて「一般線形モデル」という 1 つの枠組みの中にある。
7. 交互作用
\(x_1\) の効果(\(x_2\) を固定して \(x_1\) を 1 増やしたときの \(E[y]\) の増分。\(x_2\) を定数とみなして \(x_1\) で微分する偏微分 \(\partial/\partial x_1\) で書く)は
\(x_2\) の値によって \(x_1\) の効果が変わる——これが交互作用である(15 章)。
交互作用を入れたら、主効果の解釈が変わる. \(\beta_1\) はもはや「\(x_1\) の平均的な効果」ではなく、 「\(x_2=0\) のときの \(x_1\) の効果」になる。
\(x_2=0\) がデータの範囲外なら、\(\beta_1\) は無意味な外挿値である。 対策: 説明変数を中心化する(平均を引く)。そうすれば \(\beta_1\) は 「\(x_2\) が平均のときの \(x_1\) の効果」となり、解釈可能になる。 中心化は多重共線性の緩和にもなるので、交互作用を入れるときはほぼ必須の作法である。
8. 多重共線性 (multicollinearity)
何が起きるか
説明変数どうしが強く相関していると、\(X^\top X\) が特異行列に近づき、\((X^\top X)^{-1}\) が巨大になる。
| 症状 | 内容 |
|---|---|
| 係数の標準誤差が異常に大きい | 個々の t 検定が有意にならない |
| F は有意なのに個々の t は非有意 | 典型的なサイン |
| 係数の符号が理論と逆 | 「面積が広いほど家賃が安い」など |
| データを少し変えると係数が激変 | 不安定 |
直感的な理由. 面積と部屋数がほぼ比例しているとき、 「面積の効果」と「部屋数の効果」を分離する情報がデータに含まれていない。 「面積 +10、部屋数 −1」でも「面積 −5、部屋数 +2」でも、同じくらい当てはまってしまう。 だから係数がふらつく。データが答えを持っていないのである。
診断: 分散拡大係数 (VIF)
(\(R_j^2\) は \(x_j\) を他のすべての説明変数に回帰したときの決定係数。)
| VIF | 判断 |
|---|---|
| 1 | 他の説明変数と無相関 |
| 5 未満 | 問題なし |
| 5〜10 | 注意 |
| 10 以上 | 深刻 |
VIF = 10 は「その変数の係数の分散が、他の説明変数と無相関だった場合の 10 倍に膨れている」ことを意味する。 理由: FWL 定理より \(\hat\beta_j\) は \(\tilde x_j\) への単回帰の傾きなので、その分散は 18 章と同じ形 \(\sigma^2/\sum\tilde x_{ij}^2\)。 \(\tilde x_j\) は \(x_j\) を他の変数に回帰した残差だから \(\sum\tilde x_{ij}^2 = S_{jj}(1-R_j^2)\)(残差平方和 = 全変動 × (1 − 決定係数))。よって
\(\sigma^2/S_{jj}\) が「無相関だった場合の分散」で、それに VIF が掛かっている。
対策
| 対策 | 内容 |
|---|---|
| 変数を落とす | 相関の高い一方を削除 |
| 変数を合成する | 主成分分析(26 章)、合計スコア |
| データを増やす | \(S_{xx}\) が増えれば緩和される |
| 正則化 | Ridge 回帰(20 章)。多重共線性への最も強力な対処 |
| 中心化 | 交互作用項・二乗項による見かけの共線性には有効 |
予測だけが目的なら多重共線性は問題ない. 個々の係数は不安定でも、予測値 \(\hat y\) は安定している。 困るのは「各変数の効果を解釈したい」ときだけである。 目的によって、対処すべきかどうかが変わる。
9. 実務での注意
変数選択
ステップワイズ法の問題点. 検定を何度も繰り返すので p 値が信用できなくなり(17 章)、 \(R^2\) は過大評価され、係数も過大に出る。データが少し変わると選ばれる変数も変わる。
予測目的なら交差検証(22 章)、解釈目的なら理論に基づく選択を使うべきである。
サンプルサイズの目安
説明変数 1 つあたり 10〜20 個のデータが目安。少なすぎると過学習する(22 章)。
10. まとめ
| 項目 | 式 |
|---|---|
| 推定量 | \(\hat{\boldsymbol\beta}=(X^\top X)^{-1}X^\top\mathbf y\) |
| 分散 | \(V[\hat{\boldsymbol\beta}]=\sigma^2(X^\top X)^{-1}\) |
| 残差分散 | \(\hat\sigma^2=SS_E/(n-p-1)\) |
| 調整済み \(R^2\) | \(1-\dfrac{SS_E/(n-p-1)}{SS_T/(n-1)}\) |
| VIF | \(1/(1-R_j^2)\) |
- 重回帰は単回帰の行列版。回帰=射影という幾何が全体を貫いている。
- 偏回帰係数は「他を一定にしたときの効果」。FWL 定理がその厳密な意味を与える。
- 変数を追加すると係数が変わる(欠落変数バイアス)。符号が反転することもある。
- \(R^2\) は変数を増やせば必ず上がる。比較には調整済み \(R^2\) か AIC。
- 多重共線性は係数を不安定にする。VIF で診断。予測目的なら気にしなくてよい。
- カテゴリは \(k-1\) 個のダミーに。分散分析は重回帰の特別な場合。