卷积神经网络(五):SGD、adagrad与RMSprop,梯度下降法总结

SGD

SGD即随机梯度下降法,在每次更新中,计算一个Minibatch的数据,然后以Minibatch中数据的总损失对神经网络各权值求梯度来进行权值更新,作为训练中的一个step。
更新方程为:

Wt+1,i=Wt,iηgt,i W t + 1 , i = W t , i − η g t , i

其中 Wt,i W t , i 表示第t个step,第i个权值更新前的值, gt,i g t , i 表示其在第t个step的更新梯度,η表示学习率

adagrad

Adagrad在每一个更新步骤中对于每一个模型参数Wi使用不同的学习速率ηi,

Wt+1,i=Wt,iηtl=0g2l,i+egt,i W t + 1 , i = W t , i − η ∑ l = 0 t g l , i 2 + e g t , i

可以看到,式中学习率会除以该权值历史所有梯度的平方根,由于梯度会累加得越来越大,也就可以达到衰减学习率的效果。
其中,e是一个平滑参数,为了使得分母不为0(通常e=1e−8),另外,如果分母不开根号,算法性能会很糟糕。

优点很明显,可以使得学习率越来越小,而且每个权值根据其梯度大小不同可以获得自适应的学习率调整。

缺点在于需要计算参数梯度序列平方和,并且学习速率趋势会较快衰减达到一个非常小的值

RMSprop

为了缓解Adagrad学习率衰减过快,首先当然就是想到降低分子里的平方和项,RMSprop是通过将平方和变为加权平方和,即

rti=Prt1,i+(1P)g2t,i r t , i = P r t − 1 , i + ( 1 − P ) g t , i 2

也就是说平方和项随着时间不断衰减,过远的梯度将不影响学习率

此时更新公式变为

Wt+1,i=Wt,inrt,i+egt,i W t + 1 , i = W t , i − n r t , i + e g t , i

具体描述:

这里写图片描述

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值