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

本文详细介绍了随机梯度下降(SGD)、AdaGrad及RMSProp三种优化算法的工作原理及其优缺点。其中,SGD通过计算Minibatch数据进行权值更新;AdaGrad针对每个参数采用独立的学习率,并随迭代逐渐减小;RMSProp则通过加权平方和解决AdaGrad学习率过快衰减的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

SGD

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

Wt+1,i=Wt,iηgt,iWt+1,i=Wt,i−ηgt,i

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

adagrad

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

Wt+1,i=Wt,iηtl=0g2l,i+egt,iWt+1,i=Wt,i−η∑l=0tgl,i2+egt,i

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

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

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

RMSprop

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

rti=Prt1,i+(1P)g2t,irt,i=Prt−1,i+(1−P)gt,i2

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

此时更新公式变为

Wt+1,i=Wt,inrt,i+egt,iWt+1,i=Wt,i−nrt,i+egt,i

具体描述:

这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值