Adam学习率Scaling law的「浪涌现象」

点击蓝字

5e719c30fbe9284112a1c01e978276b7.jpeg

关注我们

AI TIME欢迎每一位AI爱好者的加入!

平时工作学习中,训练模型时候比较重要的两个超参数是Batch size和Learning rate。在采用不同Batch size训练时候,该如何调整学习率?不同的优化器上Batch size对最佳学习率的选择是否有影响?

为了回答上面的问题,我们过往的研究做了一些调研:

2014年Alex在自己的“笔记”(https://arxiv.org/pdf/1404.5997)中记录过这样一段话:

Theory suggests that when multiplying the batch size by k, one should multiply the learning rate

by √ k to keep the variance in the gradient expectation constant.

他说理论建议学习率应该随着Batch size的平方根放缩。

但是2018 年的一份工作(https://arxiv.org/pdf/1706.02677)中指出:

To tackle this unusually large minibatch size, we employ a simple and hyper-parameter-free linear scaling rule to adjust the learning rate. While this guideline is found in earlier work [21, 4], its empirical limits are not well understood and informally we have found that it is not widely known to the research community.

Alex提到的理论似乎失传了,并且他们发现可能直接采用随着Batch size的线性放缩更合适。

就在学习率放缩率这样反复横跳的时候,2018年年底OpenAI Scaling law的序章之一(https://arxiv.org/pdf/1812.06162)中对采用SGD进行Large-Batch训练的模型行为进行了系统的理论阐述和实验验证。其中一个比较重要的结论是,SGD 优化的模型其Batch size和Learning rate的放缩率服从:

ebdc93165372431ba0d8b36ecf03dfcd.png

其放缩行为如下图所示:

6c7d3d3c997306885806427517415921.png

在Batch size较小的时候,学习率确实是近似与Batch size线性放缩的。但是随着Batch size变得更大,最优的学习率逐渐趋于饱和。

那么有了上述理论结果是否意味着,Batch size和Learning rate 放缩关系这个问题已经彻底解决了?似乎OpenAI文章中的一段小字预示了结论:

To tackle this unusually large minibatch size, we employ a simple and hyper-parameter-free linear scaling rule to adjust the learning rate. While this guideline is found in earlier work [21, 4], its empirical limits are not well understood and informally we have found that it is not widely known to the research community.

Emm...,好像Adam在实验现象和理论结论上有一些偏差,结果好坏参半。

AITIME

01

理论发现

最近我们的一份工作(Surge Phenomenon in Optimal Learning Rate and Batch Size Scaling)中

ceb78aca8ef33cd8ce06fb466545f2ed.png

9ec13a9c7c0bc51e7327c3196fd22b8a.png

a6ed5fd5602790dc7a9ae9951dfe4846.png

AITIME

02

验证理论

通过网格搜索可以观察到不同Batch size和Learning rate配置下Loss下降的快慢(下图中颜色越红,下降越快),如果理论正确的话,利用理论公式推算的Scaling law曲线应该可以尽可能的穿过图中红色区域:

139a3f28082edf7129396a389d184168.png

f0bdb640b2a1ec93fc9eeceeb546bea8.png

AITIME

03

观测「浪涌现象」

使用和上一节相同方式,画出训练过程中不同Loss水平的Scaling law曲线,并观察「浪尖」的变化:

3773dbc1c192e09f9af6468540a838e6.png

可以看到,随着训练Loss的降低,「浪尖」确实在逐渐向右也就是更大Batch size的方向移动。

AITIME

04

额外的想法

a28e8fe74909aabf107b0b9eaacc3828.png

往期精彩文章推荐

673d24320c2a496f1c286dc4f9d9b01a.jpeg

论文解读 | CVPR2024:Sherpa3D:通过粗略的3D先验提升高保真文本到3D生成

记得关注我们呀!每天都有新知识!

 关于AI TIME 

AI TIME源起于2019年,旨在发扬科学思辨精神,邀请各界人士对人工智能理论、算法和场景应用的本质问题进行探索,加强思想碰撞,链接全球AI学者、行业专家和爱好者,希望以辩论的形式,探讨人工智能和人类未来之间的矛盾,探索人工智能领域的未来。

迄今为止,AI TIME已经邀请了1800多位海内外讲者,举办了逾600场活动,超700万人次观看。

be597e5335f47adaf694dbcaff690872.png

我知道你

在看

提出观点,表达想法,欢迎

留言

0544e84b58e366cc14e05d96dac9669f.gif

点击 阅读原文 查看更多!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值