← 機械学習テキスト 一覧

🎓 レベル:基礎 | 重要度:A(必須)

📎 前提:学習問題の定式化(仮説・損失・経験リスク) | 数理:単回帰分析(統計)・最尤法・モーメント法(推定量の作り方と最尤推定量の漸近論)(統計)

要点(BLUF)

1. モデルの定式化

nn 個のデータ (xi,yi)(x_i, y_i) を考えます。各 xix_ipp 次元の特徴ベクトルです。線形回帰は、出力を特徴の線形結合で予測します:

y^i=β0+β1xi1++βpxip\hat{y}_i = \beta_0 + \beta_1 x_{i1} + \cdots + \beta_p x_{ip}

これを行列でまとめます。切片 β0\beta_0 を吸収するため各行の先頭に 1 を足した 設計行列(design matrix) XRn×(p+1)X \in \mathbb{R}^{n\times(p+1)} を使うと、

y=Xβ+ε,yRn, βRp+1, εRny = X\beta + \varepsilon,\qquad y\in\mathbb{R}^n,\ \beta\in\mathbb{R}^{p+1},\ \varepsilon\in\mathbb{R}^n

要するに:予測値 y^=Xβ\hat y = X\beta は「XX の各列を β\beta で重み付けして足したもの」。ε\varepsilon はモデルで説明しきれないズレ(誤差項)です。

⚠️ 「線形」とはパラメータ β\beta について線形という意味です。x2x^2logx\log x を特徴に入れても、β\beta について線形なら線形回帰のままです(曲線も当てはめられる)。

2. 最小二乗法と正規方程式

良い β\beta とは、予測の二乗誤差の合計(残差平方和, RSS)を最小にするものとします:

L(β)=i=1n(yixiβ)2=yXβ2L(\beta) = \sum_{i=1}^{n}\big(y_i - x_i^\top\beta\big)^2 = \lVert y - X\beta\rVert^2

これを β\beta で微分して 0 と置きます。yXβ2=(yXβ)(yXβ)\lVert y - X\beta\rVert^2 = (y-X\beta)^\top(y-X\beta) を展開すると

L(β)=yy2βXy+βXXβL(\beta) = y^\top y - 2\beta^\top X^\top y + \beta^\top X^\top X\beta

勾配を取ると(ベクトル微分の公式 (βAβ)/β=2Aβ\partial(\beta^\top A\beta)/\partial\beta = 2A\betaA=XXA=X^\top X は対称):

βL=2Xy+2XXβ=0\nabla_\beta L = -2X^\top y + 2X^\top X\beta = 0

これを整理すると 正規方程式(normal equation) が得られます:

XXβ^=Xy  β^=(XX)1Xy  X^\top X\,\hat\beta = X^\top y \quad\Longrightarrow\quad \boxed{\;\hat\beta = (X^\top X)^{-1}X^\top y\;}

要するに:損失は β\beta の凸な二次関数なので、勾配が 0 になる一点が唯一の最小値。XXX^\top X が正則(=列が一次独立)なら逆行列で一発で解けます。反復計算は不要で、これが線形回帰の大きな利点です。

XXX^\top X が正則であるためには XX の列がフルランク(一次独立)である必要があります。列同士が強く相関すると逆行列が不安定になる——これが多重共線性の問題で、次のノート 重回帰と多重共線性 で扱います。

3. 幾何的意味:列空間への直交射影

正規方程式を X(yXβ^)=0X^\top(y - X\hat\beta) = 0 と書き直すと、図形的な意味がはっきりします。

graph TB
    Y["観測ベクトル y"] -->|"直交射影"| YH["予測 ŷ = Xβ̂(列空間内)"]
    Y -->|"残差 e = y − ŷ"| E["e は列空間と直交"]
    YH -->|"残差はここに直交"| E
    SUB["列空間 col(X)(X の列が張る平面)"] --- YH

これは「yy を列空間に下ろした足(最短距離の点)が y^\hat y である」という、最短距離=垂線の足の話そのものです。残差 ee が列空間と直交していなければ、まだ列空間の方向に動かして誤差を減らせる余地があるので、最小ではありません。直交していること自体が最小性の条件になっています。

予測を作る写像 y^=X(XX)1Xy=Hy\hat y = X(X^\top X)^{-1}X^\top y = Hy の行列

H=X(XX)1XH = X(X^\top X)^{-1}X^\top

ハット行列(射影行列) と呼ばれ、H2=HH^2 = H(射影なので二度かけても同じ)、H=HH^\top = H(対称)という直交射影の性質を満たします。

要するに:最小二乗法は「観測 yy から、モデルで表現できる空間 col(X)\mathrm{col}(X) に向かって垂線を下ろす」操作です。代数(正規方程式)と幾何(直交射影)は同じ事実の two views です。

4. 確率的解釈:最小二乗=ガウス誤差の最尤推定

