【深度学习】Adam和AdamW优化器有什么区别,以及为什么Adam会被自顺应学习 ...

打印 上一主题 下一主题

主题 899|帖子 899|积分 2697

Adam 和 AdamW 的重要区别在于 权重衰减(Weight Decay) 的实现方式,具体如下:
1. 权重衰减(Weight Decay)处理方式



  • Adam:采用 L2 正则化,通过在梯度更新时手动添加 weight_decay 项:
                                                                    g                                     t                                              =                                  ∇                                  f                                  (                                               θ                                     t                                              )                                  +                                  λ                                               θ                                     t                                                      g_t = \nabla f(\theta_t) + \lambda \theta_t                           gt​=∇f(θt​)+λθt​
    此中,                                             λ                                      \lambda                        λ 是权重衰减系数。
  • AdamW:直接在 参数更新时 实行权重衰减,而不是在梯度盘算时添加 L2 正则:
                                                                    θ                                                   t                                        +                                        1                                                           =                                               θ                                     t                                              −                                  η                                                             m                                        t                                                                                               v                                              t                                                                     +                                        ϵ                                                           −                                  η                                  λ                                               θ                                     t                                                      \theta_{t+1} = \theta_t - \eta \frac{m_t}{\sqrt{v_t} + \epsilon} - \eta \lambda \theta_t                           θt+1​=θt​−ηvt​                      ​+ϵmt​​−ηλθt​
    这里权重衰减项独立于梯度盘算,在更新参数时进行。
2. 影响



  • Adam 的 L2 正则化 会影响梯度估计值,导致优化器在 自顺应学习率的调治 过程中对权重衰减的影响不稳固。
  • AdamW 的独立权重衰减 让权重衰减成为一个真正的正则化项,而不会干扰梯度估计,使得模子的 泛化能力更强
3. 实验对比



  • 论文 Decoupled Weight Decay Regularization(Loshchilov & Hutter, 2019)表明,在深度学习任务(如 NLP 和 CV)中,AdamW 通常比 Adam 泛化性能更好,因为它的权重衰减不会被 Adam 的自顺应学习率影响。
  • AdamW 在 Transformer 模子(如 BERT、ViT)中被广泛采用,因为它有更稳固的收敛性。
4. 总结

AdamAdamW权重衰减方式L2 正则化(影响梯度)直接在更新时进行(不影响梯度)对梯度估计的影响大概影响梯度自顺应调整不影响自顺应学习率调整泛化能力较弱,大概过拟合更强,正则化效果更好应用场景实用于小规模任务实用于大规模深度学习任务(如 BERT、ViT)
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

北冰洋以北

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表