分享好友 最新动态首页 最新动态分类 切换频道
深度学习优化器 Adam 解析
2024-12-28 07:32

源链接  https://segmentfault.com/a/1190000012668819

深度学习优化器 Adam 解析

 

 

现在很多深度网络都优先推荐使用Adam做优化算法,我也一直使用,但是对它的参数一知半解,对它的特性也只是略有耳闻,今天我终于花时间看了一下论文和网上的资料。整理如下。

Adam是从2个算法脱胎而来的:AdaGrad和RMSProp,它集合了2个算法的主要优点,同时也做了自己的一些创新,大概有这么几个卖点

  1. 计算高效,方便实现,内存使用也很少。
  2. 更新步长和梯度大小无关,只和alpha、beta_1、beta_2有关系。并且由它们决定步长的理论上限。
  3. 对目标函数没有平稳要求,即loss function可以随着时间变化
  4. 能较好的处理噪音样本,并且天然具有退火效果
  5. 能较好处理稀疏梯度,即梯度在很多step处都是0的情况

从while循环往下看,第一行是更新step
第二行是计算梯度
第三行计算一阶矩的估计,即mean均值
第四行计算二阶距的估计,即variance,和方差类似,都是二阶距的一种。
第五、六行则是对mean和var进行校正,因为mean和var的初始值为0,所以它们会向0偏置,这样处理后会减少这种偏置影响。
第七行是梯度下降。注意alpha后的梯度是用一阶距和二阶距估计的。

为什么这么设计呢?Andrew Ng在他的公开课中给出了他的解释,他认为Adam其实可以看做是Momentum和RMSProp算法的结合。

其中V_dw和V_db对应上面的mt,Ng喜欢把w和b分开写,其实他们都是参数。

如上面Ng画的那样,Momentum通过对梯度mean的估计,使得梯度在纵向上的正负步长逐步抵消,横向上的步长逐步累积,从而减少了震荡,加快了学习速率。

可以认为对于mean的这种估计,其实是从噪音中提取到了有效信号,因为信号的方向在一段时间内是不会变的。同时抵消了噪音,比如白噪音,它的均值为0,把多个白噪音累加后,它们是正负相互抵消的

当然实际情况噪音可能会非常复杂,如果步长太大,或者衰减太小,还是会出现震荡甚至发散的情况。

RMSProp要解决的问题和Momentum类似,但是它是从二阶距入手的。

上图中的S_dw对应Adam中的vt。它的思路是这样的,对于波动比较大的梯度,它的方差肯定是很大的,所以它用梯度去除以二阶距的开方,作为梯度下降的梯度,从而也使得它在纵轴上的步长减小了,同时相对的增加了横轴的步长。

这个也是mt和vt的设计来源。同时因为mt和vt涉及了所有历史梯度信息,所以他们都能较好处理梯度稀疏的情况。

Adam的改进主要体现在2个地方,即伪代码第五、六行的偏置修正,和第七行的梯度计算。

第5、6行可以这样简单理解:因为m0和v0初始为0,所以开始阶段得到的m和v肯定是偏向0的,所以我需要把他们的绝对值调大些才好。假设beta1 = 0.5,t = 1,那么调整后,m = m / 0.5 = 2m,这样就把m从0拉了回来。
当然了这背后是有理论依据的,有兴趣的同学可以去看看论文,推导也不难。

其实最关键的就是第7行了。首先在没有噪音的情况下,m/sqrt(v) 约等于+/- 1,所以步长的上限基本就由alpha决定了。当t比较小的时候,beta1和beta2也会有一些影响,因为此时m、v还是有偏的,需要在5、6行用beta1、beta2做些调整。原文指出

 

设步长Δt=α⋅m^t/v^t−−√


当1 - beta1 > sqrt(1 - beta2)时

 

Δt≤α⋅(1−β1)/1−β2−−−−−√


其他时候

 

 

Δt≤α

 

 

所以,正是由于采用了m/sqrt(v)的形式,梯度本身的大小被消除了,假设你在目标函数上乘以k,那么这个k会同时出现在分子分母上,从而在梯度更新时被消除了。

