第 4 课
← 返回系列列表

Course 2:优化算法

Deep Learning Specialization — 深度学习专项课程

Momentum、RMSProp、Adam 等优化器原理与选择策略。

Course 2:优化算法

课程简介

Momentum、RMSProp、Adam 等优化器原理与选择策略。

🎬 本课程视频:Deep Learning Specialization — 深度学习专项课程


一、优化算法

1.1 Mini-batch梯度下降

批量梯度下降每次用全部数据——太慢。随机梯度下降每次用一个样本——震荡太大。Mini-batch 是折中方案。

Batch大小通常选 2 的幂次:64、128、256、512。

1.2 指数加权移动平均(EWMA)

$$v_t = \beta v_{t-1} + (1-\beta)\theta_t$$

$\beta=0.9$ 时平均约最近10个数据点,$\beta=0.99$ 时约100个。

偏差修正:$\hat{v}_t = v_t / (1-\beta^t)$,解决初始低估问题。

1.3 Momentum

$$v_{dW} = \beta v_{dW} + (1-\beta)dW$$
$$W := W - \alpha v_{dW}$$

梯度方向一致时加速,方向震荡时互相抵消。像小球滚下山——惯性抑制了震荡。

1.4 RMSProp

$$s_{dW} = \beta s_{dW} + (1-\beta)dW^2$$
$$W := W - \alpha \frac{dW}{\sqrt{s_{dW} + \epsilon}}$$

梯度大的方向有效学习率变小,梯度小的方向有效学习率变大。每个参数自适应调整。

1.5 Adam

Adam = Momentum + RMSProp:

$$v_{dW} = \beta_1 v_{dW} + (1-\beta_1)dW \quad \text{(一阶矩)}$$
$$s_{dW} = \beta_2 s_{dW} + (1-\beta_2)dW^2 \quad \text{(二阶矩)}$$

偏差修正后更新:

$$W := W - \alpha \frac{v_{dW}^{\text{corrected}}}{\sqrt{s_{dW}^{\text{corrected}}} + \epsilon}$$

默认超参数:$\alpha=0.001$,$\beta_1=0.9$,$\beta_2=0.999$,$\epsilon=10^{-8}$

AdamW是改进版本,将权重衰减与优化步骤解耦。

1.6 学习率衰减策略

指数衰减、分段常数衰减、余弦退火、循环学习率。

def cosine_annealing(epoch, total, lr_max, lr_min=0):
    return lr_min + 0.5*(lr_max-lr_min)*(1+np.cos(np.pi*epoch/total))

1.7 局部最优与鞍点

高维空间中鞍点远比局部最优常见。在一个n维空间中,一个临界点有2^n种可能的符号组合,只有一种对应局部最小值。Adam等自适应方法能帮助逃离鞍点。

延伸阅读

← Course 2:超参数调优与正则化 Course 3:机器学习策略(上) →