深度学习优化算法Momentum RMSprop Adam
一、Momentum
1. 计算dw、db.
2. 定义v_db、v_dw
\[
v_{dw}=\beta v_{dw}+(1-\beta)dw
\]
\[
v_{db}=\beta v_{db}+(1-\beta)db
\]
3. 更新dw、db
\[
dw=w-\alpha v_{dw}
\]
\[
db=b-\alpha v_{db}
\]
二、RMSprop
1. 计算dw、db.
2. 定义s_db、s_dw (这里的平方是元素级的)
\[
s_{dw}=\beta s_{dw}+(1-\beta)dw^2
\]
\[
s_{db}=\beta s_{db}+(1-\beta)db^2
\]
3. 更新dw、db
\[
dw=w-\alpha \frac{w}{\sqrt{s_{dw}}}
\]
\[
db=b-\alpha \frac{b}{\sqrt{s_{db}}}
\]
三、Adam
==结合了Momentum+RMSprop==
1. 计算dw、db.
2. 定义v_db、v_dw、s_db、s_dw.
\[
v_{dw}=\beta_{1} v_{dw}+(1-\beta_{1})dw
\]
\[
v_{db}=\beta_{1} v_{db}+(1-\beta_{1})db
\]
\[
s_{dw}=\beta_{2} s_{dw}+(1-\beta_{2})dw^2
\]
\[
s_{db}=\beta_{2} s_{db}+(1-\beta_{2})db^2
\]
3. 纠偏(t为迭代次数)
\[
v_{dw}^{correct}=\frac{v_{dw}}{1-\beta^t}
\]
\[
v_{db}^{correct}=\frac{v_{db}}{1-\beta^t}
\]
\[
s_{dw}^{correct}=\frac{s_{dw}}{1-\beta^t}
\]
\[
s_{db}^{correct}=\frac{s_{db}}{1-\beta^t}
\]
4. 更新dw、db,e为很小的数,防止分母为0。
通常(e=10^-8)
\[
dw=w-\alpha \frac{v_{dw}^{correct}}{\sqrt{s_{dw}^{correct}}+e}
\]
\[
db=b-\alpha \frac{v_{db}^{correct}}{\sqrt{s_{db}^{correct}}+e}
\]
深度学习优化算法Momentum RMSprop Adam的更多相关文章
- 从 SGD 到 Adam —— 深度学习优化算法概览(一) 重点
https://zhuanlan.zhihu.com/p/32626442 骆梁宸 paper插画师:poster设计师:oral slides制作人 445 人赞同了该文章 楔子 前些日在写计算数学 ...
- ubuntu之路——day8.1 深度学习优化算法之mini-batch梯度下降法
所谓Mini-batch梯度下降法就是划分训练集和测试集为等分的数个子集,比如原来有500W个样本,将其划分为5000个baby batch,每个子集中有1000个样本,然后每次对一个mini-bat ...
- ubuntu之路——day8.2 深度学习优化算法之指数加权平均与偏差修正,以及基于指数加权移动平均法的动量梯度下降法
首先感谢吴恩达老师的免费公开课,以下图片均来自于Andrew Ng的公开课 指数加权平均法 在统计学中被称为指数加权移动平均法,来看下面一个例子: 这是伦敦在一些天数中的气温分布图 Vt = βVt- ...
- 深度学习——优化器算法Optimizer详解(BGD、SGD、MBGD、Momentum、NAG、Adagrad、Adadelta、RMSprop、Adam)
在机器学习.深度学习中使用的优化算法除了常见的梯度下降,还有 Adadelta,Adagrad,RMSProp 等几种优化器,都是什么呢,又该怎么选择呢? 在 Sebastian Ruder 的这篇论 ...
- 优化深度神经网络(二)优化算法 SGD Momentum RMSprop Adam
Coursera吴恩达<优化深度神经网络>课程笔记(2)-- 优化算法 深度机器学习中的batch的大小 深度机器学习中的batch的大小对学习效果有何影响? 1. Mini-batch ...
- 深度学习剖根问底: Adam优化算法的由来
在调整模型更新权重和偏差参数的方式时,你是否考虑过哪种优化算法能使模型产生更好且更快的效果?应该用梯度下降,随机梯度下降,还是Adam方法? 这篇文章介绍了不同优化算法之间的主要区别,以及如何选择最佳 ...
- ui2code中的深度学习+传统算法应用
背景 在之前的文章中,我们已经提到过团队在UI自动化这方面的尝试,我们的目标是实现基于 单一图片到代码 的转换,在这个过程不可避免会遇到一个问题,就是为了从单一图片中提取出足够的有意义的结构信息,我们 ...
- <深度学习优化策略-3> 深度学习网络加速器Weight Normalization_WN
前面我们学习过深度学习中用于加速网络训练.提升网络泛化能力的两种策略:Batch Normalization(Batch Normalization)和Layer Normalization(LN). ...
- Attention机制在深度学习推荐算法中的应用(转载)
AFM:Attentional Factorization Machines: Learning the Weight of Feature Interactions via Attention Ne ...
随机推荐
- Python---socket库
为方便以后查询和学习,特从常用库函数和示例来总结socket库 1. 术语 family:AF_INET socktype:SOCK_STREAM或SOCK_DGRAM protocol:IPPROT ...
- 链表法解决hash冲突
/* @链表法解决hash冲突 * 大单元数组,小单元链表 */ #pragma once #include <string> using namespace std; template& ...
- 基于BCGP库的界面效果
- MS SQL 监控数据/日志文件增长
前几天,在所有数据库服务器部署了监控磁盘空间的存储过程和作业后(MS SQL 监控磁盘空间告警),今天突然收到了两封告警邮件,好吧,存储规划是一方面,但是,是不是要分析一下是什么原因造成磁盘空 ...
- spark头脑镜像
思考是一件有意思的事情.遇到问题,思考出结论,那么脑子里面的过程是什么呢,或者脑子里面是什么呢.我一直认为,这团团的里面是一个模糊的n维空间.理解一个复杂的系统.公式.算法,都要在这个n维空间里具象化 ...
- Ubuntu14.04 安装vmware虚拟机
下载VMware 链接:VMware 14 密码:5okh 移动VMware14 到 /opt #mv VMware-Workstation-Full-14.0.0-6661328.x86_64.b ...
- 【AIX】AIX内存机制
[AIX]AIX内存机制 1 虚拟内存 虚拟内存是物理内存和交换空间(Paging Space)组合形成的虚拟内存空间, 通过虚拟的地址空间映射到物理内存或者 Paging Space. 在 AIX ...
- Spring国际化
国际化(Internationalization)有时候被简称为i18n,因为有18个字母在国际化的英文单词的字母i和n之间.Spring对国际化的支持示例如下所示. 需要将spring.tld放到工 ...
- 洛谷 [P3254] 圆桌问题
简单最大流建图 #include <iostream> #include <cstdio> #include <cstring> #include <cmat ...
- bzoj 4835: 遗忘之树 [树形DP]
4835: 遗忘之树 题意:点分治,选标号最小的重心,上一次重心向下一次重心连有向边,求原树方案数. md我真不知道当初比赛时干什么去了...现在一眼秒啊... \(size[v]=\frac{siz ...