开发者社区> hongtao2018> 正文

AI学习笔记——Tensorflow中的Optimizer(优化器)

简介: 在使用Tensorflow搭建神经网络的时候,最后一步总会用到tf.train.XxxOptimizer(). 然后会有很多Optimizer()如下图 其实这些Optimizer 都是优化算法下面重点介绍几个常见的 1. Gradient Decent 这是最基础的梯度下降算法,更新权重W,不多解释。
+关注继续查看
img_8a2d746bb47c7454bb29c2f6ea240f16.png

在使用Tensorflow搭建神经网络的时候,最后一步总会用到tf.train.XxxOptimizer(). 然后会有很多Optimizer()如下图


img_01e829e014ae56e4ec2be09df18eaff9.png

其实这些Optimizer 都是优化算法下面重点介绍几个常见的

1. Gradient Decent

这是最基础的梯度下降算法,更新权重W,不多解释。

W += - α * dx

其中 α是learning rate(学习速率)。我们可以把下降的损失函数看成一个机器人,由于在下降的时候坡度不是均匀的,机器人会左右摇摆,所以下降速度会比较慢,有时候遇到局部最优,还可能在原地徘徊好长时间。


img_6061822d1a6884c303c73640ea8028d8.png

2. Momentum

顾名思义这个优化算法实际上给了一个动量,让机器人下降的的时候带一个惯性,下降的速度就加快了。

算法如下:
m = b1*m - α * dx
W += m

3. AdaGrad

这个算法是通过动态改变学习速率,提高下降速度,相当于给机器人穿上一个左右侧滑有阻力的鞋子,让它只好沿着正确的方向下滑。

v = dx^2
W += -(α/sqrt(v)) * dx

4. RMSProp

这个算法相当于在AdaGrad中引入了Momentum的惯性
v = b1 * v + (1-b1)*dx^2
W += -(α/sqrt(v)) * dx
但是RMSprop缺少了Momentum的变量m

5. Adam

Adam是目前用得最广的优化算法,它结合了AdaGrad和Momentum的优点(所以叫才Adam嘛)

m = b1m + (1-b1)dx
v = b2v + (1-b2)dx^2
W += -(α*m/sqrt(v)) * dx

这个算法相当于给机器人一个惯性,同时还让它穿上了防止侧滑的鞋子,当然就相当好用用啦。

给大家看看不同优化算法下降速度的差距

img_5d5166a3d3712e7c03af74b1ccacbeac.gif

文章首发steemit.com 为了方便墙内阅读,搬运至此,欢迎留言或者访问我的Steemit主页

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
《TensorFlow技术解析与实战》学习笔记2
《TensorFlow技术解析与实战》学习笔记2
32 0
《TensorFlow深度学习应用实践》学习笔记1
《TensorFlow深度学习应用实践》学习笔记1
34 0
《TensorFlow技术解析与实战》学习笔记1
《TensorFlow技术解析与实战》学习笔记1
23 0
Whale 基于 Tensorflow 深度学习分布式训练框架|学习笔记
快速学习 Whale 基于 Tensorflow 深度学习分布式训练框架。
108 0
TensorFlow 实现图像分类|学习笔记
快速学习 TensorFlow 实现图像分类。
45 0
最新 Tensorflow 2.2极简安装教程 | 学习笔记
快速学习最新 Tensorflow 2.2极简安装教程
83 0
逻辑回归的 tensorflow 实现 | 学习笔记
快速学习逻辑回归的 tensorflow 实现
42 0
Tensorflow 课程框架介绍 | 学习笔记
快速学习 Tensorflow 课程框架介绍
23 0
Tensorflow 课程简介 | 学习笔记
快速学习 Tensorflow 课程简介
29 0
Tensorflow 2.0 GPU 版本的安装 | 学习笔记
快速学习 Tensorflow 2.0 GPU 版本的安装
95 0
+关注
文章
问答
文章排行榜
最热
最新
相关电子书
更多
深度学习框架实战-Tensorflow
立即下载
深度学习+大数据 TensorFlow on Yarn
立即下载
使用TensorFlow搭建智能开发系统自劢生成App UI代码
立即下载