統計 18 · 単回帰分析 — 最小二乗法を最初から最後まで

Chapter 18

単回帰分析 — 最小二乗法を最初から最後まで

この章がなぜ必要なのか——「関係」を式にして予測する.

03 章で「\(x\) と \(y\) に相関がある」ことは測れるようになった。 だが実務で欲しいのは「\(x\) が 10 増えたら \(y\) はいくつ増えるのか」という具体的な関係式である。

回帰分析はその式を作る。そして統計学の中で最も広く使われている手法でもある。 機械学習の線形モデル、経済学の計量分析、実験科学の較正曲線——すべて回帰である。

この章では単回帰(説明変数 1 つ)を、式の導出から仮説検定まで完全に追う。 19 章の重回帰はこれの行列版にすぎないので、ここを完全に理解すれば後は楽になる。

この章で使う既出の用語(定義は各リンク先). 目的変数・説明変数(01 章 4 節)、平均と「偏差の和は 0」・「平均は二乗誤差を最小にする」(02 章 2 節)、自由度(02 章 3 節)、 共分散 \(s_{xy}\)・相関係数 \(r\)・「計算に便利な形」・アンスコムの四重奏(03 章 2〜4 節)、期待値の線形性・分散・共分散・線形結合の分散(06 章 3〜5 節)、標準誤差(06 章 6 節)、 正規分布・1.96(08 章 4 節)、χ²・t・F 分布と \(t_k^2 = F(1,k)\)(08 章 7〜9 節)、中心極限定理(09 章 3 節)、 推定量・不偏性・バイアス(10 章 1〜2 節)、最尤法と最小二乗法(10 章 3 節, 7 節)、信頼区間・予測区間(11 章 1 節, 8 節)、 t 検定(13 章 2 節)、平方和の分解(15 章 2 節)。

1. モデル

\[ \boxed{y_i = \beta_0 + \beta_1 x_i + \varepsilon_i, \qquad i=1,\dots,n} \]
記号名前意味
\(y_i\)目的変数予測したいもの
\(x_i\)説明変数予測に使うもの
\(\beta_0\)切片\(x=0\) のときの \(y\) の期待値
\(\beta_1\)傾き\(x\) が 1 増えたときの \(y\) の増加量
\(\varepsilon_i\)誤差項直線で説明できない部分。真の \(\beta_0,\beta_1\) が未知なので観測できない

後で出てくる残差 \(e_i = y_i - \hat y_i\)(推定した直線からのずれ)は \(\varepsilon_i\) の「計算できる代用品」であり、両者は別物である。

ガウス・マルコフの仮定

仮定内容崩れると
線形性\(E[y\mid x]=\beta_0+\beta_1x\)系統的な予測誤差
外生性\(E[\varepsilon_i]=0\)、\(x\) と無相関係数がバイアス(10 章 2 節)を持つ
等分散性\(V[\varepsilon_i]=\sigma^2\)(\(x\) によらない)標準誤差が誤る
無相関\(\text{Cov}[\varepsilon_i,\varepsilon_j]=0\)標準誤差が誤る
(検定用)正規性\(\varepsilon_i\sim N(0,\sigma^2)\)小標本で t 検定が不正確

正規性は係数の推定には不要である. 最小二乗推定量が最良線形不偏推定量(線形で不偏な推定量の中で分散が最小。5 節 で証明する)になるには、 上の 4 つ(ガウス・マルコフの仮定)だけでよい。 正規性が要るのは、\(t\) 検定や信頼区間を作るときだけである。 しかも \(n\) が大きければ CLT により緩和される(09 章)。

2. 最小二乗法の導出

何を最小化するか

候補の直線 \(\beta_0+\beta_1x\) からの縦のずれの二乗和を最小にする \(\beta_0, \beta_1\) を選ぶ。

\[ S(\beta_0,\beta_1) = \sum_{i=1}^n \left(y_i - \beta_0 - \beta_1 x_i\right)^2 \]