根据原文作者的意思,在机器学习中,我们经常可以方便的获知最优参数所处的范围,从而据此设置alpha的取值大小,所以Adam的这种特性可以方便你设置alpha。
另外,根据我们在Momentum和RMSProp中的描述,m/sqrt(v)可以看做是对梯度“信噪比”(SNR)的估计,其中m是信号量,而v是噪音量。当噪音大时,步长小;噪音小时,步长大。这正是我们需要的特性,从而使得Adam能够较好的处理噪音样本,另外,当我们接近最优点时,噪音通常会变得很大,或者说真正的信号变得很微弱,信噪比通常会接近0,这样步长就会变得较小,从而天然起到退火效果(annealing)

最新文章
【S5830搜狗手机输入法下载】三星S5830搜狗手机输入法12.1.1免费下载
搜狗输入法,拥有超大中文词库,输入更加精准,智能。搜狗智能旺仔带你用表达,斗图,妙语,输入更加有趣。******特色功能******【搜狗专属超大词库】搜狗多年积累,中文系统词库,输入首选更准确【语音输入】更快更准的语音输入,没有网络
初一年级历史上册期末复习试题
初一年级历史上册期末复习试题  古人有“书中自有颜如玉”之说。杜甫所提倡的“读书破万卷,下笔如有神”等,无不强调了多读书广集益的好处。这篇初一年级历史上册期末复习试题,希望可以加强你的基础。  一、 选择题(每题1分,共30分
忻州企业网站SEO优化,流量提升,助力业务飞跃
忻州整站优化SEO服务,旨在通过提升网站排名,增加流量,助力企业实现网络营销突破,促进业务腾飞。通过精准关键词布局、高质量内容创作等策略,优化网站结构,提高用户体验,助力企业在线上获得更多曝光和潜在客户。随着互联网的普及,越
百度推广入口:如何高效利用百度推广平台实现精准流量转化!
百度推广作为中国最为广泛使用的搜索引擎广告服务平台之一,已经成为许多企业和个人商家获取网络流量的重要工具。通过百度推广,商家能够将自己的产品或服务精准地推送到潜在客户面前,从而提高销售和品牌曝光度。本文将详细介绍如何高效利
seo 网站排名优化
5.H标签:H1-H6,H1-H6内容不一样。谷歌更注重H中段落总结的标题。在做外贸网站建设的时候,seo 网站排名优化,编辑网站内容的时候需要多加注意,这样后续在外贸网站,然后再拿核心关键词通过5188、百度下拉框、相关搜索等关键词挖掘方法来
塔塔通信推出 Kaleyra AI,以增强客户沟通
塔塔通信 (Tata Communications)宣布推出新的 Kaleyra AI 解决方案,以增强客户沟通。塔塔通信将 Kaleyra 定位为面向未来、由人工智能驱动的旗舰产品组合,旨在重新定义客户互动。该公司概述了新产品组合引入了三种不同的功能。该套件专为
一骗就是几个亿:江苏公安发布普洱币、大唐币等传销辨识指南
一夜暴富的情形存在,但仿佛天上掉馅饼,传销币刚好满足了我们吃到馅饼的幻想,殊不知,这不是馅饼而是陷阱。到今年为止,各地工商和市场监管部门、公安机关已经依法查处了“普洱币”、“大唐币”、“五行币”、“维卡币”、“亚欧币”、“
被曝“做不正当职业”?她回应:已报警!
据媒体报道,近日,拥有的网红博主Sun雅乔被曝做,相关词条还冲上热搜。对此,Sun雅乔本人回应称:“女孩子就是要自立自强,铁粉尽可放心,姐腰杆挺得笔直,奋斗厮杀向上生长本就是一条极为艰难的路。”她在发文中回应:宝贝们,最近舆论有
给娱乐圈的“人间富贵花”排个名,陈红排第二名,许晴排第八名
人间富贵花该是什么模样?不能瘦成纸片,不能凶悍强势,不能不食烟火,最好是珠圆玉润,贵而不矜,艳而不妖,有牡丹的富贵多情,也有莲花的质朴天然,初看惊为天人,再看浑身酥软。她总是仪态大方,雍容华贵,生来就该被收藏好安放好。再详
河南地区普洱茶 攻略:如何精选好喝且具市场潜力的普洱茶与产品
河南地区普洱茶 攻略:如何精选好喝且具市场潜力的普洱茶与产品在当今消费升级的大背景下普洱茶以其特别的魅力和深厚的文化底蕴,在中国乃至全球市场上逐渐崭露头角。河南地区作为中原腹地,拥有庞大的消费群体和丰富的文化底蕴,对普洱茶
相关文章
推荐文章
发表评论
0评