随机梯度下降(sgd)的收敛问题

  数学 数值计算 最优化    浏览次数: 1486
6

对于凸优化来说,剃度下降(批量剃度下降)是肯定会收敛到全局最优的。那么对于凸问题,sgd也会收敛到全局最优吗?我在线性回归上试了一下,发现即使很多次迭代之后,回归系数一直在波动,看起来并没收敛。

 

MrMath   2017-05-26 22:26



   2个回答 
11

随机剃度下降是不会收敛的,它总是在最优点附近跳来跳去。即使我们到达了最优点,它依然会跳动,因为对于随机的样本来说,这些少数的样本在最优点的梯度也未必是0(整体的梯度是0)。


有一个方法可以使随机梯度下降收敛——让步长衰减。因为随机梯度很快就能到达最优点附近,如果步长逐步减小,最终它会停在最优点附近一个较优的点上(未必是正好停在最优点)。

雷猴   2017-05-30 22:47

4

是的,不收敛的。随机梯度下降(Stochastic Gradient Descent)和小批量梯度下降(mini-batch)都存在这个现象。

现在很多的算法和一些封装好的package在使用SGD或者类似算法的时候都使用了不固定的learning rate(步长),其目的就是为了解决不收敛。


高代兄   2017-09-21 13:07



  相关主题

对于小批量随机剃度下降法(mini-batch SGD),如何选择每批样本的数量?   1回答

梯度上升算法是什么?   2回答

Adam优化算法   1回答

随机平均梯度法(Stochasitc Average Gradient)和随机梯度下降(SGD)有什么区别   3回答

最速下降法与梯度下降法   1回答

RMSProp的直白解释   1回答

用SGD时陷入局部最优解的解决方法   3回答

牛顿法到底是一阶优化算法还是二阶优化算法?   2回答

为什么梯度的反方向是函数下降最快的方向?   3回答

线性回归有精确的解析解为什么还要用梯度下降得到数值解?   4回答

优化算法中的“带冲量”是什么意思?   1回答

什么是Hessian矩阵和Jacobian矩阵   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!