第十一章:Optimization and Gradient Descent --- 知识点笔记
综合来源:Lecture 11 PDF(62页)、课堂笔记(CSDN)
占位图

11.1 优化问题
一般形式
w∗=argminw∈Θf(w)\mathbf{w}^* = \arg\min_{\mathbf{w}\in\Theta} f(\mathbf{w})w∗=argw∈Θminf(w)
- f(w)f(\mathbf{w})f(w):目标函数(ML中=损失/误差函数,依赖数据)
- Θ\ThetaΘ:约束集(ML中最常见=RD\mathbb{R}^DRD无约束)
凸函数 ⭐
定义 :∀w1,w2∈Θ,0≤t≤1\forall w_1,w_2\in\Theta, 0\leq t\leq 1∀w1,w2∈Θ,0≤t≤1:
f(tw1+(1−t)w2)≤tf(w1)+(1−t)f(w2)f(tw_1+(1-t)w_2) \leq tf(w_1)+(1-t)f(w_2)f(tw1+(1−t)w2)≤tf(w1)+(1−t)f(w2)
两点间的函数值 ≤\leq≤ 割线上的值
凸集:集合中任意两点连线仍在集合中。
- 凸函数+凸约束→可高效求解
- 最小二乘、逻辑回归→凸
- 深度学习→非凸(但仍用凸优化技术)
11.2 梯度与Hessian ⭐
梯度
∇f(x)=∂f∂x1⋮∂f∂xD\nabla f(\mathbf{x}) = \begin{bmatrix} \frac{\partial f}{\partial x_1} \\ \vdots \\ \frac{\partial f}{\partial x_D} \end{bmatrix}∇f(x)= ∂x1∂f⋮∂xD∂f
- 梯度指向最陡上升方向
- 梯度=0 → 驻点(最小值/最大值/鞍点)
- 梯度在定义域中(不在函数曲面上)
Hessian矩阵
H=∇2f=∂2f∂x12⋯∂2f∂x1∂xD⋮⋱⋮∂2f∂xD∂x1⋯∂2f∂xD2H = \nabla^2 f = \begin{bmatrix} \frac{\partial^2 f}{\partial x_1^2} & \cdots & \frac{\partial^2 f}{\partial x_1\partial x_D} \\ \vdots & \ddots & \vdots \\ \frac{\partial^2 f}{\partial x_D\partial x_1} & \cdots & \frac{\partial^2 f}{\partial x_D^2} \end{bmatrix}H=∇2f= ∂x12∂2f⋮∂xD∂x1∂2f⋯⋱⋯∂x1∂xD∂2f⋮∂xD2∂2f
- Hessian描述函数的局部曲率
- 特征值决定临界点类型:
| 特征值 | 驻点类型 |
|---|---|
| 全部>0 | 局部最小值 |
| 全部<0 | 局部最大值 |
| 混合 | 鞍点 |
11.3 梯度下降算法 ⭐⭐
核心公式
w(τ+1)=w(τ)−η∇E(w(τ))w^{(\tau+1)} = w^{(\tau)} - \eta \nabla E(w^{(\tau)})w(τ+1)=w(τ)−η∇E(w(τ))
超参数:
- η\etaη:学习率(典型小值0<η<1)
- τmax\tau_{max}τmax:最大迭代次数
停止条件 :权重变化 < 阈值ϵ\epsilonϵ
为什么叫"Batch" GD
每次更新使用全部训练数据计算梯度
损失曲线
- 训练误差:持续下降
- 验证误差:先降后升→过拟合→选验证误差最低点
11.4 二次近似与收敛性 ⭐⭐
二阶泰勒展开
E(w)≈E(w^)+(w−w^)Tb+12(w−w^)TH(w−w^)E(w) \approx E(\hat{w}) + (w-\hat{w})^T b + \frac{1}{2}(w-\hat{w})^T H (w-\hat{w})E(w)≈E(w^)+(w−w^)Tb+21(w−w^)TH(w−w^)
- b=∇E(w^)b = \nabla E(\hat{w})b=∇E(w^)(梯度向量)
- H=∇2E(w^)H = \nabla^2 E(\hat{w})H=∇2E(w^)(Hessian矩阵)
在驻点处(b=0b=0b=0)
Hessian特征分解 Hui=λiuiHu_i = \lambda_i u_iHui=λiui,变量代换 w−w∗=∑αiuiw-w^* = \sum \alpha_i u_iw−w∗=∑αiui:
E(α)=E(w∗)+12∑iαi2λiE(\alpha) = E(w^*) + \frac{1}{2}\sum_i \alpha_i^2 \lambda_iE(α)=E(w∗)+21i∑αi2λi
GD收敛条件
αi(τ)=(1−ηλi)ταi(0)\alpha_i^{(\tau)} = (1 - \eta\lambda_i)^\tau \alpha_i^{(0)}αi(τ)=(1−ηλi)ταi(0)
收敛要求 :∣1−ηλi∣<1|1-\eta\lambda_i| < 1∣1−ηλi∣<1 对所有iii
→ η<2λmax\eta < \frac{2}{\lambda_{max}}η<λmax2
11.5 条件数与收敛速度 ⭐
条件数
κ=λmaxλmin\kappa = \frac{\lambda_{max}}{\lambda_{min}}κ=λminλmax
- κ\kappaκ小→良态→GD收敛快
- κ\kappaκ大→病态→慢!
- 最慢收敛维度:∣1−2λmaxλmin∣≈1−2κ|1-\frac{2}{\lambda_{max}}\lambda_{min}| \approx 1-\frac{2}{\kappa}∣1−λmax2λmin∣≈1−κ2
GD的问题
| 问题 | 原因 | 效果 |
|---|---|---|
| 收敛慢 | 误差曲面平坦 | η\etaη太小→步长小 |
| 震荡 | 病态条件 | η\etaη太大→在陡方向来回跳 |
11.6 动量(Momentum)⭐
公式
Δw(τ)=−η∇E(w(τ))+μΔw(τ−1)\Delta w^{(\tau)} = -\eta \nabla E(w^{(\tau)}) + \mu \Delta w^{(\tau-1)}Δw(τ)=−η∇E(w(τ))+μΔw(τ−1)
w(τ+1)=w(τ)+Δw(τ)w^{(\tau+1)} = w^{(\tau)} + \Delta w^{(\tau)}w(τ+1)=w(τ)+Δw(τ)
- μ∈[0,1)\mu \in [0,1)μ∈[0,1):动量超参数(典型0.9)
动量如何帮助
| 场景 | 效果 | 有效学习率 |
|---|---|---|
| 平坦方向(梯度≈恒定) | 加速 | η1−μ\frac{\eta}{1-\mu}1−μη(几何级数累加) |
| 震荡方向(梯度交替变号) | 减速 | η1+μ\frac{\eta}{1+\mu}1+μη(交替级数抵消) |
动量=历史梯度的指数加权移动平均→加速平坦方向+平滑震荡方向!
笔记中的图片索引
| 序号 | 图片内容描述 | 来源位置 |
|---|---|---|
| 图1 | 凸函数vs非凸函数 | Lecture 11 第8页 |
| 图2 | 梯度指向最陡上升方向 | Lecture 11 第16-17页 |
| 图3 | 最小值vs最大值vs鞍点 | Lecture 11 第20页 |
| 图4 | GD迭代直观过程 | Lecture 11 第24-34页 |
| 图5 | Hessian特征值决定临界点类型 | Lecture 11 第51页 |
| 图6 | 病态条件数导致GD震荡 | Lecture 11 第58页 |
| 图7 | 动量效应:平坦加速+震荡减速 | Lecture 11 第60-61页 |
笔记整理时间:2026年6月28日