机器学习笔记8——大规模机器学习(Large scale machine learning)
概要:大规模机器学习用于处理大数据集
一、随机梯度下降法
1.1 产生
由于梯度下降法(批量梯度下降法,每次都需要考虑所有的样本)在计算规模很大的数据时比较慢,所以产生了随机梯度下降法
1.2 定义
首先随机打乱所有数,这是数据预处理的过程
(本次迭代只需要计算一个样本)
二、Mini-batch梯度下降
2.1 定义
介于梯度下降法和随机梯度下降法之间,每次使用b个样本,b这里就是一个称为mini-batch大小的参数,b通常为10,2-100之间。
2.2 算法
2.3 一般情况下学习率alpha的值是不变的,所以最后可能无法到达全局最小值,可以设置alpha随着时间的增加而减小
比如
三、在线学习机制算法
3.1 示例
包裹运输机制:用户寄包裹,给出始发地和目的地,商家开出一个价格后,如果用户同意这个价格,就记y=1,不同意的话就记y=0。商家想优化价格,x代表了用户包裹的特征,可以用逻辑回归或者神经网络
x包含始发地,目的地,以及这次我们提供给用户的价格,y取0或者1
3.2 过程
获得数据(x,y)之后,在线学习算法会根据(x,y)来更新参数seta,
四、MapReduce
(比较像python的那个)
4.1 定义
相当于把数据集分成几组,分别学习每一组,然后再把学习的结果汇总
4.2 图示
4.3 应用条件
只要算法可以表示为训练集的求和
MapReduce的一个库:hadoop
这是观看吴恩达网易云机器学习系列做的笔记
图片来源于视频课件