Andrew Ng 机器学习笔记(二)

监督学习的应用:梯度下降


梯度下降算法思想:


先选取一个初始点,他可能是0向量,也可能是个随机点。在这里选择图中这个+点吧。

然后请想象一下:如果把这个三位图当成一个小山公园,而你整站在这个+的位置,这时你想下山,并且要用最快的速度下山,于是你环视了一圈周围的地形,找了个坡度最大的位置走了一步。随后继续环视一圈,再走你认为能最快下山的一步,以此类推,路线如下图所示:

可以看到我们走到了最下面的一个点。然而我们换一个起始点会产生另一种路线:

这是梯度下降的一个性质,不同的输入,梯度下降的路线有可能不同。

(然后老师讲了一堆看不太懂的公式,大致思路明白就不细说了,反正是不会求~)

实际上我们现有的数据的模型不会像那个彩色小山图那么复杂,应该会像一个下凹的碗状图,从边缘走到碗的地步一般也只需要迭代六七次就行了。

看一下房屋面积和房价的关系通过梯度下降是如何推导的:

经过几次迭代后,通过训练集找到了房价和房屋面积的一次函数关系。


但是,这种传统的梯度下降算法每运行一次的时候都会遍历一次与那时数据集并求和(这样做应该是梯度下降公式导致的),如果遇到100w这么多的数据集,每次计算机都要遍历一遍,时间复杂度可想而知。因此当训练集太大的时候,我们需要更新我们的算法,他叫随机梯度下http://offlintab.firefoxchina.cn/private.html?cachebust=20150714降。


随机梯度下降:

开始低度下降的时候只需要查看第一个训练样本,并且利用第一个训练样本进行更新;之后使用第二个样本,进行第二次更新,而不用遍历整个数据库。

对于大量数据而言,随机梯度下降确实会大大降低时间复杂度,但是他不会精确的收敛到全局最小值,有可能会在全局最小值附近持续徘徊。用精度换时间的办法。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值