(最小化した後の値 \(S(\hat\beta_0,\hat\beta_1) = \sum e_i^2\) を残差平方和 (RSS) と呼ぶ。)

なぜ二乗和なのか(3 度目). (1) 符号を消す必要がある、(2) 微分できる、(3) 正規誤差なら最尤法と一致する(10 章 7 節)。 02 章で「平均は二乗誤差を最小にする点」と示したが、 回帰はその \(c\) を直線 \(\beta_0+\beta_1x_i\) に置き換えたものである。 だから回帰は「平均の一般化」だと言ってよい。

正規方程式

\(\beta_0\) で偏微分して 0 と置く。

\[ \frac{\partial S}{\partial\beta_0} = -2\sum(y_i-\beta_0-\beta_1x_i)=0 \quad\Longrightarrow\quad \sum y_i = n\beta_0 + \beta_1\sum x_i \]
\[ \Longrightarrow\quad \boxed{\hat\beta_0 = \bar y - \hat\beta_1\bar x} \tag{1} \]

\(\beta_1\) で偏微分して 0 と置く。

\[ \frac{\partial S}{\partial\beta_1}=-2\sum x_i(y_i-\beta_0-\beta_1x_i)=0 \quad\Longrightarrow\quad \sum x_iy_i = \beta_0\sum x_i+\beta_1\sum x_i^2 \tag{2} \]

(1) を (2) に代入する。

\[ \sum x_iy_i = (\bar y - \beta_1\bar x)n\bar x + \beta_1\sum x_i^2 \]
\[ \sum x_iy_i - n\bar x\bar y = \beta_1\left(\sum x_i^2 - n\bar x^2\right) \]

03 章の変形(\(\sum x_iy_i - n\bar x\bar y = \sum(x_i-\bar x)(y_i-\bar y)\)、\(\sum x_i^2-n\bar x^2=\sum(x_i-\bar x)^2\))を使うと

\[ \boxed{\hat\beta_1 = \frac{\sum(x_i-\bar x)(y_i-\bar y)}{\sum(x_i-\bar x)^2} = \frac{S_{xy}}{S_{xx}} = \frac{s_{xy}}{s_x^2}} \]

∎ ここで大文字の \(S_{xy} = \sum(x_i-\bar x)(y_i-\bar y)\)(偏差積和)、\(S_{xx} = \sum(x_i-\bar x)^2\)(偏差平方和)、同様に \(S_{yy} = \sum(y_i-\bar y)^2\) と定める。 03 章の標本共分散・標本分散は \(s_{xy} = S_{xy}/(n-1)\)、\(s_x^2 = S_{xx}/(n-1)\) なので、比を取ると \(n-1\) が約分されて同じ値になる。以下、本章では大文字の \(S\) を主に使う。

相関係数との関係

\[ \hat\beta_1 = \frac{s_{xy}}{s_x^2} = \frac{s_{xy}}{s_xs_y}\cdot\frac{s_y}{s_x} = r\frac{s_y}{s_x} \]
\[ \boxed{\hat\beta_1 = r\frac{s_y}{s_x}} \]

回帰係数と相関係数は同じものを別の単位で見ている. \(r\) は単位を消したもの、\(\hat\beta_1\) は元の単位のまま。 特に \(x\) と \(y\) を両方標準化すれば \(\hat\beta_1 = r\) になる。

「回帰」という名前の由来: ゴルトンが親子の身長を調べたとき、 \(s_x \approx s_y\) で \(r\approx 0.5\) だったので傾きは約 0.5。 つまり「背の高い親の子は、親ほどは高くない」——平均へ引き戻される。 これを regression toward the mean(平均への回帰) と呼んだのが語源である。

回帰直線の重要な性質

(1) 必ず点 \((\bar x,\bar y)\) を通る

(1) 式そのもの: \(\bar y = \hat\beta_0+\hat\beta_1\bar x\)。

(2) 残差の和は 0

