热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

tensorflow的优化器比较

标准梯度下降法:汇总所有样本的总误差,然后根据总误差更新权值随机梯度下降:随机抽取一个样本误差,然后更新权值(每个样本都更新一次权值,可能造成的误差比较大)批量梯度下降法:相当于前两种的折中方案

标准梯度下降法:汇总所有样本的总误差,然后根据总误差更新权值

随机梯度下降:随机抽取一个样本误差,然后更新权值 (每个样本都更新一次权值,可能造成的误差比较大)

批量梯度下降法:相当于前两种的折中方案,抽取一个批次的样本计算总误差,比如总样本有10000个,可以抽取1000个作为一个批次,然后根据该批次的总误差来更新权值。(常用)


momentum:当前权值的改变会收到上一次权值的改变的影响,就像小球滚动时候一样,由于惯性,当前状态会受到上一个状态影响,这样可以加快速度。

NAG(Nesterov Accelerated gradient)与momentum相比,它更为聪明,因为momentum是一个路痴,它不知道去哪里,而NAG则知道我们的目标在哪里。也就是NAG知道我们下一个位置大概在哪里,然后提前计算下一个位置的梯度。然后应用于当前位置指导下一步行动。

Adagrad:核心思想是对于常见的数据给予比较小的学习率去调整参数,对于不常见的数据给予比较大的学习率调整参数。它可以自动调节学习率,但迭代次数多的时候,学习率也会下降。

RMSprob :采用前t-1次梯度平方的平均值 加上当前梯度的平方 的和再开放作为分母

Adadelta :不使用学习率

Adam :会把之前衰减的梯度和梯度平方保存起来,使用RMSprob,Adadelta相似的方法更新参数



推荐阅读
author-avatar
林斯诺_SNOW
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有