当前位置: 首页 > news >正文

网站开发工程师 课程大纲服务号开发

网站开发工程师 课程大纲,服务号开发,买域名价格,网站上传用什么软件做视频🔥 Google机器学习实践指南(TensorFlow六大优化器) Google机器学习实战(12)-20分钟掌握TensorFlow优化器 一、优化器核心作用 ▲ 训练本质: 迭代求解使损失函数最小化的模型参数,关键要素: 特征工程&…

🔥 Google机器学习实践指南(TensorFlow六大优化器)

Google机器学习实战(12)-20分钟掌握TensorFlow优化器


一、优化器核心作用

▲ 训练本质:
迭代求解使损失函数最小化的模型参数,关键要素:

  • 特征工程(Feature)
  • 优化算法(Optimizer)

本文主要对其中的优化算法进行说明,关于特征工程,欢迎查看前一篇:Google机器学习实战(11)-特征工程六大方法深度解析与应用


二、优化器类型详解

1. SGD随机梯度下降

**说明:**SGD全名 stochastic gradient descent, 即随机梯度下降,但在TensorFlow中SDG是指MBGD(minibatch gradient descent),即最小梯度下降。

**参数:**学习速率 ϵ, 初始参数 θ
实际实现:MBGD(小批量梯度下降)
在这里插入图片描述
▲ 图1 SGD参数更新过程

my_optimizer = tf.optimizers.SGD(learning_rate = 0.0000001, clipnorm=5.0)

特点

  • 训练速度快
  • 自带正则化效果

2. Momentum

**说明:**momentum即动量,在更新的时候一定程度上保留之前更新的方向,同时利用当前batch的梯度微调最终的更新方向。从而在一定程度上增加稳定性,使得学习地更快,并且还有一定摆脱局部最优的能力。

**参数:**学习速率 ϵ, 初始参数 θ, 初始速率v, 动量衰减参数α
在这里插入图片描述
在这里插入图片描述
▲ 图2 普通SGD与Momentum法对比
优势

  • 加速同向梯度学习
  • 抑制方向震荡

3. Nesterov Momentum

**说明:**Nesterov Momentum(牛顿动量法)是momentum方法的一项改进,与Momentum唯一区别是计算梯度的不同,Nesterov momentum先用当前的速度v更新一遍参数,再用更新的临时参数计算梯度。

**参数:**学习速率 ϵ, 初始参数 θ, 初始速率v, 动量衰减参数α
在这里插入图片描述
▲ 图3 Nesterov Momentum前瞻性更新

改进点

  • 先按当前速度更新参数
  • 在临时参数点计算梯度

4. AdaGrad

说明:AdaGrad(自适应梯度算法)是一种自适应学习率的梯度下降优化算法。它通过累积参数梯度的历史信息来为每个参数自适应地调整学习率。

参数: 全局学习速率 ϵ, 初始参数 θ, 数值稳定量δ

优点:

  • 能够实现学习率的自动更改

缺陷

  • 深度网络易提前终止

5. RMSProp

说明: RMSProp通过引入一个衰减系数,让r每回合都衰减一定比例,类是对AdaGrad算法的改进。

参数: 全局学习速率 ϵ, 初始参数 θ, 数值稳定量δ,衰减速率ρ
在这里插入图片描述

▲ 图4 学习率自适应过程

改进

  • 引入衰减系数ρ
  • 解决AdaGrad过早收敛问题

6. Adam

**说明:**Adam(Adaptive Moment Estimation)本质上是带有动量项的RMSprop,利用梯度的一阶矩估计和二阶矩估计动态调整每个参数的学习率。Adam的优点主要在于经过偏置校正后,每一次迭代学习率都有个确定范围,使得参数比较平稳。

**参数:**步进值 ϵ, 初始参数 θ, 数值稳定量δ,一阶动量衰减系数ρ1, 二阶动量衰减系数ρ2 (经验值:δ=10^−8,ρ1=0.9,ρ2=0.999)。

算法流程

  1. 计算一阶/二阶动量
  2. 偏差校正
  3. 参数更新

参数建议

  • ρ1=0.9
  • ρ2=0.999
  • δ=10^-8

三、优化器性能对比

优化器收敛速度内存消耗超参数敏感性
SGD⭐⭐
Momentum⭐⭐⭐
Nesterov Momentum⭐⭐⭐⭐
AdaGrad⭐⭐
RMSProp⭐⭐⭐
Adam⭐⭐⭐⭐

四、工程实践建议

选择策略

  • 简单任务:SGD+Momentum
  • 稀疏数据:AdaGrad
  • 默认首选:Adam

调参技巧

lr_schedule = tf.optimizers.schedules.PolynomialDecay(initial_learning_rate=0.01,decay_steps=10000,end_learning_rate=0.001
)

# 技术问答 #

Q:Adam优化器为什么需要偏差校正?
A:解决初始阶段动量估计偏向0的问题,确保训练初期稳定性

Q:如何选择优化器?
A:从Adam开始尝试,对性能敏感场景可比较SGD+Momentum


附录:学习资源

TensorFlow优化器文档:https://www.tensorflow.org/api_docs/python/tf/optimizers
优化算法可视化:https://ruder.io/optimizing-gradient-descent/

参考文献:
[1]《深度学习优化算法综述》
[2] TensorFlow官方优化器指南

http://www.dtcms.com/a/447737.html

相关文章:

  • 黑客怎么入侵网站ipad做网站服务器
  • 网站制作实验报告怎样做网络推广方案服务
  • 辛集建设局网站网站优化加盟
  • 建设网站需要哪些人海口模板建站定制
  • 创建网站的代码wordpress 心情评论插件
  • 网站敏感关键词.txt什么叫做优化
  • 手机投资网站网站备案审核要多久
  • 未经网安备案开设网站的最专业的外贸网站建设
  • 南昌专门做网站的公司网站建设征求意见表
  • 自贡建设能源开发有限公司网站河池网站优化
  • 周口网站建设公司免费的简历模板
  • 北京网站排名宝安网站推广平台
  • 简单网站制作软件wdcp 修改默认网站
  • 芜湖网站建设全包仅需800元青岛做公司网站的多吗
  • 中文wordpress网站模板wordpress the7 中文
  • 智慧旅游网站开发与设计专做淘宝的网站
  • 网站开发维护人员学校网站
  • 淄博网站制作哪家好个人建站流程详解
  • asp做网站计数器网站建设项目
  • 怎么做审核网站建设局网站投诉开发商
  • 网站可以用中国二字做抬头吗四川网络科技有限公司
  • 手机商城网站建设wordpress加载html
  • 三只松鼠网站开发免费发布企业信息平台
  • 交易网站开发2016网站建设总结
  • 专业网站开发设计深圳网站制作必找祥奔科技
  • 企业网站包括哪些wordpress能不能做管理系统
  • Linux使用kprobes跟踪内核函数
  • 公司网站优化哪家好做全屏网站图片显示不全
  • 春节网页设计素材重庆百度快照优化
  • 自建网站套现海外贸易在什么网站做