文章来自:微信公众号【机器学习炼丹术】
最常用的Adam优化器,有着收敛速度快、调参容易等优点,但是也存在经常被人吐槽的泛化性问题和收敛问题。
因此,在很多大佬的代码中,依然会使用传统的SGD+momentum的优化器。
关于两个优化器的比较,仁者见仁智者见智,可以看一下这篇文章,有简单的关于这两个优化器的代码实现和效果比较:
Pytorch的SGD,SGDM,Adam,RAdam的代码实现
这篇文章就随便的谈一谈下面的问题,来让大家扩展一下知识:
- Adam被攻击的泛化问题和收敛问题;
Adam是什么
对机器学习有了解的朋友,应该对Adam优化器不陌生了。大体来说就是Momentum + Adagrad + RMSProp的结合。
【如果需要的话,之后可以简单易懂的通俗讲讲各种类型的优化器的算法】
从Adam和SGDM中就可以得知,Momentum是一个很好的设计。
Adam的两个吐槽
泛化问题
在讨论模型泛化问题的时候,我们会希望模型找到的极小值(收敛位置),是一个比较平缓、不陡峭的位置!,原因看下图:
 `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。