机器学习数学基础 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=xtg(xt)g(xt).x_{t+1}=x_t-\frac{g(x_t)}{g'(x_t)}.

最小化 ff 时令 g=fg=f'

xt+1=xtf(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+1xCxtx2.\|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+1xt,yt=gt+1gt.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(py),g=X^T(p-y), H=XTWX,H=X^TWX,

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

易错点

  1. 实现 Newton 步应解 HΔ=gH\Delta=-g,不显式求 H1H^{-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(xb)2f(x)=\frac12a(x-b)^2 做一次 Newton 更新。
  2. 多元 Newton 步为何是解线性系统?
  3. Hessian 有负特征值时 Newton 方向可能怎样?
  4. L-BFGS 相比 BFGS 节省了什么?
  5. Logistic Hessian 为什么 PSD?

答案与提示

  1. f=a(xb),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