可扩展机器学习——线性回归(linear Regression)

时间:2022-05-04
本文章向大家介绍可扩展机器学习——线性回归(linear Regression),主要内容包括三、线性回归(linear Regression)、2、线性最小二乘回归、3、回归问题实例、4、分布式实现、参考文献、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。

注:这是一份学习笔记,记录的是参考文献中的可扩展机器学习的一些内容,英文的PPT可见参考文献的链接。这个只是自己的学习笔记,对原来教程中的内容进行了梳理,有些图也是引用的原来的教程,若内容上有任何错误,希望与我联系,若内容有侵权,同样也希望告知,我会尽快删除。这部分本应该加上实验的部分,实验的部分在后期有时间再补上。

可扩展机器学习系列主要包括以下几个部分:

概述 - Spark分布式处理 - 线性回归(linear Regression) - 梯度下降(Gradient Descent) - 分类——点击率预测(Click-through Rate Prediction) - 神经科学

三、线性回归(linear Regression)

1、线性回归概述

回归(Regression)问题的目标是从观测样本中学习到一个到连续的标签值的映射,这是一个监督学习的问题。回归问题有:

  • Height, Gender, Weight → Shoe Size
  • Audio features → Song year
  • Processes, memory → Power consumption
  • Historical financials → Future stock price
  • 等等

2、线性最小二乘回归

2.1、回归的基本概念

2.2、线性回归的优点

上述便是线性回归的基本形式,对于线性回归,有以下的一些优点:

  • 简单
  • 在实际中通常表现很好
  • 通过对特征的提取,可以引进复杂的模型

2.3、线性回归的目标

线性回归的目标是找到一条直线或者称为超平面能够最好的拟合样本,如下面的1−D1-D的情况:

其中,x轴表示的特征,y轴表示的是标签。此时的线性映射为:

2.4、线性回归的评价

2.5、线性模型的学习

2.6、线性回归模型的求解

2.7、过拟合和泛化能力

求解模型的目的是要使用模型,即在新的数据集上使用模型,若其能在新的数据集上表现的很好,说明求解出的模型具有很好的泛化能力(Generalization ability)。最小均方回归容易导致过拟合,因为其对训练数据过分拟合。过拟合的情况如下图所示:

简单的模型通常更具有泛化能力(Occam剃刀)。

3、回归问题实例

3.1、监督学习的流程

对于监督学习的流程的具体过程见下图:

3.2、音乐发行年代的预测

对于具体的监督学习任务,可以拆分成下面的过程:

下面是每一步具体的操作。

3.2.1、获取数据

实验的目标是要根据音乐中声音特征预测音乐所属的年代,原始数据可以从UCI的ML库中找到Millionsong Dataset,地址为YearPredictionMSD Data Set。原始数据中是1980到2014年间的西方的商业唱片,特征为平均12音色,标签为发行年代。

3.2.2、分割数据集

将数据集分成训练集和测试集,训练集用于训练,而测试集用于评价模型的优劣。测试误差显示出我们的模型是否具有很好的泛化能力。

3.2.3、特征提取

3.2.4、监督学习

此时,数据集中就包括了训练集,验证集和测试集,其中,训练集用于训练模型,验证集用于评估不同的模型,测试集则是评估最终的模型的准确性。

对于模型中的一些自由参数,或称为超参数(hyperparameter),可以采用网格搜索(Grid Search)的方法获取,网格搜索是指定义好区间,在区间上取固定的长度来取得不同的值,如下图所示:

3.2.5、评估

3.2.6、预测

预测是指对新的观测数据,利用训练好的模型对其进行预测,得到相应的年代。

4、分布式实现

如:

矩阵的乘法也可以通过矩阵对应的列和行的外积的和实现。

如:

在分布式实现的时候,可以采用如下的方法实现矩阵的计算:

若需要PDF版本,请关注我的新浪博客@赵_志_勇,私信你的邮箱地址给我。

参考文献

scalable-machine-learning