常见方法
(1) AdaGrad
- 特点:对每个参数单独维护学习率,历史梯度越大,学习率衰减越多。
- 优点:适合稀疏数据(如NLP的词向量训练)。
- 缺点:学习率会不断衰减,后期可能几乎停止更新。
- 更新公式: 其中 是历史梯度平方和。
(2) RMSProp
- 特点:解决 AdaGrad 学习率衰减过快的问题。
- 用指数加权平均(EMA)来记录梯度平方的移动平均值。
- 优点:适合非平稳目标(如深度学习训练)。
- 缺点:需要手动设置衰减系数。
- 更新公式:
(3) Adam (Adaptive Moment Estimation)
- 特点:结合 动量法(Momentum) + RMSProp 的优点。
- 对梯度的一阶矩(平均值)和二阶矩(方差)都做指数加权平均,并进行偏差修正。
- 优点:几乎是深度学习的默认优化器,收敛速度快,对超参数不敏感。
- 缺点:有时泛化性能不如 SGD。
- 更新公式:
3. 对比总结
方法 | 学习率调整方式 | 优点 | 缺点 |
---|---|---|---|
AdaGrad | 历史梯度平方和 | 稀疏特征效果好 | 学习率衰减过快 |
RMSProp | 梯度平方的滑动平均 | 适合非平稳目标 | 需调衰减系数 |
Adam | 动量 + RMSProp | 收敛快,易用 | 泛化能力有时差 |