目录
2.5NAG(Nesterov accelerated gradient):
1.主要优化器:
tf.train.GradientDescentOptimizer
tf.train.AdadeltaOptimizer
tf.train.AdagradOptimizer
tf.train.AdagradDAOptimizer
tf.train.MomentumOptimizer
tf.train.AdamOptimizer
tf.train.FtrlOptimizer
tf.train.ProximalGradientDescentOptimizer
tf.train.ProximalAdagradOptimizer
tf.train.RMSPropOptimizer
2.各种优化器对比:
(1)标准梯度下降法:
标准梯度下降先计算所有样本汇总误差,然后根据总误差来更新权值(可能费时比较严重)
(2)随机梯度下降法:
随机梯度下降法随机抽取一个样本来计算误差,然后更新权值(所以权值更新的方向不保证正确)
批量梯度下降法:
(3)批量梯度下降法是一个比较折中的方案,从总样本中抽取一定的批次(比如一共有10000个样本,随机抽取100个样本作为一个batch),然后计算这个batch的总误差,根据总误差来更新权值。
W:要训练的参数
L:代价函数
η:学习率
2.1SGD:
SGD缺点:
1.如果函数的形状非均向,比如呈延伸状,搜索的路径就会非常低效,比如呈“之字形”,它低效的根本原因是梯度的方向没有指向最小值方向。
2.不能逃离鞍点问题、峡谷问题。
2.2Momentum:
gt为当前估计的梯度。这里出现了一个新的变量v,对应于物理上的速度,上面第一个式子表示了物体在梯度上受力,在力的作用下物体速度增加这一物理法则。
当前权值的改变会受到上一次权值改变的影响,类似于小球向下滚动的时候带上了惯性。这样可以加快小球的向下的速度。
优点:
(1)与SGD方法相比,动量方法的收敛速度更快,收敛曲线也更稳定。如图所示: