几种梯度下降算法

2017-10-23  本文已影响87人  bdd1b3ad7323

对于一个给定的凸函数

为了得到使其极小的 θ 的值,可以使用梯度下降法。顾名思义,梯度下降法的计算过程就是沿梯度下降的方向求解极小值(也可以沿梯度上升方向求解极大值)。也就是说,按照下式的方式迭代,直到收敛


其中α为搜索的步长。

Batch GD

在机器学习中,对于损失函数(θ 为模型参数,N 为训练集的样本数)

对其采用梯度下降法求极小值的算法称为 Batch GD(批量梯度下降)。

Mini-Batch GD

对于每次迭代,只取训练中的一小部分(n < N)的梯度下降算法,称为 Mini-Batch GD(小批量梯度下降)。


n = 1 时,该算法称为SGD(随机梯度下降)。

Momentum(冲量梯度下降)


Momentum 中,引入了一个冲量 v 来缓存上一步的更新结果,当本次更新的方向与上次的方向相同时,上次的更新量能够对本次的搜索起到一个正向加速的作用。反之,会有减缓速度的作用。

RMSProp

RMSProp 是通过控制学习率来增加梯度下降的速度的。

Adam

Adam 可以理解为 MomentumRMSProp 相结合的算法。

上一篇 下一篇

猜你喜欢

热点阅读