数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief

晓查发自凹非寺量子位报道|公众号QbitAI
要挑战Adam地位的优化器又多了一个 。
近日NeurIPS2020收录论文提出的一个优化器 , 在深度学习社区成为焦点 , 引起广泛讨论 。
这就是由耶鲁大学团队提出的AdaBelief 。 团队在论文中表示 , 该优化器兼具Adam的快速收敛特性和SGD的良好泛化性 。
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
所谓AdaBelief , 是指根据梯度方向上的“信念”(Belief)来调整训练的步长 。 它和Adam在算法上的差别并不大 。
二者差别在下面的算法实现上可以轻易看出 。
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
相比Adam , AdaBelief没有引入任何其他新参数 , 只是在最后一步更新时有差异 , 已在上图中用蓝色标出 。
Adam的更新方向是
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
而AdaBelief的更新方向是
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
vt和st的差别在于 , 后者是
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
的指数移动平均(EMA) 。
mt可以看做是gt的预测值 , 当实际值与预测值相差不大时 , 分母
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
较小 , 步长较大 , 权重放心大胆迈开步子更新 。
而实际值与预测值相差很大时 , AdaBelief倾向于“不相信”当前梯度 , 此时分母较大 , 更新步长较短 。
为什么AdaBelief更好
只做在最后一步做了了一个小小的改变 , 未审核会产生如此之大的影响呢?
这主要是因为AdaBelief考虑了两点 。
1、损失函数的曲率问题
理想的优化器应该考虑损失函数的曲线 , 而不是简单地在梯度较大的地方下采取较大的步长 。
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
在“大梯度、小曲率”(图中区域3)情况下|gt-gt-1|和|st|很小 , 优化器应增加其步长 。
2、分母中的梯度符号
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
在上图损失函数为
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
的情况下 , 蓝色矢量代表梯度 , 十字叉代表最优解 。
Adam优化器在y方向上振荡 , 并在x方向上保持前进 。 这是由于
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
在低方差情况下 , Adam中的更新方向接近“符号下降” 。
而在AdaBelief中 ,
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
因此AdaBelief在x方向上走了一大步 , 在y方向上只会走一小步 , 防止振荡产生 。
实验结果
在简单的几种3维损失函数曲面上 , AdamBelief展现出了优秀的性能 。
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
数码实验室|Adam又要“退休”了?耶鲁大学团队提出AdaBelief
文章图片
图像分类
在CIFAR-10和CIFAR-100数据集上 , 用VGG11、ResNet34和DenseNet121三种网络进行训练 , AdaBelief都显示出更好的收敛结果 。
而且在ImageNet数据上 , AdaBelief在Top-1准确率上仅次于SGD 。