M3-039M3: Deep Learning FoundationsOptimizers & Second-Order MethodsMedium
Mastery:

Optimizers & Second-Order Methods: 比较 Adagrad / RMSProp / AdaDelta 的思想与 Adagrad 的缺陷。

📐 Mathematical Definition
Adagrad: vt=vt−1+gt2;RMSProp: vt=βvt−1+(1−β)gt2;AdaDelta: Δθ=−RMS[Δθ]t−1RMS[g]tgt\text{Adagrad}:\ v_t=v_{t-1}+g_t^2;\qquad \text{RMSProp}:\ v_t=\beta v_{t-1}+(1-\beta)g_t^2;\qquad \text{AdaDelta}:\ \Delta\theta=-\frac{\mathrm{RMS}[\Delta\theta]_{t-1}}{\mathrm{RMS}[g]_t}g_t
⚡ Executive Summary
Core Concept: Adagrad 累积所有历史梯度平方(学习率单调衰减→后期停滞);RMSProp 用 EWMA 替代累积;AdaDelta 用参数更新量的 RMS 替代固定 lr。

📌 Key Takeaways

  • •
    Adagrad 的 v 单调增 → 有效 lr 单调减 → 后期几乎不动
  • •
    RMSProp 的 EWMA 让 v 有界、学习率不衰减到 0
  • •
    AdaDelta 无需设置 lr(用历史更新量的 RMS 自适应)

📐 Mathematical Derivations

数学机理:三者都在 Adam 的谱系上。<strong>Adagrad</strong>(Duchi 2011):v_t=Σ_{k≤t}g_k²(累积平方和),更新 θ←θ−η·g/√(v+ε)。对<strong>稀疏特征</strong>(如 one-hot 文本特征),出现频率低的特征累积的 v 小、故有效步长大,自然实现'低频特征多学'——这是它在 NLP 稀疏场景的经典优势。缺陷是 v <strong>单调递增</strong>,有效 lr η/√v 随时间衰减到 0,训练后期几乎停滞,需手工调 lr 或加 restart。<strong>RMSProp</strong>(Hinton 2012,未正式发表):把累积改成指数加权 v_t=βv_{t−1}+(1−β)g²,v 不再单调增、而是跟踪'近期梯度能量',从而学习率自适应但不衰减到 0——解决了 Adagrad 的停滞问题。<strong>AdaDelta</strong>(Zeiler 2012):进一步把分母的 η 也自适应化——用<strong>历史参数更新量的 RMS</strong> 替代 η,即 Δθ=−(RMS[Δθ]_{t−1}/RMS[g]_t)·g,实现'无需手动设置 lr';其直觉是'参数应移动的量级应与它过去的移动量级匹配'。<strong>Adam</strong> 可视为 RMSProp + 一阶动量 m,故是 RMSProp 的直接推广。

🏭 Production Trade-offs

深度剖析与工程权衡:① <strong>谱系清晰化</strong>——Adagrad → RMSProp(改累积为 EWMA)→ Adam(加一阶动量 + 偏差修正);AdaDelta 是旁支(去 lr);理解这条线可在面试中'一句话定位'任何优化器。② <strong>稀疏场景的现代方案</strong>——Adagrad 在推荐系统/稀疏 embedding 中仍有用武之地;但大规模稀疏场景更常用 <strong>LazyAdam</strong>(只更新被触发的行)或 <strong>sparse Adam</strong>(利用稀疏梯度减少更新)。③ <strong>RMSProp 的历史地位</strong>——它是'自适应方法实用化'的关键一步,且在小 batch、RNN 训练中表现稳健;很多 RL 工作(如 DQN)用 RMSProp 而非 Adam。④ <strong>AdaDelta 的局限</strong>——'无需 lr'的承诺在实践中因需要调节 ε 与 ρ 而打折;且没有一阶动量使其在深度网络上不如 Adam 平滑,故未被广泛采用。⑤ <strong>AdaBound/AMSGrad</strong>——针对 Adam 在后期可能因 v 波动而步长不稳,AdaBound 让有效 lr 在合理区间内变化(动态裁剪),AMSGrad 保证分母单调;两者都是'修补 Adam 理论缺陷'的努力。⑥ <strong>面试要点</strong>——被问'Adagrad 为什么后期不动',答案要精确到'v 单调累积 → η/√v 单调衰减';被问'RMSProp 怎么修的',答'EWMA 使 v 有界'。
⚠️ Common Interview Pitfalls
  • ✕
    以为 RMSProp 需要偏差修正(其 v 无零偏问题严重度低于 Adam)
  • ✕
    混淆 AdaDelta 的 RMS[Δθ] 与学习率 η 的作用
🎯 Interviewer Follow-ups
  • ?
    为什么 Adagrad 适合稀疏特征场景?
  • ?
    AdaDelta 与 Adam 的关系是什么?
📚

Associated Knowledge Base Guides & Mindmaps

Explore the comprehensive technical article, exam cards, and global architecture tree.

← PreviousM3-038: Optimizers & Second-Order Methods: 解释 Adafactor / 8-bit Adam 如何降低优化器显存。📋Back to BankNext →M3-040: Learning Rate Schedules: 为什么需要 warmup?