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

本文详细介绍了使用OpenCV进行多元线性回归的步骤,从数据预处理到模型训练、预测、评估及结果可视化。通过预处理避免虚拟变量陷阱,使用R2分数等评价指标评估模型性能。
摘要由CSDN通过智能技术生成

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

第1步: 数据预处理

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

导入相关库:

2b9d69d16ce2d6b5d6e175f43451b2e7.png

导入数据集:

74013f4178de1b3b2784acfd9ad35c5a.png

将分类数据数字化:

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

9a1666e2875012ae4bed49359eff9ebd.png

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

d9a408397e459d494449030a63b49bcd.png

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

避免虚拟变量陷阱:

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

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

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

6ad74b0c1f58fcb3ac1208bca91f9b08.png

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

9de2e7d81a2805dcee84b5e615e2d320.png

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

262cea6fbf88277198ec6aee8a3d6c3e.png

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

a2716b7efb52801fa38fdc3c40ba6089.png

第4步:模型评估

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

  • 模型越好:r2→1
  • 模型越差:r2→0
ba694ac4abee656e082f629f0304d13b.png

第5步:可视化结果对比

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

4ee77b756dd82aecef741984ce658b4b.png

总结

  • 1、数据预处理。
  • 2、在训练集上训练多元线性回归模型。
  • 3、在测试集上预测结果。
  • 4、模型评估。
  • 5、结果可视化对比。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值