Toggle navigation
Yang's Blog
主页
week 9
Machine Learning
week 2
week 3
week 4
week 5
week 6
week 7
week 8
week 10
End_to_End_Learning
About Me
归档
标签
week 10
0
无
2017-09-14 22:59:46
8
0
hljyy96@126.com
1.learning with large datasets 如果我们有一个低方差模型,那么增加数据量可以帮助我们更好地拟合,那么当训练集数量非常大的时候,我们应该如何帮助训练呢? 以线性回归模型为例,其学习算法如下所示: ![](https://leanote.com/api/file/getImage?fileId=59b9f0a3ab64410471000acc) 很明显每次迭代都需要对数据量大小的数据进行求和,哪怕我们的迭代次数很小,这也是非常大的代价了。 所以我们应该做的事是检查如此大规模的数据集是否真的有必要,也许只需要较少量的数据集就可以获得更好的效果,可以通过绘制学习曲线来帮助判断: ![](https://leanote.com/api/file/getImage?fileId=59b9f0a3ab64410471000acb) 2.stochastic gradient descent 如果训练集的规模无法减少,我们可以通过使用随机梯度下降的方法来代替批量梯度下降算法。 在随机梯度下降算法中,我们定义代价函数为一个单一的训练实例的代价: $cost(\theta,(x^{(i)},y^{(i)}))=\frac 1 2(h_\theta(x^{(i)})-y^{(i)})^2$ 在使用时,首先要将数据集随机初始化,然后选择其中一个或多个数据进行梯度下降: ![](https://leanote.com/api/file/getImage?fileId=59b9f0a3ab64410471000ac9) 随机梯度下降算法在每一次计算之后就更新一次$\theta$,而不需要将所有的数据进行求和再取平均,显然速度更快,然而这也就导致了其精度不高的问题,可能在收敛处徘徊,并且noise较大: ![](https://leanote.com/api/file/getImage?fileId=59b9f0a3ab64410471000aca) 3.mini-batch gradient descent 小批量梯度下降算法是一种介于批量梯度下降算法和随机梯度下降算法的算法,每计算b次训练实例就更新一次$\theta$。 ![](https://leanote.com/api/file/getImage?fileId=59b9f0a3ab64410471000acd) 在上述的算法中b取了10,也就是10个训练实例为一组,在实际的使用过程中,b的值通常可以取2-100,这样做的好处在于我们可以使用向量化的方法来循环b个训练实例,能够支持平行处理。
week 9
week 4
0
赞
8 人读过
新浪微博
微信
更多分享
腾讯微博
QQ空间
人人网
提交评论
立即登录
, 发表评论.
没有帐号?
立即注册
0
条评论
More...
文档导航