TensorFlow优化算法简介

1. 随机梯度下降法SGD:
tf.train.GradientDescentOptimizer
收敛速度不如其他优化算法

2. Adadelta:
tf.train.AdadeltaOptimizer
使用Adadelta我们甚至不需要设置一个默认学习率,在Adadelta不需要使用学习率也可以达 到一个非常好的效果。

3. Adagrad
tf.train.AdagradOptimizer

它是基于SGD的一种算法,它的核心思想是对比较常见的数据给予它比较小的学习率去调整 参数,对于比较罕见的数据给予它比较大的学习率去调整参数。它很适合应用于数据稀疏的数 据集(比如一个图片数据集,有10000张狗的照片,10000张猫的照片,只有100张大象的照 片)。
Adagrad主要的优势在于不需要人为的调节学习率,它可以自动调节。它的缺点在于,随着 迭代次数的增多,学习率也会越来越低,最终会趋向于0。

4. Momentum:
tf.train.MomentumOptimizer
当前权值的改变会受到上一次权值改变的影响,类似于小球向下滚动的时候带上了惯性。这样 可以加快小球的向下的速度。

5.Adam:
tf.train.AdamOptimizer
就像Adadelta和RMSprop一样Adam会存储之前衰减的平方梯度,同时它也会保存之前衰减 的梯度。经过一些处理之后再使用类似Adadelta和RMSprop的方式更新参数。

6.FtrlOptimizer
tf.train.FtrlOptimizer
更新方法主要用于广告点击预测,广告点击预测通常千万级别的维度,因此有巨量的稀疏权重.其主要特点是将接近0 的权重直接置0,这样
计算时可以直接跳过,从而简化计算.这个方法已经验证过在股票数据上较有效。


7. RMSprop:
tf.train.RMSPropOptimizer
RMSprop借鉴了一些Adagrad的思想,不过这里RMSprop只用到了前t-1次梯度平方的平均 值加上当前梯度的平方的和的开平方作为学习率的分母。这样RMSprop不会出现学习率越来值加上当前梯度的平方的和的开平方作为学习率的分母。这样RMSprop不会出现学习率越来 越低的问题,而且也能自己调节学习率,并且可以有一个比较好的效果。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值