Adam优化器杂谈

栏目: IT技术 · 发布时间: 3年前

内容简介:文章来自:微信公众号【机器学习炼丹术】最常用的Adam优化器,有着收敛速度快、调参容易等优点,但是也存在经常被人吐槽的泛化性问题和收敛问题。因此,在很多大佬的代码中,依然会使用传统的SGD+momentum的优化器。

文章来自:微信公众号【机器学习炼丹术】

最常用的Adam优化器,有着收敛速度快、调参容易等优点,但是也存在经常被人吐槽的泛化性问题和收敛问题。

因此,在很多大佬的代码中,依然会使用传统的SGD+momentum的优化器。

关于两个优化器的比较,仁者见仁智者见智,可以看一下这篇文章,有简单的关于这两个优化器的代码实现和效果比较:

Pytorch的SGD,SGDM,Adam,RAdam的代码实现

这篇文章就随便的谈一谈下面的问题,来让大家扩展一下知识:

  • Adam被攻击的泛化问题和收敛问题;

Adam是什么

对机器学习有了解的朋友,应该对Adam优化器不陌生了。大体来说就是 Momentum + Adagrad + RMSProp 的结合。

Adam优化器杂谈

【如果需要的话,之后可以简单易懂的通俗讲讲各种类型的优化器的算法】

从Adam和SGDM中就可以得知,Momentum是一个很好的设计。

Adam的两个吐槽

泛化问题

在讨论模型泛化问题的时候, 我们会希望模型找到的极小值(收敛位置),是一个比较平缓、不陡峭的位置! ,原因看下图:

![]( http://helloworld2020.net/wp-...

左边的那个收敛点是一个比较平缓的点,而右边的是一个非常陡峭非常sharp的收敛点。而训练集和测试集虽然要求同分布,但是其实还是会有微小的差别。

对于陡峭的收敛点,训练集的损失可能会很小,但是测试集的损失很可能就很大。而平坦的收敛点就不会这样。这就是泛化问题,有的时候也被看成过拟合现象。

但是我们是也无法直接证明Adam总是找到sharp的极小值。不过很多很论或多或少都只指出了Adam在测试的时候error会较大。

Adam优化器杂谈

这里有一张图,可以看到,虽然Adam在训练集中收敛速度最快,但是测试集的效果并不是非常的好。

收敛问题

Adam在某些情况下会出现无法收敛的情况,最著名的关于这个问题的Adam的吐槽就是这个论文:

2018 ICLR的best paper:On the Convergence of Adam and Beyond

但是这个问题其实并不是我们这种人经常会遇到的,反而泛化问题是一个真正的困扰。

改进Adam

learning rate scheduling

大佬们经常用的一个learning rate scheduling方案就是warn-up+decay。

【warn-up】

是指不要一开始用高的learning-rate,应该要从低的慢慢增大到base-learning rate。学习率从小到大。

【decay】

随着optimization的步数的增长,逐渐降低learning rate。

Decay的部分其实很常见,所有的人都会用,但是warn-up其实就有点诡异了,在ResNet的论文中其实可以看到这个。

RAdam

Radam 是在warm up的时候提出了一些有效的策略。


以上所述就是小编给大家介绍的《Adam优化器杂谈》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

失控

失控

[美] 凯文·凯利 / 东西文库 / 新星出版社 / 2011-3 / 98.00元

2006年,《长尾理论》的作者克里斯·安德森在亚马逊网站上这样评价该书: “这可能是90年代最重要的一本书”,并且是“少有的一年比一年卖得好的书”。“尽管书中的一些例子在十几年后可能有些过时,但(它们所表达的)信息却越来越成为真知灼见”。“在那时人们还无法想象博客和维基等大众智慧的突起,但凯利却分毫不差地预见到了。这可能是过去十年来最聪明的一本书。” 这是《黑客帝国》主要演员的必读物之......一起来看看 《失控》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具