推定した直線の予測値を \(\hat y_i = \hat\beta_0+\hat\beta_1x_i\)、残差を \(e_i = y_i-\hat y_i\) とする。\(\partial S/\partial\beta_0=0\) を \(\hat\beta_0,\hat\beta_1\) で評価した式がそのまま \(\sum e_i = 0\) である。

(3) 残差と \(x\) は無相関

同様に \(\partial S/\partial\beta_1=0\) より \(\sum x_ie_i=0\)。(2) と合わせると \(\sum(x_i-\bar x)e_i = 0\)、つまり \(x\) と \(e\) の標本共分散が 0。

(3) が意味すること. 残差には \(x\) との直線的な関係がもう残っていない——直線で取れる分は 絞り切ったということである。ただし無相関は直線的な関係が無いことしか保証しない(03 章 4 節)。 残差を \(x\) に対してプロットして曲線状の傾向(たとえば \(x^2\) の形)が見えるなら、 それは直線モデルが不適切(曲がっている)という証拠になる(20 章の残差プロット)。

3. 平均への回帰 — 実務で誤解される現象

\(\hat\beta_1 = rs_y/s_x\) で \(\lvert r\rvert<1\) なら、標準化した世界での傾きは 1 未満になる。 つまり極端な \(x\) に対応する \(y\) は、平均寄りになる。

これは統計的な必然であって、因果ではない.

例 1: 成績が最悪だった生徒を集めて補習をした。次のテストで平均点が上がった。 → 補習の効果とは限らない。もともと最低点だった集団は、何もしなくても次は上がる。

例 2: 「叱ったら成績が上がり、褒めたら下がった。だから叱るべきだ」 → 悪い成績のときに叱り、良い成績のときに褒めるなら、次はどちらも平均寄りに動く。 叱責の効果ではない。

例 3: 「病院を変えたら良くなった」——最も具合が悪いときに転院するのだから、 その後改善するのは自然な揺り戻しである可能性が高い。

対策は 24 章の対照群である. 同じように極端な集団を作り、片方だけに処置をする。 対照群も平均へ回帰するので、その差分だけが本当の効果になる。

4. 適合度 — 決定係数 \(R^2\)

平方和の分解

15 章と同じ構造の分解が成り立つ。

\[ y_i-\bar y = \underbrace{(\hat y_i-\bar y)}_{\text{回帰で説明}}+\underbrace{(y_i-\hat y_i)}_{\text{残差}} \]

二乗して足すと、交差項は \(2\sum(\hat y_i-\bar y)e_i = 2\hat\beta_1\sum(x_i-\bar x)e_i = 0\)((1) より \(\hat y_i-\bar y = \hat\beta_1(x_i-\bar x)\)、そして (2)(3))により消えて

\[ \boxed{SS_T = SS_R + SS_E} \]
記号名前式自由度
\(SS_T\)全平方和\(\sum(y_i-\bar y)^2 = S_{yy}\)\(n-1\)(平均を 1 つ推定)
\(SS_R\)回帰平方和\(\sum(\hat y_i-\bar y)^2 = \hat\beta_1^2 S_{xx}\)1(\(\hat\beta_1\) ひとつで決まる 1 方向のばらつき。15 章の群間 \(k-1\) に対応)
\(SS_E\)残差平方和\(\sum(y_i-\hat y_i)^2\)\(n-2\)(\(\beta_0,\beta_1\) の 2 つを推定)

決定係数

\[ \boxed{R^2 = \frac{SS_R}{SS_T}=1-\frac{SS_E}{SS_T}} \]

「\(y\) のばらつきのうち、\(x\) で説明できた割合」。\(0\le R^2\le 1\)。

単回帰では \(R^2 = r^2\) である(相関係数の二乗)。 導出: \(SS_R = \hat\beta_1^2S_{xx} = (S_{xy}/S_{xx})^2 S_{xx} = S_{xy}^2/S_{xx}\)、\(SS_T = S_{yy}\) なので \(R^2 = \dfrac{S_{xy}^2}{S_{xx}S_{yy}} = \left(\dfrac{s_{xy}}{s_xs_y}\right)^2 = r^2\)。∎

