Scikit-Learn线性回归(三)

Scikit-Learn线性回归三:综合实践

1、线性回归理论回顾

Scikit-Learn线性回归(一)Scikit-Learn线性回归(二) 中,我们详细介绍了线性回归的概念、原理和推导,模型评估与数据预处理,详解了Scikit-Learn线性回归模型以及多项式回归的基本使用

本文将通过美国南瓜价格数据集从数据预处理到模型选择、训练,再到曲线拟合、预测、模型评估,从简单线性回归到多项式回归再到多元线性回归模型,全方位多角度针对Scikit-Learn线性回归进行综合实践。这些不同的模型将使我们能够根据不同的输入数据预测南瓜价格

本文使用的南瓜数据集属于公共数据。是从美国农业部分发的特种作物终端市场标准报告中提取的原始数据,它来源于美国农业部网站,可以单独下载每个城市的数据。为了方便起见,我们的数据已经是多个城市拼接好的数据集

南瓜数据集下载:预留

下面我们再简单回顾一下线性回归的一些理论

机器学习的真正力量来自于训练模型。机器学习模型通过历史数据(先验知识)进行训练以自动捕获(寻找)数据间的依赖关系(规律),并通过此规律预测新的结果

线性回归包括简单线性回归(一元线性回归)、多项式回归、多元线性回归。简单线性回归可以看作是次数和特征数量为1的多元线性回归;多项式回归也可以转化为多元线性回归

我们已经知道,线性回归的目标是通过大量训练数据(历史数据)得到一个能反映自变量与因变量关系的回归模型(拟合曲线),进而根据回归拟合曲线预测新数据点(测试数据)的目标标签值

最小二乘回归就是绘制回归线的常用方法。最小二乘法(Least Squares)是一种数学理论。它通过最小化误差的平方和寻找数据的最佳匹配函数。利用最小二乘法可以方便地求得未知的线性函数,并使得线性函数拟合的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。其核心就是保证所有数据偏差的平方和最小

最小二乘回归线也称为最佳拟合线:Y=ωX+b,X是自变量,Y是因变量,直线的斜率是ω,也称权重或回归系数;b是Y的截距,也称常数项系数

因为回归分类是有训练的机器学习,因此我们训练的数据中已经包括了特征变量X与预测标签Y,因此基于最小二乘回归模型需要求解的参数只有ω与b。因此,训练此模型的流程就可以分为:计算ω和b(得到回归模型)、测试评估模型

随着特征变量的增多,我们需要计算的ω(回归系数或斜率)也增多,截距(常量b)则始终只有一个

2、数据预处理与问题提出

3、简单线性回归实践

4、多项式回归实践

5、多元线性回归实践

相关推荐
费弗里28 分钟前
Python全栈应用开发利器Dash 3.x新版本介绍(1)
python·dash
李少兄9 天前
解决OSS存储桶未创建导致的XML错误
xml·开发语言·python
就叫飞六吧9 天前
基于keepalived、vip实现高可用nginx (centos)
python·nginx·centos
Vertira9 天前
PyTorch中的permute, transpose, view, reshape和flatten函数详解(已解决)
人工智能·pytorch·python
学Linux的语莫9 天前
python基础语法
开发语言·python
匿名的魔术师9 天前
实验问题记录:PyTorch Tensor 也会出现 a = b 赋值后,修改 a 会影响 b 的情况
人工智能·pytorch·python
Ven%9 天前
PyTorch 张量(Tensors)全面指南:从基础到实战
人工智能·pytorch·python
mahuifa9 天前
PySide环境配置及工具使用
python·qt·环境配置·开发经验·pyside
大熊猫侯佩9 天前
ruby、Python 以及 Swift 语言关于 “Finally” 实现的趣谈
python·ruby·swift
19899 天前
【Dify精讲】第19章:开源贡献指南
运维·人工智能·python·架构·flask·开源·devops