Lei's Blog

关注机器学习、信息检索、数据挖掘和推荐系统等研究领域

  :: 首页 :: 博问 :: 闪存 :: 新随笔 :: :: 订阅 订阅 :: 管理 ::

转: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

posted on 2013-05-09 11:25  Lei-Blog  阅读(351)  评论(0编辑  收藏  举报