前言
模型训练收敛快慢、能否跳出局部最优、泛化效果好坏,优化器与学习率起到决定性作用,是深度学习面试高频考点。本文梳理主流优化器原理、优缺点、选型方案、学习率策略,精简答案直接背诵。
一、优化器核心作用
根据反向传播求出的梯度,按照特定策略更新网络权重参数,不断降低损失函数,让模型逐步收敛至最优状态。
二、主流优化器全面讲解
1. 梯度下降 GD
- 用全部训练集数据计算梯度更新参数
- 优点:梯度稳定,收敛方向准
- 缺点:计算量大、速度极慢,无法在线更新
- 现状:工业界几乎不再使用
2. 随机梯度下降 SGD
- 每次仅用单个样本计算梯度更新
- 优点:训练速度快,具备一定跳出局部最优能力
- 缺点:梯度震荡严重,收敛不稳定,容易来回波动
- 适用:大数据量基线训练、需要强泛化场景
3. 小批量梯度下降 Mini-Batch SGD
- 取一小批样本计算梯度,兼顾速度与稳定性
- 深度学习最基础通用优化方式,绝大多数算法基准
4. 带动量 Momentum-SGD
- 引入历史梯度累积惯性,加速收敛,减缓震荡
- 原理:下坡顺势加速,遇到平缓区域快速滑行
- 优势:收敛速度远快于原始 SGD,缓解震荡
5. AdaGrad
- 自适应调整学习率,频繁更新参数降学习率,稀疏参数提高学习率
- 缺点:后期学习率持续单调递减,容易提前停滞收敛
6. RMSprop
- 优化 AdaGrad 缺陷,引入梯度平方滑动平均