\(R^2\) の正しい読み方.

アンスコムの四重奏(03 章)は 4 つとも \(r = 0.816\)、つまり \(R^2 = r^2 = 0.67\) である。数値だけでは判断できない。

標準誤差(残差標準偏差)

\[ \hat\sigma^2 = \frac{SS_E}{n-2}, \qquad \hat\sigma = \sqrt{\hat\sigma^2} \]

自由度が \(n-2\) なのは、\(\beta_0\) と \(\beta_1\) の 2 つを推定したからである (02 章の「\(n-1\)」と同じ考え方。残差には \(\sum e_i=0\) と \(\sum x_ie_i=0\) の 2 本の拘束があり、この値で割ると \(E[\hat\sigma^2]=\sigma^2\) になる)。

\(\hat\sigma\) は予測が平均的にどれだけ外れるかを元の単位で表すので、 \(R^2\) より実務的に有用なことが多い。

5. 係数の分布と検定

\(\hat\beta_1\) の分布

\(\hat\beta_1\) を \(y_i\) の線形結合として書く。

\[ \hat\beta_1 = \frac{\sum(x_i-\bar x)(y_i-\bar y)}{S_{xx}} = \sum_i w_iy_i, \qquad w_i=\frac{x_i-\bar x}{S_{xx}} \]

(\(\sum w_i = 0\) なので \(\bar y\) の項は消える。)

期待値:

\[ E[\hat\beta_1]=\sum w_iE[y_i]=\sum w_i(\beta_0+\beta_1x_i)=\beta_0\underbrace{\sum w_i}_{0}+\beta_1\sum w_ix_i \]
\[ \sum w_ix_i = \frac{\sum(x_i-\bar x)x_i}{S_{xx}}=\frac{S_{xx}}{S_{xx}}=1 \quad\Longrightarrow\quad E[\hat\beta_1]=\beta_1 \quad(\textbf{不偏}) \]

分散(\(y_i\) が互いに無相関で分散 \(\sigma^2\)、というガウス・マルコフの仮定より。06 章 5 節 の一般形で共分散の項が消える):

\[ V[\hat\beta_1]=\sum w_i^2\sigma^2 = \frac{\sum(x_i-\bar x)^2}{S_{xx}^2}\sigma^2=\frac{\sigma^2}{S_{xx}} \]

誤差が正規なら \(\hat\beta_1\) は正規変数の線形結合なので正規分布に従い(08 章 4 節の再生性)

\[ \boxed{\hat\beta_1\sim N\left(\beta_1,\ \frac{\sigma^2}{S_{xx}}\right)} \]

ガウス・マルコフの定理(最小二乗が最良線形不偏である証明): \(\beta_1\) の任意の線形不偏推定量を \(\tilde\beta_1 = \sum c_iy_i\) とする。 不偏性 \(E[\tilde\beta_1] = \beta_0\sum c_i + \beta_1\sum c_ix_i = \beta_1\) がすべての \(\beta_0,\beta_1\) で成り立つには \(\sum c_i = 0\)、\(\sum c_ix_i = 1\) が必要。 \(c_i = w_i + d_i\) と置くと、\(w_i\) もこの 2 条件を満たすので \(\sum d_i = 0\)、\(\sum d_ix_i = 0\)。すると \(\sum w_id_i = \frac{1}{S_{xx}}\sum(x_i-\bar x)d_i = \frac{1}{S_{xx}}\left(\sum d_ix_i - \bar x\sum d_i\right) = 0\) なので

\[ V[\tilde\beta_1] = \sigma^2\sum c_i^2 = \sigma^2\left(\sum w_i^2 + 2\sum w_id_i + \sum d_i^2\right) = V[\hat\beta_1] + \sigma^2\sum d_i^2 \ge V[\hat\beta_1] \]

等号は \(d_i = 0\)、つまり \(\tilde\beta_1 = \hat\beta_1\) のときだけ。正規性は一切使っていない。∎(重回帰での一般形は 19 章 3 節。)

