岭回归(Ridge Regression)辨析

关键词:L2 正则、病态矩阵、偏差--方差权衡、共线性、凸优化、闭式解


1. 从最小二乘谈起

普通最小二乘(OLS)目标:
β^OLS=arg⁡min⁡β∥y−Xβ∥22 \hat{\beta}{\text{OLS}} = \arg\min{\beta} \|\mathbf{y} - \mathbf{X}\beta\|_2^2 β^OLS=argβmin∥y−Xβ∥22

当设计矩阵 XTX\mathbf{X}^T\mathbf{X}XTX 接近奇异(共线性、高维小样本)时,解的方差爆炸,预测不稳定。岭回归在损失函数里加上 L2 惩罚,把奇异矩阵"拽"回正定。


2. 目标函数:带 L2 正则的二次规划

岭回归目标:
J(β)=∥y−Xβ∥22⏟数据拟合+λ∥β∥22⏟L2 惩罚,λ≥0 J(\beta) = \underbrace{\|\mathbf{y} - \mathbf{X}\beta\|2^2}{\text{数据拟合}} + \underbrace{\lambda \|\beta\|2^2}{\text{L2 惩罚}}, \quad \lambda \geq 0 J(β)=数据拟合 ∥y−Xβ∥22+L2 惩罚 λ∥β∥22,λ≥0

  • λ\lambdaλ:调谐参数,越大 → 参数压缩越狠,方差↓偏差↑
  • 惩罚项不含截距(通常中心化处理,可证截距不收缩)

3. 闭式解:一步到位的"岭估计量"

令 Aλ=XTX+λIp\mathbf{A}_\lambda = \mathbf{X}^T\mathbf{X} + \lambda \mathbf{I}pAλ=XTX+λIp,则
β^ridge=(XTX+λIp)−1XTy \hat{\beta}
{\text{ridge}} = (\mathbf{X}^T\mathbf{X} + \lambda \mathbf{I}_p)^{-1} \mathbf{X}^T\mathbf{y} β^ridge=(XTX+λIp)−1XTy

对比 OLS:β^OLS=(XTX)−1XTy\hat{\beta}_{\text{OLS}} = (\mathbf{X}^T\mathbf{X})^{-1} \mathbf{X}^T\mathbf{y}β^OLS=(XTX)−1XTy

  • 加上 λI\lambda \mathbf{I}λI 保证严格正定,逆矩阵永远存在 → 数值稳定
  • 特征值视角:eig(XTX)→eig(XTX)+λ\text{eig}(\mathbf{X}^T\mathbf{X}) \to \text{eig}(\mathbf{X}^T\mathbf{X}) + \lambdaeig(XTX)→eig(XTX)+λ,小特征值被"抬"离零

4. 偏差--方差权衡图示

情形 偏差 方差 总误差
λ=0\lambda = 0λ=0(OLS) 极高
λ↑\lambda \uparrowλ↑ ↓↓ 先↓后↑
λ→∞\lambda \to \inftyλ→∞ 极高(≈0) 0

最优 λ\lambdaλ 存在于偏差--方差曲线最低点,需借助交叉验证选取。


5. 贝叶斯视角:高斯先验 = L2 惩罚

假设参数先验 β∼N(0,σ2/λI)\beta \sim \mathcal{N}(0, \sigma^2/\lambda \mathbf{I})β∼N(0,σ2/λI),则后验众数恰好是岭解。

岭回归 ≈ 最大后验估计 (MAP) ,λ\lambdaλ 反映先验置信度。


6. 岭回归 vs. L2 正则化:说法不同,本质相同

维度 岭回归 (Ridge Regression) L2 正则化 (L2 Regularization)
语境 统计学习、计量经济 机器学习、优化社区
强调 一个具体模型:闭式解、推断、贝叶斯解释 一种通用技术 :在任意损失上添加 λ∣w∣2\lambda|\mathbf{w}|^2λ∣w∣2
数学形式 最小二乘 + λ∣β∣2\lambda|\beta|^2λ∣β∣2 任意损失 + λ∣w∣2\lambda|\mathbf{w}|^2λ∣w∣2
解的存在 永远有闭式解 可能需数值迭代(如深度学习)
可解释性 收缩路径可解析推导 通常作为黑盒惩罚项

一句话总结:
L2 正则化是"思想",岭回归是"思想 + 闭式解 + 统计推断"的完整模型。


7. 与 Lasso、Elastic Net 的关系

方法 惩罚形式 特性 解路径
Ridge λ∣β∣22\lambda |\beta|_2^2λ∣β∣22 连续收缩,不稀疏 闭式
Lasso λ∣β∣1\lambda |\beta|_1λ∣β∣1 自动特征选择 分段线性
Elastic Net λ1∣β∣1+λ2∣β∣22\lambda_1 |\beta|_1 + \lambda_2 |\beta|_2^2λ1∣β∣1+λ2∣β∣22 兼具稀疏与分组效应 数值

8. 快速代码:NumPy 一行实现

python 复制代码
import numpy as np

def ridge_closed_form(X, y, lam=1.0, fit_intercept=True):
    if fit_intercept:
        X = np.column_stack([np.ones(X.shape[0]), X])
    A = X.T @ X + lam * np.eye(X.shape[1])
    beta = np.linalg.solve(A, X.T @ y)   # 比inv更稳定
    return beta

9. 小结一句话

岭回归 = 最小二乘 + L2 约束,用可控的"偏差"换取巨大的"方差"下降,是高维、共线性场景下最稳健、最可解释的线性模型之一。

相关推荐
zh_xuan9 分钟前
kotlin 密封类
开发语言·kotlin
Quintus五等升5 小时前
深度学习②|实现人数回归预测
人工智能·深度学习·学习·机器学习·回归
移幻漂流6 小时前
Kotlin 如何解决 Java 的核心痛点:现代语言特性的深度剖析
java·python·kotlin
zhangphil8 小时前
Kotlin实现Glide/Coil图/视频加载框架(二)
android·kotlin
Rubin智造社9 小时前
见路不走:从《天幕红尘》读懂2026年的创新密码
android·开发语言·kotlin
努力的小白o(^▽^)o11 小时前
回归实战(小白版本)
人工智能·数据挖掘·回归
冬奇Lab1 天前
【Kotlin系列08】泛型进阶:从型变到具体化类型参数的类型安全之旅
android·开发语言·windows·安全·kotlin
zh_xuan1 天前
kotlin 尾随Lambda表达式函数的常用简写
开发语言·kotlin
老歌老听老掉牙2 天前
回归模型评估的双重镜:决定系数与平均绝对误差
人工智能·数据挖掘·回归
zh_xuan2 天前
kotlin对集合数据的操作
开发语言·kotlin