深度学习基础—RMSprop算法与Adam 优化算法

1.RMSprop算法

1.1.算法流程

除了动量梯度下降法,RMSprop算法也可以加快梯度下降,这个算法的算法流程如下:深度学习基础---动量梯度下降法http://t.csdnimg.cn/zeGRo

1.2.算法原理

和动量梯度下降不同的是,对dW和db的变成了平方项,同时权重更新变为了(dW/sqrt(SdW))和(db/sqrt(Sdb)),这样做的原因如下:

如上图,损失函数是关于参数W和b的函数,因此简化为x轴表示W的优化方向,y轴表示b的优化方向。同动量梯度下降,我们希望减少y轴方向的摆动,加快x轴方向的优化,因此有SdW和Sdb。观察微分的方向,可以发现:摆动幅度过大,因此损失函数的斜率在b方向上的分量更多,也就是db更大,相反dW更小。于是SdW更小,Sdb更大。为了让W的变化幅度更大(加速x轴),b的变化幅度更小(减小y轴摆动),因此为W更新公式的dW除以一个较小的数,即sqrt(SdW),b更新公式的db除以更大的数,即sqrt(Sdb),达到削减大梯度的方向的梯度,增加小梯度方向的梯度,从而减小摆动,进而可以选择较大的学习率,加快模型的收敛。

注意:为了防止分母为0的风险,可以给分母+ℇ,即sqrt(SdW)+ℇ,ℇ通常取10^(-8),同理sqrt(Sdb)也是。

2.Adam 优化算法

Adam 优化算法是RMSprop算法和动量梯度下降法的结合版,该算法性能优秀,已被证明能适用多种不同结构的神经网络。该算法的算法流程如下:

本算法有很多超参数:学习率a,动量梯度下降法参数b1,RMSprop算法参数b2,ℇ。对于这些参数,默认b1=0.9,b2=0.999,ℇ=10^(-8)。一般不需要变动,但是学习率需要多次调试找到合适值。

相关推荐
ai小陈3 分钟前
PyTorch实验可复现实战:随机种子、依赖锁定与配置归档
人工智能·pytorch·python·深度学习·ai·gpu算力
喜欢睡觉4 分钟前
从"堵车"到"水管":一文搞懂 SSE 流式输出与大模型结构化解析
人工智能
聚铭网络4 分钟前
【一周安全资讯】两项数据资产分类与登记国家标准9月1日实施;索尼、华纳联合起诉Anthropic,指控盗用版权音乐训练Claude模型
人工智能·安全·分类
自信人间三百年6 分钟前
STEPONMOON的人工智能之旅(五)
人工智能
阿尔法工场研究院6 分钟前
deepseek时刻到来前,洋河先重置了自己
人工智能
财复视界14 分钟前
光智科技15.6亿存货背后的业务逻辑与风险管控
大数据·人工智能·科技
卷无止境15 分钟前
除了写代码,AI智能体还能帮开发者做什么
人工智能·python
Carol063017 分钟前
神经网络、激活函数:ReLU / SiLU / GELU
人工智能·深度学习·神经网络
揽秀亭长22 分钟前
做视频时如何快速完成视频转文字?几种方法实测
人工智能·音视频
夏文强23 分钟前
DeepSeek Harness 可追溯性实战:会话日志的 resume、fork 与 replay
人工智能·开源·大模型·agent·deepseek