\(S_{xx}\) が分母にあることの実務的意味. \(x\) のばらつきが大きいほど、傾きは正確に推定できる。 てこの原理と同じで、支点から遠い点があるほど傾きが決まりやすい。

逆に \(x\) がほとんど動かない範囲でしかデータを取っていないと、傾きの推定は極めて不安定になる。 実験計画では、\(x\) をできるだけ広い範囲で振るのが有利である。 ただし広げすぎると線形性が崩れる範囲に入るので、そこはトレードオフになる。

t 検定

\[ H_0:\beta_1=0 \quad(\text{$`x`$ に説明力なし}) \]
\[ \boxed{t = \frac{\hat\beta_1}{\text{SE}(\hat\beta_1)} = \frac{\hat\beta_1}{\hat\sigma/\sqrt{S_{xx}}}\sim t_{n-2}} \]

信頼区間:

\[ \hat\beta_1 \pm t_{n-2,\alpha/2}\cdot\text{SE}(\hat\beta_1) \]

F 検定との一致

単回帰では

\[ F = \frac{SS_R/1}{SS_E/(n-2)} = t^2 \]

(08 章 9 節の \(t_k^2=F(1,k)\) そのもの。\(SS_R = \hat\beta_1^2S_{xx}\)、\(SS_E/(n-2) = \hat\sigma^2\) を入れると \(F = \hat\beta_1^2 S_{xx}/\hat\sigma^2 = t^2\)。)単回帰では t 検定と F 検定は完全に同値である。

6. 予測

平均の予測(回帰直線の信頼区間)

\(x=x_0\) における \(E[y\mid x_0] = \beta_0+\beta_1x_0\) の推定値は \(\hat y_0 = \hat\beta_0+\hat\beta_1x_0\)。

\[ \hat y_0 \pm t_{n-2,\alpha/2}\hat\sigma\sqrt{\frac{1}{n}+\frac{(x_0-\bar x)^2}{S_{xx}}} \]

導出: (1) より \(\hat y_0 = \bar y + \hat\beta_1(x_0-\bar x)\)。\(V[\bar y] = \sigma^2/n\)、\(V[\hat\beta_1] = \sigma^2/S_{xx}\) で、 \(\text{Cov}[\bar y,\hat\beta_1] = \text{Cov}\left[\frac1n\sum_i y_i, \sum_j w_jy_j\right] = \frac{\sigma^2}{n}\sum_j w_j = 0\)(\(y_i\) どうしは無相関なので \(i=j\) の項だけ残り、\(\sum w_j=0\))。よって

\[ V[\hat y_0] = V[\bar y] + (x_0-\bar x)^2V[\hat\beta_1] = \sigma^2\left(\frac1n + \frac{(x_0-\bar x)^2}{S_{xx}}\right) \]

\(E[\hat y_0] = \beta_0+\beta_1x_0\)(不偏)で、正規誤差なら \(\hat y_0\) は正規。\(\sigma\) を \(\hat\sigma\) で置き換えると \(t_{n-2}\) になる(\(\hat\sigma^2\) が \(\hat\beta_0,\hat\beta_1\) と独立であることは 08 章 7 節 の直交分解と同じ理由)。∎

個別の値の予測(予測区間)

\[ \hat y_0 \pm t_{n-2,\alpha/2}\hat\sigma\sqrt{1+\frac{1}{n}+\frac{(x_0-\bar x)^2}{S_{xx}}} \]

導出: 予測したい新しい観測 \(y_0 = \beta_0+\beta_1x_0+\varepsilon_0\) は既存のデータと無相関なので、予測誤差 \(y_0-\hat y_0\) の分散は \(V[y_0]+V[\hat y_0] = \sigma^2 + V[\hat y_0]\)。∎

中の "1" が増えているだけだが、これが決定的である(11 章と同じ構造)。

2 つの区間の違いを図で理解する(信頼係数 95% の場合).

