0

0

使用Python进行回归分析和最佳拟合直线

王林

王林

发布时间:2023-08-28 09:33:05

|

1938人浏览过

|

来源于tutorialspoint

转载

在本教程中,我们将使用 python 编程实现回归分析和最佳拟合线

简介

回归分析是预测分析的最基本形式。

在统计学中,线性回归是一种对标量值与一个或多个解释变量之间的关系进行建模的方法。

在机器学习中,线性回归是一种监督算法。这种算法根据自变量预测目标值。

有关线性回归和回归分析的更多信息

在线性回归/分析中,目标是真实的或连续的值,例如工资、BMI等。它通常用于预测因变量和一堆自变量之间的关系。这些模型通常拟合线性方程,但是,还有其他类型的回归,包括高阶多项式。

立即学习Python免费学习笔记(深入)”;

在对数据进行线性模型拟合之前,有必要检查数据点之间是否存在线性关系。这从他们的散点图中可以明显看出。算法/模型的目标是找到最佳拟合线。

在本文中,我们将探讨线性回归分析及其使用 C++ 的实现。

线性回归方程的形式为 Y = c + mx ,其中 Y 是目标变量,X 是自变量或解释参数/变量。 m 是回归线的斜率,c 是截距。由于这是一个二维回归任务,因此模型会在训练期间尝试找到最佳拟合线。不必所有点都精确地排在同一条线上。有些数据点可能位于线上,有些则分散在线上。直线和数据点之间的垂直距离是残差。根据该点是位于该线的下方还是上方,该值可以为负值,也可以为正值。残差是直线与数据拟合程度的度量。该算法是连续的,以最小化总残差。

每个观测值的残差是 y(因变量)的预测值与 y 的观测值之间的差

$$\mathrm{残差\: =\: 实际\: y\: 值\:−\:预测\: y\: 值}$$

Powtoon
Powtoon

AI创建令人惊叹的动画短片及简报

下载

$$\mathrm{ri\:=\:yi\:−\:y'i}$$

评估线性回归模型性能的最常见指标称为均方根误差或 RMSE。基本思想是衡量模型的预测与实际观测值相比有多糟糕/错误。

因此,高 RMSE 是“坏”,低 RMSE 是“好”

RMSE 误差为

$$\mathrm{RMSE\:=\:\sqrt{\frac{\sum_i^n=1\:(这个\:-\:这个')^2}{n}}}$$ p>

RMSE 是所有残差平方均值的根。

使用Python实现

示例

# Import the libraries
import numpy as np
import math
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression
from sklearn.metrics import mean_squared_error

# Generate random data with numpy, and plot it with matplotlib:
ranstate = np.random.RandomState(1)
x = 10 * ranstate.rand(100)
y = 2 * x - 5 + ranstate.randn(100)
plt.scatter(x, y);
plt.show()

# Creating a linear regression model based on the positioning of the data and Intercepting, and predicting a Best Fit:
lr_model = LinearRegression(fit_intercept=True)
lr_model.fit(x[:70, np.newaxis], y[:70])
y_fit = lr_model.predict(x[70:, np.newaxis])

mse = mean_squared_error(y[70:], y_fit)
rmse = math.sqrt(mse)

print("Mean Square Error : ",mse)
print("Root Mean Square Error : ",rmse)

# Plot the estimated linear regression line using matplotlib:
plt.scatter(x, y)
plt.plot(x[70:], y_fit);
plt.show()

输出

使用Python进行回归分析和最佳拟合直线

Mean Square Error : 1.0859922470998231 Root Mean Square Error : 1.0421095178050257

使用Python进行回归分析和最佳拟合直线

结论

回归分析是一种非常简单但功能强大的技术,用于机器学习和统计中的预测分析。这个想法在于其简单性以及独立变量和目标变量之间的潜在线性关系。

相关文章

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
Golang 性能分析与pprof调优实战
Golang 性能分析与pprof调优实战

本专题系统讲解 Golang 应用的性能分析与调优方法,重点覆盖 pprof 的使用方式,包括 CPU、内存、阻塞与 goroutine 分析,火焰图解读,常见性能瓶颈定位思路,以及在真实项目中进行针对性优化的实践技巧。通过案例讲解,帮助开发者掌握 用数据驱动的方式持续提升 Go 程序性能与稳定性。

9

2026.01.22

html编辑相关教程合集
html编辑相关教程合集

本专题整合了html编辑相关教程合集,阅读专题下面的文章了解更多详细内容。

54

2026.01.21

三角洲入口地址合集
三角洲入口地址合集

本专题整合了三角洲入口地址合集,阅读专题下面的文章了解更多详细内容。

28

2026.01.21

AO3中文版入口地址大全
AO3中文版入口地址大全

本专题整合了AO3中文版入口地址大全,阅读专题下面的的文章了解更多详细内容。

378

2026.01.21

妖精漫画入口地址合集
妖精漫画入口地址合集

本专题整合了妖精漫画入口地址合集,阅读专题下面的文章了解更多详细内容。

113

2026.01.21

java版本选择建议
java版本选择建议

本专题整合了java版本相关合集,阅读专题下面的文章了解更多详细内容。

3

2026.01.21

Java编译相关教程合集
Java编译相关教程合集

本专题整合了Java编译相关教程,阅读专题下面的文章了解更多详细内容。

15

2026.01.21

C++多线程相关合集
C++多线程相关合集

本专题整合了C++多线程相关教程,阅读专题下面的的文章了解更多详细内容。

9

2026.01.21

无人机驾驶证报考 uom民用无人机综合管理平台官网
无人机驾驶证报考 uom民用无人机综合管理平台官网

无人机驾驶证(CAAC执照)报考需年满16周岁,初中以上学历,身体健康(矫正视力1.0以上,无严重疾病),且无犯罪记录。个人需通过民航局授权的训练机构报名,经理论(法规、原理)、模拟飞行、实操(GPS/姿态模式)及地面站训练后考试合格,通常15-25天拿证。

47

2026.01.21

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
R 教程
R 教程

共45课时 | 5.4万人学习

Pandas 教程
Pandas 教程

共15课时 | 0.9万人学习

微信小程序开发之API篇
微信小程序开发之API篇

共15课时 | 1.2万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号