机器学习-单因子线性回归

回归分析:根据数据,确定两种或两种以上变量间相互依赖的定量关系。

python实现:

python 复制代码
import pandas as pd
data = pd.read_csv('generated_data.csv') # 读数据
data.head()
x = data.loc[:,'x'] # 将文件中的x读入数组
y = data.loc[:,'y']

from matplotlib import pyplot as plt
plt.figure(figsize=(5,5)) # 画图
plt.scatter(x,y)
plt.show()

# set up linear regression model 建立模型
from sklearn.linear_model import LinearRegression
lr_model = LinearRegression()
import numpy as np
x=np.array(x) # 转维
x=x.reshape(-1,1)
y=np.array(y)
y=y.reshape(-1,1)
lr_model.fit(x,y)  # 创建模型

# 用模型测试
y_predict=lr_model.predict(x)  # 用x跑y
print(y_predict)
y_3=lr_model.predict([[3.5]]) # 用3.5跑对应y
print('y_3=',y_3)

# 模型评估
# 打印线性回归模型y=ax+b的a,b
a = lr_model.coef_
b = lr_model.intercept_
print('a=',a)
print('b=',b)

from sklearn.metrics import mean_squared_error,r2_score
MSE = mean_squared_error(y,y_predict) # MSE越解决0,越小越好
R2 = r2_score(y,y_predict)  # 越接近1,说明拟合得越好
print('MSE=',MSE)
print('R2=',R2)
plt.figure()
plt.plot(y,y_predict) # 拟合y和预测y
plt.show()

generated_data.csv文件内容展示:


输出结果:

数据x和y拟合图像:

y与y_predict拟合图像:

相关推荐
dalalajjl10 小时前
每个Python开发者都应该试试知道创宇AiPy!工作效率提升500%的秘密武器
大数据·人工智能
wheeldown10 小时前
【Rokid+CXR-M】基于Rokid CXR-M SDK的博物馆AR导览系统开发全解析
c++·人工智能·ar
爱看科技10 小时前
AI智能计算竞赛“战火重燃”,谷歌/高通/微美全息构建AI全栈算力开启巅峰角逐新篇
人工智能
IT_陈寒10 小时前
Redis性能翻倍的5个冷门技巧,90%开发者都不知道第3个!
前端·人工智能·后端
晨非辰10 小时前
C++ 波澜壮阔 40 年:从基础I/O到函数重载与引用的完整构建
运维·c++·人工智能·后端·python·深度学习·c++40周年
鼎道开发者联盟10 小时前
智能原生操作系统畅想:人智共生新时代的基石
人工智能·机器学习·自然语言处理
这张生成的图像能检测吗13 小时前
(论文速读)EfficientTrain++: 高效视觉骨干训练的通用课程学习
人工智能·深度学习·计算机视觉·训练方法
晚霞的不甘14 小时前
CANN:华为全栈AI计算框架的深度解析(终极扩展版 · 完整篇)
人工智能·华为