您的位置:首页 > 其它

斯坦福机器学习公开课笔记(十四)--大规模机器学习

2013-06-25 16:24 519 查看
公开课地址:https://class.coursera.org/ml-003/class/index 

授课老师:Andrew Ng

1、learning with large datasets(大数据学习)

前面在机器学习设计这一讲中已经提到过数据量的重要性,要记住的是这句话:

It is not who has the best algorithm that wins. It is who has the most data.

在机器学习应用中,如果出现了过拟合的情况,那增加数据规模是很有帮助的,但是正如机器学习应用建议中提到的,有时候并不是光增加数据就有效的。如果还记得学习曲线,不难分辨出下面两种情况:



左侧显然是方差较大的情况,这个时候可以通过增加样本来改进,但是针对右侧偏差较大,应该通过增加更多的特征来改进。

2、stochastic gradient descent(随机梯度下降)

在进行回归时最常见的做法是采用梯度下降,如下图:



这里的梯度下降是针对所有样本同时进行,也被称为批次梯度下降,可以看出,这里的计算量是很大的,为了在处理大数据时降低计算量,我们引入随机梯度下降,其代价函数不同于之前的代价函数,是针对单个样本的代价函数:



定义好了代价函数,则梯度下降的过程如下:



在随机梯度下降中,不再一下子把所有的样本都拿来执行,而是随机选择一部分,计算量降低很多。但是随机梯度下降存在一些问题,从右图可以看到,每一次迭代并不能保证都是朝着最小值的方向下降,同时它并不能保证到达最小值后就停止,而是在某个小区域内无限执行下去,并且批次梯度下降一次操作就能对1到m所有样本进行迭代,而这里需要执行m次操作。可以说,随机梯度下降有利有弊。

3、mini-batch gradient descent(小批次梯度下降)

这又是一种梯度下降方法,其既不同于批次梯度下降,也不同于随机梯度下降,三者比较如下:



在迭代时,一个针对是所有样本数据,一个是单个样本数据,一个是b个样本数据,关于小批次梯度下降的例子如下:



B取10,即每次只选择10个样本进行处理,这也能在一定程度上减少计算量,这里也可以采用矢量化计算进一步提高计算速度。

4、stochastic gradient descent convergence(随机梯度下降收敛)

在随机梯度下降中,衡量的标准就是针对单一样本的代价函数:



和批次梯度下降类似,随机梯度下降在收敛时也存在一些问题,例如alpha值的选择:



针对alpha,我们一般是当常数看待,随着梯度下降的进行,可以缓慢减少alpha的值,或者可以通过下面的式子计算alpha的值:



5、online learning(在线学习)

假设你正在经营一个在线的运货服务网站,用户可以在上面选择起始点和目的地,你给用户提供了一系列的运货报价,现在想要建立一个模型来预测在给定价格时一个用户使用运货服务的概率。这个例子有一个特点,数据样本是以数据流的方式到来的,需要实时在线进行建模而不是离线形式的建模,这一点和随机梯度下降很像,每次只处理一个样本(注:并不一定只是1个,可以是一些,看数据而定),能随时根据用户的偏好进行改变。



一旦使用数据之后,就可以将其丢弃,不必把所有数据保存下来,这是在线学习的另一个优势所在。其他的一些例子诸如在网站上面查找物品信息等等:



6、map-reduce and data parallelism(分布式数据并行)

其实在进行批次梯度下降时,可以采用map-reduce方法,即把一个计算分解为多个子计算,然后再进行合并,这里可以把样本集进行拆分进行计算,如下:



每一个机器只负责处理100个样本,得到结果后运行合并操作得到一次迭代的结果。更形象化的表示如下:



不过有时并不一定要四台电脑,如果一个电脑有多个核,也可以运行map-reduce操作:



可以说,采用map-reduce的思想后,能在很多情况下加快计算,无论是前面的线性回归还是逻辑回归都可以采用map-reduce的思想。

-----------------------------------------弱弱的分割线---------------------------------------

这一讲主要介绍的是在大数据下如何进行机器学习,在数据量太大是梯度下降计算量会很大,为此采用随机或小批次梯度下降来减少计算量,对于在线的网站数据,采用来一个处理一个的思想。最后提到了采用map-reduce也可以提高计算效率,关于map-reduce的思想,应该去看google的这篇论文:

http://research.google.com/archive/mapreduce.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