您的位置:首页 > 其它

应用梯度下降和随机梯度下降时的几个注意点

2013-05-09 11:25 281 查看
转:http://webdancer.is-programmer.com/posts/35983

随机梯度下降算法的基本思想,在前面已经说过了。在应用梯度下降的时候有几个要注意的点,再重新记录一下。

1.收敛

我们在应用梯度下降的时候,一定要关注是否收敛。一般来说,E(θ)收敛到一定的值,所求出来的参数也是基本相同的。能使用梯度下降的求解的问题,影响我们求解的是它的学习速率(可以参考前面的内容)。速率过大,可能不收敛;速率过小,收敛速度过慢,所以我们必须恰当的选择学习速率η。通过下面的例子看以看到[1]:



当学习速率为50时,不收敛;当学习速率为0.01时收敛过慢,所以在训练时候一定要选择恰当的参数。

2.随机shuffle

在随机梯度学习算法中,如果训练集中正例和负例都聚集在一块。不进行shuffle可能会造成'wavy'现象[2],如下图所示:



[引用]:

[1]自己实现的logistic regression model,然后在上面做的实验,得出的图1。 https://github.com/seaslee/ML_algorithm.git
[2]http://openclassroom.stanford.edu/TestFolder/courses/ufldl/exercises/ex1/ex1.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: