Adam算法学习笔记

吴恩达老师的Adam算法学习笔记,记录一下理解过程

优化

Mini-Batch 梯度下降

将训练集排序打乱,然后分割成固定大小的子集n个(最后一个除外),然后遍历子集使用梯度下降更新参数。(这种方法主要运用在特别大的数据集中)
在固定学习率𝛼的情况下:

  • 优点:相比于batch梯度下降法,Mini-batch整个数据集的一次前反向传播就可以对参数进行n+1次更新,并且可以在数据集没有完全遍历完就拥有已经更新过的参数进行后续工作。相比于随机梯度下降法,Mini-batch利用了向量化的计算方法,使迭代速度更快。正因如此,我们应该为子集大小设定一个不大不小的数值
  • 弊端:由于每次训练用的都是一个小的子集,所以每次下降的方向不是很稳定,这将会导致损失出现振荡

指数加权平均

由于Mini-Batch梯度下降的不稳定,我们可以利用指数加权平均来平衡下降方向

  • 公式:v_{dW} = 𝛽v_{dW} + (1- 𝛽)dW
    根据𝛽的不同,v_{dW}值对于之前的子集数据训练时得出的v_{dW}依赖程度也不同,通常𝛽=0.9时,v_{dW}的值主要依赖之前10个子集得到的v_{dW},如果𝛽=0.98时,则依赖之前50项的值。
  • 偏差修正
    v_{dW}=\frac {v_{dW}}{1-𝛽^t}
    因为我们一般会设置起始项v_{dW}=0,导致后续几项依赖此项而产生较大偏差,使用此公式则可以消除。其中t=i+1,其中i表示当前子集的下标。

Momentum梯度下降法

在Mini-Batch梯度下降中加入指数加权平均得到的就是可以减少损失振荡的梯度,使用这个值带入参数更新中:
W=W-𝛼v_{dW} \\ b=b-𝛼v_{db}
这种梯度下降法就叫做Momentum梯度下降法

RMSprop算法 (全称:root menu square prop)

S_{dW}=𝛽S_{dW}+(1-𝛽)(dW)^2 \\ S_{db}=𝛽S_{db}+(1-𝛽)(db)^2
更新参数时使用:
W=W-𝛼\frac {dW}{\sqrt {S_{dW}}} \\ b=b-𝛼\frac {db}{\sqrt {S_{db}}}
(以后想到更好的描述方式再更新这部分内容)
我在数学上的感觉告诉我,相比指数加权平均,在得到S_{dW}值的计算过程中,加重了本次dW所占的比例,\sqrt {S_{dW}} 可以将大数压缩成一个很小的数,如果是一个小数,则可以得到一个较大的小数。如果dW是一个较大的梯度值,那么除以小值后得到的是稍小一些的数,使用这个数进行参数更新可以减小震荡。如果dW是小数,除以\sqrt {S_{dW}}则等于乘以一个>1的较小的数,综合来讲:
\frac { dW} {\sqrt {S_{dW}}}
相比原始的更新方法,总能让dW较大时,变为一个较小的数,dW太小时,对其进行放大,如果dW不大不小,得到的值与它很接近。
使用RMSProp算法可以设置一个较大的𝛼来进行快速迭代而不用担心错过最小点

Adam算法

Adam算法结合了Momentum与RMSprop:
初始化V_{dW}=0, S_{dW}=0
在Mini-batch迭代中:
V_{dW} = 𝛽_1V_{dW} + (1-𝛽_1)dW \\ S_{dW} = 𝛽_2S_{dW} + (1-𝛽_2)(dW)^2
然后使用偏差修正:(其中t=i+1,i指当前子集的下标)
V_{dW}^{current} = \frac {V_{dW}}{1- 𝛽_1^t} \\ S_{dW}^{current} = \frac {S_{dW}}{1- 𝛽_2^t}
然后更新参数:
W=W-𝛼\frac { V_{dW}^{current}}{\sqrt {S_{dW}}+ξ}

  • 超参数
    𝛽_1建议使用0.9
    𝛽_2建议使用0.999
    ξ建议使用10^{-8}, 主要用于防止出现参数为0的情况
    𝛼可以多次迭代,寻找最为恰当的值
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 220,367评论 6 512
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,959评论 3 396
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 166,750评论 0 357
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 59,226评论 1 295
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 68,252评论 6 397
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,975评论 1 308
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,592评论 3 420
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,497评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 46,027评论 1 319
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 38,147评论 3 340
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 40,274评论 1 352
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,953评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,623评论 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 32,143评论 0 23
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,260评论 1 272
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,607评论 3 375
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 45,271评论 2 358

推荐阅读更多精彩内容