2020-07-09

机器学习中的多元线性回归步骤

多元线性回归尝试通过用一个线性方程来适配观测数据,这个线性方程是在两个以上(包括两个)的变量和因变量之间构建的一个关系。多元线性回归的实现步骤和机器学习中的简单线性回归步骤很相似,在评价部分有所不同。你可以用它来找出在预测结果上哪个因素影响力最大,以及不同变量是如何相互关联的。

第1步: 数据预处理

更多说明可以去这篇文章看看:机器学习中的简单线性回归步骤

导入相关库:

机器学习中的多元线性回归步骤

导入数据集:

机器学习中的多元线性回归步骤

将分类数据数字化:

这里要数字化的上表的State列。先将分类数据标签化:

机器学习中的多元线性回归步骤

在对标签进行one-hot编码:

机器学习中的多元线性回归步骤

注意,被被编码的列数据已剔除,新的编码数据添加在最前的列中。

避免虚拟变量陷阱:

虚拟变量陷阱指当原特征有m个类别时,如果将其转换成m个虚拟变量,就会导致变量间出现完全共线性的情况。

总结来说就是:当原特征有m个类别时,我们需要将其转换成m-1个虚拟变量。

还有一点需要注意的是,基准类别该如何选择?如果基准类别选择不合理,虚拟变量之间仍然会存在共线性的问题。这里直接给出结论:选择占比最大的类别作为基准类别。假设有a,b,c三个类别,如果基准类别a占比太少,那么即使把a去除,b和c之和也会接近于1。

机器学习中的多元线性回归步骤

划分数据集为训练集和测试集:

机器学习中的多元线性回归步骤

第2步:在训练集上训练多元线性回归模型

机器学习中的多元线性回归步骤

第3步:在测试集上预测结果

机器学习中的多元线性回归步骤

第4步:模型评估

在sklearn中包含四种评价尺度,分别为mean_squared_error(均方差)、mean_absolute_error(平均绝对值误差)、explained_variance_score(可释方差得分 )和 r2_score(R2 决定系数(拟合优度))。 这里我们使用 r2_score:

  • 模型越好:r2→1
  • 模型越差:r2→0
机器学习中的多元线性回归步骤

第5步:可视化结果对比

其实在这一步之前应该还有一步模型评估,然而模型评估最后还是得到一个数值,这里

机器学习中的多元线性回归步骤

总结

  • 1、数据预处理。
  • 2、在训练集上训练多元线性回归模型。
  • 3、在测试集上预测结果。
  • 4、模型评估。
  • 5、结果可视化对比。