返回 数理基础 思维导图
中文·English
📐 数理基础ID: adamw-math

Adam/AdamW 偏差修正推导

Adam/AdamW Math
🎯核心定义
Adam = 一阶矩(均值)mtm_t + 二阶矩(未中心化方差)vtv_t 的指数移动平均 + 偏差修正。对梯度 gtg_t: mt=β1mt1+(1β1)gtm_t = \beta_1 m_{t-1} + (1-\beta_1)g_t,vt=β2vt1+(1β2)gt2v_t = \beta_2 v_{t-1} + (1-\beta_2)g_t^2。把 mtm_t 展开为几何级数: mt=(1β1)i=1tβ1tigim_t = (1-\beta_1)\sum_{i=1}^{t}\beta_1^{t-i}g_i,即历史梯度权重 β1ti\beta_1^{t-i} 随年代指数衰减,最近梯度占主导。偏差推导: 设梯度平稳 E[gi]=E[g]\mathbb{E}[g_i] = \mathbb{E}[g],则 E[mt]=(1β1)i=1tβ1tiE[gi]=(1β1)E[g]k=0t1β1k=(1β1)E[g]1β1t1β1=(1β1t)E[g]\mathbb{E}[m_t] = (1-\beta_1)\sum_{i=1}^{t}\beta_1^{t-i}\mathbb{E}[g_i] = (1-\beta_1)\mathbb{E}[g]\sum_{k=0}^{t-1}\beta_1^k = (1-\beta_1)\mathbb{E}[g]\cdot\frac{1-\beta_1^t}{1-\beta_1} = (1-\beta_1^t)\mathbb{E}[g]。t 很小时该系数远小于 1(如 t=1t=11β1=0.11-\beta_1 = 0.1),一阶矩被系统性低估(前几步几乎等于 β1t\beta_1^t 比例的梯度),因此除以 1β1t1-\beta_1^t 做偏差修正: m^t=mt1β1t\hat m_t = \frac{m_t}{1-\beta_1^t},v^t=vt1β2t\hat v_t = \frac{v_t}{1-\beta_2^t}(二阶矩修正同理,因 E[vt]=(1β2t)E[g2]\mathbb{E}[v_t] = (1-\beta_2^t)\mathbb{E}[g^2]),修正后 E[m^t]=E[g]\mathbb{E}[\hat m_t] = \mathbb{E}[g]。完整更新: wt+1=wtηm^tv^t+ϵw_{t+1} = w_t - \eta\frac{\hat m_t}{\sqrt{\hat v_t} + \epsilon}
💡使用场景
训练 Transformer、扩散模型等大批量/稀疏梯度场景的默认优化器;面试高频追问“为什么 Adam 需要偏差修正”“AdamW 与 Adam+L2 的区别”。
解决的核心痛点
相比 SGD+动量,Adam 用 m^t/v^t\hat m_t/\sqrt{\hat v_t} 对每个参数做自适应缩放(尺度约 1),对病态条件数(κ\kappa 大)与稀疏梯度鲁棒,且偏差修正保证早期迭代不被低估的动量拖慢。AdamW 的 weight decay 与 L2 解耦: Adam+L2 中正则项 λwt\lambda w_t 进入 gtg_t 后被 v^t\sqrt{\hat v_t} 缩放,有效衰减 ηλwt/v^t\eta\lambda w_t/\sqrt{\hat v_t} 随历史梯度幅度变化——大梯度方向被正则得太多、小梯度方向被正则得太少;AdamW 直接更新 wt+1=wtη(λwt+m^tv^t+ϵ)w_{t+1} = w_t - \eta\left(\lambda w_t + \frac{\hat m_t}{\sqrt{\hat v_t}+\epsilon}\right),每个参数每步衰减率恒为 1ηλ1 - \eta\lambda,训练更稳、泛化更好。
🎯5 个高频面试考点 (Exam Points)
1
写出 Adam 的矩估计递归式,并把 mtm_t 展开为 mt=(1β1)i=1tβ1tigim_t = (1-\beta_1)\sum_{i=1}^{t}\beta_1^{t-i}g_i,说明历史权重如何衰减。
2
证明偏差: 用等比数列求和证 E[mt]=(1β1t)E[g]\mathbb{E}[m_t] = (1-\beta_1^t)\mathbb{E}[g],并说明为什么 t=1t=1 时偏差最严重(1β1=0.11-\beta_1 = 0.1)。
3
为什么偏差修正要除以 1β1t1-\beta_1^t?证明修正后 E[m^t]=E[g]\mathbb{E}[\hat m_t] = \mathbb{E}[g];二阶矩 v^t\hat v_t 为何也要修正且要开方。
4
对比 Adam+L2 与 AdamW: λwt\lambda w_tv^t\sqrt{\hat v_t} 缩放会怎样扭曲有效正则强度?解耦 weight decay 的意义是什么?
5
写出完整更新 wt+1=wtηm^tv^t+ϵw_{t+1} = w_t - \eta\frac{\hat m_t}{\sqrt{\hat v_t}+\epsilon};为什么 ϵ\epsilon 放在分母而不是分子?
更新于 2026-08-12
🎯
检验攻克程度:针对「Adam/AdamW 偏差修正推导」专属刷题排雷
做单选排雷题、推导选项机制,答错自动收录进专属错题本。
🚀 开始本考点专项刷题
上一个知识点矩阵求导与 Softmax 梯度下一个知识点凸优化与 KKT

🔗 更多 数理基础 知识点卡片

贝叶斯推断偏差方差分解Bootstrap因果推断与 Rubin 框架