机器学习数学基础 120 章

Newton 法与拟 Newton 法

层级:B|按需

1. 一阶方法看坡度,二阶方法还看曲率

梯度下降对所有方向用同一个学习率;若损失谷地各方向曲率差异大,速度慢。Newton 法用 Hessian 调整每个方向的步长,在局部二次模型准确时可极快收敛。

2. 从求根推导一元 Newton 法

要解 g(x)=0g(x)=0,用切线近似:

g(x+Δ)≈g(x)+g′(x)Δ=0.g(x+\Delta)\approx g(x)+g'(x)\Delta=0.

所以

xt+1=xt−g(xt)g′(xt).x_{t+1}=x_t-\frac{g(x_t)}{g'(x_t)}.

最小化 ff 时令 g=f′g=f':

xt+1=xt−f′(xt)f′′(xt).x_{t+1}=x_t-\frac{f'(x_t)}{f''(x_t)}.

3. 多元 Newton 步

二阶 Taylor 模型:

m(Δ)=f(x)+gTΔ+12ΔTHΔ.m(\Delta)=f(x)+g^T\Delta+\frac12\Delta^TH\Delta.

令模型梯度为零:

HΔ=−g.H\Delta=-g.

解线性系统得 Newton 方向,再更新

xt+1=xt+αtΔ.x_{t+1}=x_t+\alpha_t\Delta.

纯 Newton 用 αt=1\alpha_t=1;全局化版本用线搜索或信赖域。

4. 为何能纠正尺度

在 Hessian 特征方向 qiq_i:

Δi=−giλi.\Delta_i=-\frac{g_i}{\lambda_i}.

曲率大的方向缩小步长,曲率小的方向放大。对严格凸二次函数,Newton 一步到达最优点,与条件数无关(忽略求解误差)。

5. 局部二次收敛

在最优点附近、Hessian 正定且足够光滑等条件下:

∥xt+1−x∗∥≤C∥xt−x∗∥2.\|x_{t+1}-x^*\| \le C\|x_t-x^*\|^2.

误差大致平方,正确位数快速翻倍。但这是局部性质,初始点太远时可能失败。

6. 非凸与奇异问题

  • Hessian 不定:Newton 方向可能是上升方向;
  • Hessian 奇异/近奇异:线性系统无唯一稳定解;
  • 远离最优:二次近似不准确;
  • 高维:存储 O(p2)O(p^2)、直接求解 O(p3)O(p^3) 不可承受。

常用修正:

(H+λI)Δ=−g,(H+\lambda I)\Delta=-g,

选择足够大 λ\lambda 使矩阵正定;或使用信赖域限制 ∥Δ∥\|\Delta\|。

7. 阻尼 Newton 与线搜索

先求 Newton 方向,若 gTΔ<0g^T\Delta<0 是下降方向,再用回溯选择 α∈(0,1]\alpha\in(0,1] 满足充分下降。靠近最优点时通常接受全步 α=1\alpha=1,恢复快速收敛。

若方向非下降,可修改 Hessian、使用负梯度或信赖域。

8. 拟 Newton 思想

不直接算 Hessian,而从相邻迭代的参数与梯度变化近似逆 Hessian或 Hessian。记

st=xt+1−xt,yt=gt+1−gt.s_t=x_{t+1}-x_t, \qquad y_t=g_{t+1}-g_t.

希望近似矩阵满足割线条件

Bt+1st=ytB_{t+1}s_t=y_t

(若 BB 近似 Hessian),模拟 HΔgH\Delta g 的关系。

9. BFGS

BFGS 通过秩二更新维护正定 Hessian 近似或逆近似。若

ytTst>0,y_t^Ts_t>0,

并从正定矩阵开始,更新保持正定,产生下降方向。它在中等维度光滑确定性优化中非常有效。

不必死记完整更新式,重点是:利用梯度差估曲率、满足割线条件、避免显式二阶导。

10. L-BFGS

BFGS 存储 p×pp\times p 矩阵,参数大时昂贵。L-BFGS 只保留最近 mm 对 (st,yt)(s_t,y_t),通过两层循环递推计算方向,内存约 O(mp)O(mp)。

它适合:

  • 全量或低噪声梯度;
  • 光滑目标;
  • 中大规模参数但可承受多次函数/梯度评估。

小批量噪声会让曲率差分不可靠,需随机拟 Newton 变体或更大 batch。

11. 共轭梯度与 Hessian–vector product

Newton 系统

HΔ=−gH\Delta=-g

可用共轭梯度迭代求近似解,只需计算 HvHv,不存 Hessian。若 HH 正定,这形成 truncated Newton/Newton-CG。自动微分可高效计算 HVP。

12. Logistic 回归中的 Hessian

负对数似然梯度与 Hessian:

g=XT(p−y),g=X^T(p-y), H=XTWX,H=X^TWX,

WW 对角元素 pi(1−pi)≥0p_i(1-p_i)\ge0,所以 Hessian PSD。Newton/IRLS 可高效训练中等规模逻辑回归;正则化提高正定性。

易错点

  1. 实现 Newton 步应解 HΔ=−gH\Delta=-g,不显式求 H−1H^{-1}。
  2. 非凸 Hessian 不定时 Newton 方向未必下降。
  3. 二次收敛是局部且有条件的。
  4. L-BFGS 对高噪声 mini-batch 未必合适。
  5. 二阶方法每步贵,评价应看总时间而非步数。

常见问答

Q1:Newton 法没有学习率吗?

纯局部形式用全步,但稳健实现通常有阻尼、线搜索或信赖域半径,相当于控制步长。

Q2:拟 Newton 是二阶方法吗?

它使用梯度差隐式估计曲率,通常归入准二阶方法,不需要显式 Hessian。

Q3:深度学习能用 Newton 法吗?

完整 Newton 很少,但 Hessian-free、K-FAC、自然梯度、Shampoo 等利用曲率结构或近似。大规模一阶方法仍更普遍。

练习

  1. 对 f(x)=12a(x−b)2f(x)=\frac12a(x-b)^2 做一次 Newton 更新。
  2. 多元 Newton 步为何是解线性系统?
  3. Hessian 有负特征值时 Newton 方向可能怎样?
  4. L-BFGS 相比 BFGS 节省了什么?
  5. Logistic Hessian 为什么 PSD?

答案与提示

  1. f′=a(x−b),f′′=af'=a(x-b),f''=a,一步到 bb。
  2. 二次模型一阶条件为 HΔ=−gH\Delta=-g。
  3. 可能沿负曲率方向上升或趋向最大点。
  4. 不存完整 p×pp\times p 矩阵,只存少量向量对。
  5. vTXTWXv=(Xv)TW(Xv)≥0v^TX^TWXv=(Xv)^TW(Xv)\ge0。