optimization algrithms

本文介绍了几种常见的优化算法,包括mini-batch梯度下降法、动量梯度下降法、RMSprop以及Adam算法。这些算法适用于大型数据集,并通过不同的策略加速训练过程,减少振荡并更快地达到全局最优解。

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

optimization algorithms

mini-batch gradient descent

适用范围:数据集很大。
步骤:将数据集划分为等大的小块,对每个小块进行forward_propagation和backward_propgation

momentem gradient descent

存在意义:使用mini-batch后,cost function不会一直向着global optima减小,而是一边振荡一边接近。为了抵消震荡所造成的收敛变慢效应,引入了momentem gradient descent。
效果:让振荡叠加。水平方向的振荡同向,叠加后更大,更快地接近global optima;垂直方向的振荡相邻之间反向,叠加后抵消,减少了浪费在垂直振荡上的时间。
数学原理:指数平均。每一次振荡是前几次振荡的指数平均。

RMSprop

和momentem gradient descent类似,只是:
1、公式最右端的βdWβdWβdW改成βdW2βdW^2βdW2
2、update_parameter步骤中改成W−=αdW/(sqrt(vdW)+epsilon)W-=αdW/(sqrt(v_{dW})+epsilon)W=αdW/(sqrt(vdW)+epsilon)
epsilon是为了保证分母≠0

Adam algorithm

将RMSProp和momentem gradient descent结合起来,速度更快。
vdWL=βvdWL−1+(1−β)dWv_{dW_{L}}=βv_{dW_{L-1}}+(1-β)d_WvdWL=βvdWL1+(1β)dW
vdWL(corrected)=vdWL/(1−βL)v_{dW_{L}}(corrected)=v_{dW_L}/(1-β^L)vdWL(corrected)=vdWL/(1βL)
sdWL=βsdWL−1+(1−β)dW2s_{dW_{L}}=βs_{dW_{L-1}}+(1-β)d_W^2sdWL=βsdWL1+(1β)dW2
sdWL(corrected)=sdWL/(1−βL)s_{dW_{L}}(corrected)=s_{dW_L}/(1-β^L)sdWL(corrected)=sdWL/(1βL)
W−=αdvdWL/(sqrt(sdWL)+epsilon)W-=αdv_{dW_L}/(sqrt(s_{dW_L})+epsilon)W=αdvdWL/(sqrt(sdWL)+epsilon)
对b进行相同的操作

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值