Adam被攻击的泛化问题和收敛问题是什么
Adam被攻击的泛化问题和收敛问题是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。
网站建设哪家好,找成都创新互联公司!专注于网页设计、网站建设、微信开发、成都微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了温泉免费建站欢迎大家使用!
最常用的Adam优化器,有着收敛速度快、调参容易等优点,但是也存在经常被人吐槽的泛化性问题和收敛问题。
因此,在很多大佬的代码中,依然会使用传统的SGD+momentum的优化器。
下面就随便的谈一谈下面的问题,来让大家扩展一下知识:
Adam被攻击的泛化问题和收敛问题;
1 Adam是什么
对机器学习有了解的朋友,应该对Adam优化器不陌生了。大体来说就是Momentum + Adagrad + RMSProp的结合。
【如果需要的话,之后可以简单易懂的通俗讲讲各种类型的优化器的算法】
从Adam和SGDM中就可以得知,Momentum是一个很好的设计。
2 Adam的两个吐槽
2.1 泛化问题
在讨论模型泛化问题的时候,我们会希望模型找到的极小值(收敛位置),是一个比较平缓、不陡峭的位置!,原因看下图:
左边的那个收敛点是一个比较平缓的点,而右边的是一个非常陡峭非常sharp的收敛点。而训练集和测试集虽然要求同分布,但是其实还是会有微小的差别。
对于陡峭的收敛点,训练集的损失可能会很小,但是测试集的损失很可能就很大。而平坦的收敛点就不会这样。这就是泛化问题,有的时候也被看成过拟合现象。
但是我们也是无法直接证明Adam总是找到sharp的极小值。不过很多论文或多或少都只指出了Adam在测试的时候error会较大。
这里有一张图,可以看到,虽然Adam在训练集中收敛速度最快,但是测试集的效果并不是非常的好。
2.2 收敛问题
Adam在某些情况下会出现无法收敛的情况,最著名的关于这个问题的Adam的吐槽就是这个论文:2018 ICLR的best paper:On the Convergence of Adam and Beyond
但是这个问题其实并不是我们这种人经常会遇到的,反而泛化问题是一个真正的困扰。
3 改进Adam
3.1 learning rate scheduling
大佬们经常用的一个learning rate scheduling方案就是warn-up+decay。
【warn-up】: 是指不要一开始用高的learning-rate,应该要从低的慢慢增大到base-learning rate。学习率从小到大。
【decay】: 随着optimization的步数的增长,逐渐降低learning rate。
Decay的部分其实很常见,所有的人都会用,但是warn-up其实就有点诡异了,在ResNet的论文中其实可以看到这个。
3.2 RAdam
Radam 是在warm up的时候提出了一些有效的策略。
关于Adam被攻击的泛化问题和收敛问题是什么问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注创新互联行业资讯频道了解更多相关知识。
新闻标题:Adam被攻击的泛化问题和收敛问题是什么
地址分享:http://cdiso.cn/article/jgssee.html