重新思考学习率与Batch Size(四):EMA

💡 原文中文,约11300字,阅读约需27分钟。
📝

内容提要

本文探讨了动量机制对优化器(如SignSGD和Adam)学习率与Batch Size关系的影响。动量通过对梯度的滑动平均,等效于放大Batch Size,从而影响学习率的调整。研究表明,动量的引入使学习率与Batch Size之间的关系更加复杂,尤其在Adam中表现出新的特性。

🎯

关键要点

  • 本文探讨动量机制对优化器学习率与Batch Size关系的影响。
  • 动量通过对梯度的滑动平均,等效于放大Batch Size。
  • 动量的引入使学习率与Batch Size之间的关系更加复杂,尤其在Adam中表现出新的特性。
  • SignSGD被视为Adam的理论近似,但两者在Update RMS上存在明显差异。
  • 动量是导致SignSGD与Adam之间差异的核心原因。
  • 动量机制的引入相当于将SGD的Batch Size放大到特定倍数。
  • SignSGDM和Muon中的动量作用与SignSGD一致,均放大Batch Size。
  • Adam的学习率规律与SignSGD一致,但在二阶矩上存在差异。
  • 随着Batch Size增大,Adam的学习率应减小,可能加速“Surge现象”的出现。
  • 动量机制的引入会稍微改变学习率与Batch Size的尺度定律,Adam呈现出不同的新特性。

延伸问答

动量机制如何影响学习率与Batch Size的关系?

动量机制通过对梯度的滑动平均,等效于放大Batch Size,从而使学习率与Batch Size之间的关系变得更加复杂。

SignSGD与Adam之间的主要区别是什么?

SignSGD的Update RMS总是1,而Adam的Update RMS通常小于1,主要差异在于动量的引入。

动量机制如何改变学习率的调整规律?

动量机制的引入使得随着Batch Size增大,Adam的学习率应减小,这可能加速“Surge现象”的出现。

什么是“Surge现象”?

“Surge现象”指当Batch Size超过某个阈值后,最优学习率随着Batch Size的增大而减少。

动量机制在不同优化器中的作用有什么相似之处?

动量机制在SignSGDM和Muon中都表现出将Batch Size放大到特定倍数的作用,类似于在Adam中的表现。

动量机制如何影响SGD的Batch Size?

动量机制的引入相当于将SGD的Batch Size放大到$ rac{1 + eta_1}{1 - eta_1}$倍。

➡️

继续阅读