A05 · 第 1 章 · 第一编 深度优化
随机梯度、动量与自适应方法
从小批量梯度的抽样估计和方差进入 SGD,推导动量与 Nesterov 状态更新,比较 AdaGrad、RMSProp 和 Adam 的矩估计、偏差修正与 epsilon,并区分耦合 L2 惩罚和解耦权重衰减。
报告页面错误本章目标
- 把小批量梯度视为有抽样条件的估计量,分析批量大小、方差和学习率。
- 按统一约定计算 momentum 与 Nesterov 更新,解释状态、振荡和稳定边界。
- 推导 AdaGrad、RMSProp 与 Adam 的逐坐标尺度和早期偏差修正。
- 说明 epsilon 的数值和算法作用,诊断矩估计、梯度裁剪与非有限状态。
- 区分普通 SGD 下等价的 L2 与权重衰减,以及自适应方法中的解耦差异。
本页目录
小批量梯度是抽样估计
经验目标写为
完整梯度要访问全部 个样本。第 步抽取大小为 的小批量 ,常用估计为
若按规定概率均匀抽样,且样本权重与目标一致,则条件在当前参数上有 。分层抽样、类别过采样或不同纳入概率会改变这个期望,除非用相应重要性权重修正。增强、dropout 和状态化层还引入额外随机性,小批量梯度不只是固定样本梯度的简单子集平均。
独立同分布近似下,均值方差大致随 缩小;无放回抽样还有有限总体修正。真实样本相关、重复实体和类别不平衡会破坏简单比例。增大批量减少单步噪声并提高硬件并行,却减少固定样本访问预算内的更新次数,且需要更多内存。比较批量大小时应固定总样本数、总浮点工作或墙钟预算之一,并清楚说明。
某一参数位置上四个样本梯度为
完整梯度均值为 1。无放回均匀抽两个样本,六个可能批量的均值依次为
六者平均仍为 1,所以估计无偏;围绕 1 的平方偏差平均为 ,说明单步仍有噪声。若当前参数 、学习率 ,抽到梯度为 2.5 的批量后,SGD 更新为
抽到均值 时则更新到 4.05,单步甚至逆着完整梯度方向移动。随机方法的判断对象是操作序列和目标趋势,不能要求每个批量都降低完整训练损失。
SGD 的学习率与批次顺序
基本 SGD 为
学习率太大时,即使平均方向正确也会越过低谷或在高曲率方向发散;太小时有限预算内几乎不移动。固定学习率常在噪声决定的邻域内波动,逐步衰减可在适当假设下继续逼近驻点。所谓批量增大时线性放大学习率只是依赖模型、归一化和训练区间的经验起点,不是普遍定理。
一个 epoch 表示按约定访问约一次数据集,但采样放回、丢弃尾批、分布式分片和动态数据流会让定义不同。梯度累积把多个微批梯度求和或平均后再更新,只有损失归一化、模型状态、随机掩码和数值顺序相容时才近似一个大批量。批归一化仍在每个微批上计算统计量,因此通常不等价。
恢复训练必须保存参数、优化器状态、步数、数据迭代器位置和随机源。只加载模型权重会让动量和矩估计从零开始,产生不同轨迹。监控应至少包括训练目标、验证指标、梯度范数、参数范数、更新与参数范数比、非有限数值和数据吞吐。
Momentum 累积方向
本章固定一种无学习率速度约定:
展开可见 是历史梯度的指数加权和。连续同向梯度累积,平坦方向前进加快;高曲率方向若梯度正负交替,历史项部分抵消,减少锯齿。另一常见约定把学习率放入速度,或把新梯度乘 ;超参数数值不能跨公式直接照搬。
动量引入二阶状态,不保证每步损失下降。对二次目标,稳定性由学习率、 与 Hessian 特征值共同决定; 越接近一,记忆越长,也越可能在突然改变的曲率或梯度尺度下过冲。检测到爆炸梯度时应先定位数据、模型和精度原因,梯度裁剪可限制更新但会改变估计方向和偏差,不能替代诊断。
对确定性一维二次函数 ,本章普通动量可消去速度,得到
在 下,两个特征根都落在单位圆内的条件是 。多维正定二次目标要对每个曲率特征值成立,所以峰值步长受 限制。这个边界只说明线性状态渐近稳定,不保证损失逐步单调,也不能直接套给 Nesterov、随机梯度或随位置变化的非二次曲率。
令 ,初值 ,取 。普通动量第一步
第二步在 求梯度,得到
采用本章 Nesterov 约定时,在前瞻点 求梯度:
第一步仍到 1.8;第二步前瞻点为 ,所以 ,。Nesterov 在预期移动后评估梯度,但这个两步数值不构成对所有目标都更快的证明。
AdaGrad 与 RMSProp 的逐坐标尺度
AdaGrad 累积平方梯度
历史上经常出现大梯度的坐标有效步长变小,稀疏且偶尔出现的坐标能保留较大步长。由于 只增不减,长训练中学习率可能不可逆地衰减到几乎停止;这在某些凸稀疏问题有理论意义,却可能不适合持续变化的深度网络目标。
RMSProp 改用指数移动平均
它会逐渐遗忘很久以前的尺度,更能适应非平稳梯度。 大时估计平滑但响应慢,小则响应快且噪声大。不同实现可能把 放在平方根内,或加动量与 centered 版本;这些细节会在小二阶矩坐标上明显改变更新。
Adam 的一阶矩、二阶矩与偏差修正
Adam 同时维护
从零状态开始时,早期两个移动平均偏向零。第 次更新的修正为
再更新
修正针对从零初始化与近似平稳矩的启动偏差,不会消除小批量噪声,也不能保证非凸目标全局收敛。若从检查点恢复却把步数重置, 修正会错误;步数属于优化器状态。
取参数 、梯度 、,并令 ,暂时忽略极小 。原始矩为
偏差修正后
因此更新量为 ,新参数是 。第一步中梯度幅度被其平方根尺度抵消,主要保留符号;后续历史矩不同后,更新不再只是符号步。若某坐标 很小, 会限制分母并决定有效最大步长,所以它既是数值保护也是算法参数。
大 在梯度尺度突然增大时响应较慢,分母可能暂时低估新尺度;过小 与低精度计算会放大问题。应监控 的范围、更新峰值和非有限值。Adam 常能快速获得可用训练损失,但最终泛化、稳定性和最佳学习率仍依任务而定;不能把默认参数当成证明。
二阶矩 是逐坐标梯度平方的时间平均,不是 Hessian 对角线,也不是曲率逆。某坐标可能曲率很小却因小批量噪声很大而得到大分母,另一个高曲率坐标若近期梯度恰小也可能得到小分母。因此 Adam 的预条件只能按观测梯度尺度调整,不能继承 Newton 方法的局部二次最优性质。它还依赖参数坐标:旋转或重参数化模型后,逐坐标平方与更新方向一般会改变。
偏差修正式中的 假定对应的 在所有早期步骤保持常数。若实现随时间改变 ,正确的零初始化修正应涉及连乘 ;直接沿用常数公式会产生错尺度。冻结某些参数、跳过非有限梯度或稀疏更新时,局部步数如何计数也需由实现契约规定并进入检查点。
L2 惩罚与解耦权重衰减
若把 加入目标,梯度变为 。普通 SGD 更新可写成
所以在同一步长、无其他状态的 SGD 中,它与乘法权重衰减代数等价。对 Adam 等逐坐标预条件方法,把 放进梯度会进入一阶和二阶矩并被坐标归一化;解耦权重衰减则独立执行参数收缩,二者不再等价。
设参数 、数据梯度 、惩罚系数 ,当前自适应预条件比例为 。耦合 L2 梯度为
经预条件后的下降方向为 。若解耦处理,数据梯度方向先变为 ,参数收缩方向另为 ,合计 。两个第二坐标相差很大。
因此使用 AdamW 一类方法时,应记录解耦公式、衰减系数、哪些参数被排除以及学习率调度。偏置和归一化尺度是否衰减是模型设计选择,不能由参数名称含糊决定。
稳定性、状态与比较边界
没有优化器对所有任务占优。SGD 的噪声可能帮助探索,也可能让小数据训练不稳;动量改善狭长谷底,却带来过冲;AdaGrad 适合稀疏坐标但可能过早停滞;RMSProp 与 Adam 适应尺度,却引入更多状态和数值约定。比较时应给相称的学习率搜索、相同数据顺序预算、多个种子、墙钟时间和最终验证结果。
梯度裁剪按全局范数、逐值或分层方式得到不同方向,裁剪发生在微批、累积后还是跨设备同步后也不同。优化器状态通常是参数内存的若干倍,混合精度还需主权重与损失缩放状态。检查点缺任一矩、步数或调度器状态,都只能称重新初始化优化状态的继续训练,不能声称逐步复现。
常见误区
“小批量梯度总是完整梯度的无偏估计。”它需要抽样概率、权重和目标定义相容;过采样与过滤会改变期望。
“Adam 会自动选择学习率。”它只做历史矩预条件,仍需基础学习率、epsilon 和稳定性选择。
“L2 正则与权重衰减永远相同。”等价只在简单 SGD 等特定更新下成立,自适应预条件会破坏它。
练习:从估计量到优化器状态
说明小批量梯度何时无偏,以及增大批量为何不保证方差严格按 缩小。
查看提示
查看解答
展开本章 momentum 的速度状态,并解释它怎样处理持续方向与振荡方向。
查看提示
查看解答
按本章约定写出 Nesterov 一步的计算顺序,并指出实现时最易混淆的状态。
查看提示
查看解答
比较 AdaGrad、RMSProp 与 Adam 的状态、遗忘方式和主要边界。
查看提示
查看解答
为什么 Adam 或 RMSProp 的 不只是可忽略的防除零常数?
查看提示
查看解答
推导普通 SGD 下 L2 与权重衰减的等价,并解释为何 Adam 中通常不等价。
查看提示
查看解答
知识连接与资源
- 神经网络与反向传播综合复习 提供梯度计算和检查基础。
- 梯度下降 给出一阶更新和学习率稳定性基线。
- 统计估计 支持小批量期望、方差和抽样权重分析。
- 学习率调度与二阶近似 继续研究时间步长和曲率预条件。
- 混合精度、分布式训练与检查点 处理同步、数值范围和完整恢复状态。
- 调试、复现实验与工程方法综合复习 联合评估训练稳定与部署成本。
Deep Learning
Ian Goodfellow, Yoshua Bengio, Aaron Courville
适合作为反向传播和优化章节的完整参考。
打开官方来源《Deep Learning》作者在线教材可用于核对随机优化、动量和逐坐标自适应方法的基本动机。具体 Adam、RMSProp 与权重衰减公式仍应以所用实现的参数化和更新顺序为准。
Stanford CS229 Course Materials
Andrew Ng
用于核对经典机器学习模型的目标函数、推导和适用前提。
年份未在已核验来源中明确提供,登记为“暂无可核实信息”;未作推测性补写。打开官方来源Stanford CS229 的随机梯度优化框架支撑本章的共同起点:小批量梯度是经验风险全梯度的随机估计,其方差、批量大小与步长共同影响更新稳定性。动量和逐坐标缩放是在这个估计上增加状态,因而比较优化器时必须固定目标、数据顺序和预算,并连同最终验证误差检查,而不能只比较前几步损失下降速度。