どれだけデータを集めても、個々のばらつき \(\sigma\) は消せない。 「平均がどこにあるか」の不確かさだけが消える。

外挿の危険

データの範囲外で予測してはいけない. 直線関係が成り立つのは、観測した \(x\) の範囲内でだけである。 外側でも直線が続く保証はどこにもない。

しかも \((x_0-\bar x)^2\) の項により、離れるほど予測区間が急速に広がる。 式自体が「遠くは分からない」と警告している。

有名な冗談: 「人間の成長データに直線を当てはめて外挿すると、 50 歳で身長 3 メートルになる」。

7. 変数変換

関係が直線でないとき、変換で直線に持ち込めることが多い。

元の関係変換変換後
\(y=ae^{bx}\)(指数成長)\(\log y\)\(\log y = \log a + bx\)
\(y=ax^b\)(べき乗則)両対数\(\log y = \log a + b\log x\)
\(y=a+b\log x\)(逓減: \(x\) が増えるほど \(y\) の増え方が小さくなる)\(\log x\)そのまま線形
比率(0〜1)ロジット \(\log\frac{p}{1-p}\)21 章へ

対数変換した係数の読み方

モデル\(\beta_1\) の意味
\(y = \beta_0+\beta_1x\)\(x\) が 1 増えると \(y\) が \(\beta_1\) 増える
\(\log y = \beta_0+\beta_1x\)\(x\) が 1 増えると \(y\) が約 \(100\beta_1\) % 増える
\(y = \beta_0+\beta_1\log x\)\(x\) が 1% 増えると \(y\) が約 \(\beta_1/100\) 増える
\(\log y=\beta_0+\beta_1\log x\)\(x\) が 1% 増えると \(y\) が約 \(\beta_1\) % 増える(弾力性)

「約」の出所はいずれも \(\log(1+u)\approx u\)(\(u\) が小さいとき)である。たとえば 2 行目は \(y = e^{\beta_0}e^{\beta_1x}\) なので \(x\) が 1 増えると \(y\) は \(e^{\beta_1}\) 倍、厳密な変化率は \(100(e^{\beta_1}-1)\)% で、\(\beta_1\) が小さければ \(100\beta_1\)% に近い。 4 行目は \(y\propto x^{\beta_1}\) なので \(x\) が 1% 増えると \(1.01^{\beta_1}\) 倍、\(\approx 1+0.01\beta_1\)。「\(x\) の微小な % 変化に対する \(y\) の % 変化」の極限 \(\dfrac{d\log y}{d\log x} = \beta_1\) は厳密で、これを弾力性と呼ぶ。

両対数モデルの \(\beta_1\) は経済学で「弾力性」と呼ばれ、単位に依存しない量として重宝される。 「価格が 1% 上がると需要が 1.3% 減る」といった形で、直接的に解釈できる。

8. 原点を通る回帰

\(\beta_0=0\) を強制する場合。

\[ \hat\beta_1 = \frac{\sum x_iy_i}{\sum x_i^2} \]

安易に使ってはいけない. 「\(x=0\) なら \(y=0\) のはずだ」という理屈は しばしば直感的すぎる。切片を除くと \(\sum e_i=0\) が成り立たなくなり、 \(R^2\) の定義も変わって(他のモデルと比較できなくなる)、残差診断も難しくなる。

物理法則などで原点通過が理論的に確実な場合を除き、切片は入れておくのが安全である。 推定した切片が有意でなければ、それはそれで情報になる。

9. まとめ

項目式
傾き\(\hat\beta_1 = S_{xy}/S_{xx}=rs_y/s_x\)
切片\(\hat\beta_0=\bar y-\hat\beta_1\bar x\)
分散\(V[\hat\beta_1]=\sigma^2/S_{xx}\)
残差分散\(\hat\sigma^2 = SS_E/(n-2)\)
決定係数\(R^2=SS_R/SS_T = r^2\)
t 検定\(t=\hat\beta_1/\text{SE}\sim t_{n-2}\)