线性模型与正则化核心25 分钟kp-006#线性模型#回归#最小二乘

线性回归与最小二乘法

进度

一句话定义

线性回归假设目标可由特征的线性组合预测:ŷ = w^⊤ x + b,并通过最小化残差平方和(最小二乘)求得闭式解 w = (X^⊤ X)-1 X^⊤ y。

为什么重要

它是「完整走通」一个机器学习模型的最小标本:模型、损失、解析解、几何解释、统计解释一应俱全。后续的正则化、逻辑回归、广义线性模型、甚至线性 SVM 都是在它身上做局部改造。工程上它仍是结构化数据回归任务的强基线。

前置知识

损失函数:从 0-1 损失到代理损失(平方损失)、梯度下降与凸优化基础(对照解析解与梯度解);矩阵乘法与逆矩阵。

核心概念

  • 设计矩阵:X ∈ ℝn × p,每行一个样本(通常已补一列 1 吸收截距)。
  • 残差:ei = yi - xi^⊤ w。
  • RSS(残差平方和):‖ y - Xw ‖2,最小二乘的优化目标。
  • 正规方程:令梯度为零得到的线性方程组 X^⊤ X w = X^⊤ y。
  • 帽子矩阵:ŷ = Hy,H = X(X^⊤ X)-1X^⊤ 是到列空间的正交投影。
  • 多重共线性:特征间近似线性相关使 X^⊤ X 病态、解方差爆炸(kp-008 的动机)。

直观类比

在 (x, y) 散点图上找一条直线,让所有点到直线的竖直距离平方和最小。多维情形是把 y 向量正交投影到由特征张成的子空间——预测就是「y 在特征能解释的平面上的影子」,残差是垂直于该平面的部分(特征解释不掉的)。

原理与机制

对 RSS = (y - Xw)^⊤(y - Xw) 求梯度:∇w = -2X^⊤(y - Xw),置零即正规方程,解出闭式解。正交性 X^⊤ (y - Xw^*) = 0 说明残差与每个特征不相关——这是最小二乘的几何本质:投影。

统计视角下,若 y = Xw + ε 且 ε ∼ 𝒩(0, σ2 I) 高斯噪声,则最小二乘等价于极大似然估计(MLE),且估计量是 BLUE(最佳线性无偏估计,Gauss-Markov 定理在噪声同方差不相关时成立)。这解释了平方损失为何成为回归默认:它恰好对应加性高斯噪声假设。

复杂度与局限:正规方程求逆 O(p3),特征上万时改用梯度法或 QR 分解;n < p 时 X^⊤ X 奇异无唯一解,必须正则化(kp-008)。模型假设(线性、同方差、无强共线、误差独立)不满足时会有系统性偏差,诊断靠残差图。

公式与推导

ŵ = argminw ‖ y - Xw ‖2  ⇒  ∇w = 2X^⊤ Xw - 2X^⊤ y = 0  ⇒  ŵ = (X^⊤ X)-1 X^⊤ y

拟合质量用决定系数 R2 = 1 - ∑i (yi - ŷi)2∑i (yi - ȳ)2 概括:模型解释了总平方和的多少比例。

图示

y │      ●
  │   ●     ●
  │  ● ●   ●   /← ŷ = Xŵ(投影)
  │ ●  ● /●
  │________ x
  残差 e_i = 竖直距离,求 Σe_i² 最小

实例或案例

加州房价数据上对比「闭式解与梯度解一致」:

from sklearn.datasets import fetch_california_housing
from sklearn.linear_model import LinearRegression
from sklearn.model_selection import cross_val_score
import numpy as np

X, y = fetch_california_housing(return_X_y=True)
m = LinearRegression().fit(X, y)
print("系数:", np.round(m.coef_, 3))                       # 系数可直接解读
print("5折CV的R²:", cross_val_score(m, X, y, cv=5).mean())  # 泛化性能

系数符号与大小提供可解释洞察(如「房间数 ↑ 房价 ↑」),这是线性模型在风控、定价等强监管场景受青睐的原因。

常见误区

  • 直接把原始金额、人口等重尾特征喂入:少数极大值主导 RSS,先做对数变换或稳健回归。
  • 用 R2 单独下结论:加任何特征 R2 只增不减,要看样本外的 R2 或调整 R2。
  • 忽略共线性:两个高度相关特征的系数可能一正一负且不稳定,解读系数前先查相关矩阵或用岭回归。

与其他知识点的关系

正则化:岭回归、Lasso 与弹性网 在本节目标上追加惩罚项解决共线与过拟合;特征工程:编码、缩放与缺失值处理 讲训练前的特征变换;主成分分析 PCA 的 PCA 与本节同属「特征值分解」数学家族(最小二乘的 SVD 解即投影的另一面)。

自测题

  1. 为什么说最小二乘解是「正交投影」?

- 要点:正规方程 X^⊤ e = 0 表明残差向量与所有特征列正交,ŷ = Xŵ 是 y 在 span(X) 上的正交投影。

  1. 什么情况下正规方程无解或多解?

- 要点:X^⊤ X 不可逆时——列共线(严格线性相关)或 p > n;工程解法是岭正则化或降维。

  1. 最小二乘与极大似然在什么假设下等价?

- 要点:噪声 i.i.d. 高斯时,负对数似然恰为 12σ2RSS + 常数。

延伸阅读

Hastie 等《The Elements of Statistical Learning》第 3 章;周志华《机器学习》第 3 章。