ここまでは「二乗誤差を最小にする」という最適化の話でした。実はこの二乗損失には確率モデルの裏付けがあります。

誤差を独立同分布のガウスノイズと仮定します:

εiiidN(0,σ2)yixiN(xiβ, σ2)\varepsilon_i \stackrel{\text{iid}}{\sim} N(0,\sigma^2)\quad\Longleftrightarrow\quad y_i \mid x_i \sim N(x_i^\top\beta,\ \sigma^2)

つまり「各 yiy_i は、真の直線上の値 xiβx_i^\top\beta を中心とした、分散 σ2\sigma^2 の正規分布から出る」と考えます。1 点の尤度(確率密度)は

p(yixi;β,σ2)=12πσ2exp ⁣((yixiβ)22σ2)p(y_i\mid x_i;\beta,\sigma^2) = \frac{1}{\sqrt{2\pi\sigma^2}}\exp\!\left(-\frac{(y_i - x_i^\top\beta)^2}{2\sigma^2}\right)

独立性より全データの尤度は積になり、対数を取ると(対数尤度):

(β,σ2)=i=1nlogp(yixi)=n2log(2πσ2)12σ2i=1n(yixiβ)2\ell(\beta,\sigma^2) = \sum_{i=1}^{n}\log p(y_i\mid x_i) = -\frac{n}{2}\log(2\pi\sigma^2) - \frac{1}{2\sigma^2}\sum_{i=1}^{n}(y_i - x_i^\top\beta)^2

β\beta に関係するのは最後の項だけです。\ellβ\beta について最大化することは、符号が逆なので

i=1n(yixiβ)2=yXβ2\sum_{i=1}^{n}(y_i - x_i^\top\beta)^2 = \lVert y - X\beta\rVert^2

最小化することと完全に一致します。これは §2 の最小二乗の損失そのものです。

flowchart LR
    A["誤差を N(0, σ²) と仮定"] --> B["尤度 ∏ p(yi | xi)"]
    B --> C["対数尤度 ℓ(β)"]
    C -->|"β に依存する項だけ残す"| D["最大化 ⇔ Σ(yi − xiᵀβ)² の最小化"]
    D --> E["最小二乗解 β̂ = (XᵀX)⁻¹Xᵀy"]

要するに:最小二乗法は天下りの「便利な損失」ではなく、「誤差が正規分布する」という確率モデルの最尤推定です(→ 統計の 最尤法・モーメント法(推定量の作り方と最尤推定量の漸近論))。だから二乗損失が外れ値に弱いのも、正規分布が裾の薄い分布だから、と理解できます(裾の厚いラプラス分布を仮定すると絶対値損失=中央値回帰になる)。

補足:σ2\sigma^2 を最尤推定すると σ^2=1nyXβ^2\hat\sigma^2 = \frac{1}{n}\lVert y - X\hat\beta\rVert^2(残差の平均二乗)。ただしこれは下方バイアスを持ち、不偏推定では n(p+1)n-(p+1) で割ります(→ 統計 残差分析・回帰診断)。

5. 前提(古典的線形回帰モデルの仮定)

最小二乗推定量 β^\hat\beta が「良い推定量」であるための古典的仮定は次の通りです。

仮定内容破れると
線形性E[yx]=xβ\mathbb{E}[y\mid x] = x^\top\beta(パラメータについて線形)バイアス(系統的なズレ)
独立性各標本の誤差が独立(無相関)標準誤差が過小評価
等分散性Var(εi)=σ2\mathrm{Var}(\varepsilon_i) = \sigma^2 で一定(homoscedasticity)推定の効率が落ちる
正規性εN(0,σ2)\varepsilon \sim N(0,\sigma^2)小標本で検定・区間が不正確

ここで効いてくるのが ガウス・マルコフの定理 です:誤差が「平均0・等分散・無相関」(正規性は不要)であれば、最小二乗推定量は 線形不偏推定量の中で最小分散BLUE(Best Linear Unbiased Estimator) になります。正規性まで仮定すると、線形に限らずすべての不偏推定量の中で最小分散となり、§4 の最尤推定の最適性とつながります。

要するに:正規性は「点推定 β^\hat\beta の最適性」には不要(等分散・無相関で十分にBLUE)。正規性が効くのは検定・信頼区間などの推測統計の場面です。

⚠️ よくある誤解

対応するシミュレーション

simulations/linear_regression_ols.py:直線っぽいデータに最小二乗法を正規方程式 β=(XX)1Xy\beta=(X^\top X)^{-1}X^\top y で一発で当てはめ、各点の残差(予測と実測の縦のズレ)を可視化します。傾きを変えると残差の二乗和(SSE)が下に凸の放物線を描き、最小二乗の傾きでちょうど底になる=他のどの傾きより誤差が小さいことを示します。なぜ二乗かは誤差が正規分布のときの最尤推定に対応します(統計サイト参照)。

最小二乗(正規方程式)と残差

関連ノート