您的位置: 首页 > 生活常识 >

回归直线方程b怎么求(一元线性回归详解)

100次浏览     发布时间:2024-08-08 11:01:04    

一、前言

大数据、人工智能机器学习实战性归纳总结,实例可以直接运行。如果您读后感觉总结的有收获请关注我,支持我进一步为大家做贡献,支持我就是支持科技的发展谢谢。

大家在学习机器学习的时候大多数都是以一元线性回归入门,使用的是Python工具,由于机器学习入门比较难,很多人一开始弄不清楚头绪,其实一元线性回归在拟合曲线计算回归系数的时候还是有一些步骤的,比如最小二乘法,求残差,通过求导求极值。为了是大家能够快速看见结果,然后再慢慢的研习里面的原理,特给大家总结此文章,目的为:

1、了解一元线性回归的拟合过程

2、能够使用Python实现一元线性回归的拟合过程

3、了解一元线性模型拟合优度的测量评价

本案例的实验环境为:

1、Python3.6以上版本

2、Python的基本数学库numpy、pandans、matplotlib、sklearn

3、Python的PyCharm开发环境

二、案例描述

一般来说房屋的售价和面积有很大的关系,也就是说面积是房屋的售价很大的一个权重,下面是一个房屋销售的数据如下:



在2000年以前某地区正常来说房屋售价为2000元/平方米,在以后的时间里有可能每个月房价稍稍有点浮动,但是浮动不大,整体还是近似的处于线性状态,请根据以上数据建立线性回归方程,并预测8平方米的售价。

三、一元线性回归的一个简单实现

1、概述

一元线性回归分析预测法,是根据自变量x和因变量Y的相关关系,建立x与Y的线性回归方程进行预测的方法。

两变量之间的关系

(1)函数关系:当自变量取值一定时,因变量取值由它唯一确定,这是确定关系。

(2)相关关系:当自变量取值一定时,因变量的取值带有一定的随机性,(例子:一块农田的水稻产量与施肥量之间的关系)这是不确定关系。

我们主要研究不确定型的函数关系,如收入与受教育程度之间的关系,等等问题。 但它们之间存在明显的相互关系(称为相关关系),又是不确定的。

使用最小二乘法求解回归系数:

最小二乘法公式是一个数学的公式,在数学上称为曲线拟合,此处所讲最小二乘法,专指线性回归方程!最小二乘法公式为b=y(平均)-a*x(平均)。

2、一元线性回归检验指标:拟合优度

拟合优度就是相关系数的平方R^2,R^2最大值为1。R^2的值越接近1,说明回归直线对观测值的拟合程度越好;反之,R^2的值越小,说明回归直线对观测值的拟合程度越差。r2_score函数是计算 R^{2}


3、一元线性回归模型拟合效果的判别:均方误差MSE

均方误差MSE用来检测预测值和真实值之间的偏差,



先给出已经调试通过的源代码:

import numpy as np

from matplotlib import pyplot as plt

from sklearn.linear_model import LinearRegression

# x轴数据

x_data = np.arange(7)

# y轴数据

y_data = np.array([2,4,6.09,8,10.1,12.1,14.06])

print(x_data)

print(y_data)

# 转换成sklearn框架能够识别的维度

x_data = x_data[:, np.newaxis]

y_data = y_data[:, np.newaxis]

# 建立模型

model = LinearRegression()

# 开始训练

model.fit(x_data, y_data)

# 斜率 print("coefficients: ", model.coef_)

w = model.coef_[0]

# 截距

print("intercept: ", model.intercept_)

b = model.intercept_

# 测试

x_test = np.array([[7]])

predict = model.predict(x_test)

print("predict: ", predict)


plt.plot(x_data, y_data, "b.")

plt.plot(x_data, model.predict(x_data), "r")

#plt.plot(x_data, b + w * x_data, "r")

plt.show()


下面详细说下实现步骤,根据步骤和数据大家对照自己的教材逐步体会原理,消化最小二乘法等推导步骤:

组织数据

步骤1:组织训练数据

x_data = np.arange(7)

上述数据代表1平方米、2平方米...7平方米


y_data = np.array([2,4,6.09,8,10.1,12.1,14.06])


步骤2 :组织测试数据

上述数据代表1平方米售价2000元、2平方米售价4千元、3平方米售价6.09元...

为了简单起见,在拟合完毕直线后给出测试数据是1平方米、2平方米...7平方米,8平方米,即:

x_test = np.array([[7]])

就是预测房价8平方米的价格是多少


建立回归方程

通过Python提供的一元线性回归方法将训练集x_data、y_data来训练模型,如下所示:

model = LinearRegression()

# 开始训练
model.fit(x_data, y_data)


预测房价

将测试数据x_data = np.arange(7)输入:

predict = model.predict(x_test)

print("predict: ", predict)
可以得到房价8平米的预测值为:predict:  [[16.10571429]]


拟合优度分析


Python提供的相应的函数为:

sklearn.metrics.r2_score(y_true, y_pred, sample_weight=None, multioutput=’uniform_average’)


计算我们的拟合优度:


from sklearn.metrics import r2_score

y_true = [2, 4, 6, 8,10,12,14]

y_pred = [2,4,6.09,8,10.1,12.1,14.06]

print(r2_score(y_true, y_pred))

输出结果为:0.9997169642857143

说明我们的线性拟合度还是十分不错的。


均方误差MSE检验

Python为我们提供了均方误差MSE检验的方法mean_squared_error(),实现如下:


#真实值

y_true = [2, 4, 6, 8,10,12,14]

#预测值

y_pred = [2,4,6.09,8,10.1,12.1,14.06]


from sklearn.metrics import mean_squared_error

print(mean_squared_error(y_true,y_pred))

结果为:0.004528571428571414

从结果来看,均方误差非常小,看来拟合的效果还是很理想的。

相关文章

转让和转租有什么区别店铺(关于房屋转租和租赁权转让的认定和处理)

关于房屋转租和租赁权转让的认定和处理  房屋转租与承租权转让,是房屋租赁关系变动和流转的两种典型方式,特别是随着商铺、写字楼等非居住用房投资的增加,其在实务操作中的应用也日趋普遍,但两者无论是在法律性质上、还是在实务操作中,都存在很大的差异。我国合同法对租赁权合同关系作了专章规定,但对租赁权的转让未
2025-06-07 01:09:50

投资什么能赚钱(普通人最佳的投资赚钱方式)

作为普通人,让资产长期增长的方法是什么? 是定投,长期主义,标的是什么呢,是企业股票,当然投资的前提是,长期的国运,是不是向上增长? 很多人可能被社会的大众意识所裹挟了无明状态。比如,房产,成为房奴,房产不一定是长期增长的,就像现在这个时期,2024年,房产这几年下滑几乎下跌了一倍。 而企业,
2025-06-06 16:30:26

房贷什么时间开始还款(房贷还款日期是如何确定的?)

房贷的还款日期是如何确定的呢?1、在签署贷款合同时,应当与银行确定还款日,并按照约定的还款日期进行还款。2、根据借款时间来确定。贷款后,银行将从贷款日计息,并告知借款人何时还款。当您完成首月还款之后,下一个还款月将在次日开始,而后续的还款日期则会根据您每月的还款日设定而确定。若当月无对应日,则按当月
2025-06-06 15:50:07

为什么要换空调雪种(家用空调制冷剂/雪种型号您了解多少?)

最近天气逐渐变热,家里空调的使用频率增多。有些朋友使用空调时感觉不凉快,这时第一反应都是:空调缺雪种了。那大家对雪种了解有多少呢?下面冷王科技为大家科普家用空调雪种/制冷剂吧!家用空调制冷剂介绍空调制冷剂就是雪种,又被称为冷媒,是空调设备制冷循环的工作介质,大家可以理解为制冷剂就是空调压缩机的血液,
2025-05-09 11:24:59

《三国杀》中喷子武将的艺术,满嘴骚话就算了,个个还顶得离谱

说到《三国杀》中的武将台词,那可谓是大千世界,无奇不有。有些人物台词非常霸气,有的略带伤感,也有的意境很唯美,总的来说这类武将的台词听起来经常会给人一种心旷神怡的感觉。但是“物极必反”,《三国杀》又怎会少得了那些能说会道的喷子武将呢?今天手杀菌就来说说这三位满嘴骚话的武将吧。陈琳陈琳作为汉末文学家、
2025-05-08 01:34:14

什么除水垢剂效果好(去除水垢:掌握实用方法)

在日常生活中,水垢是一个常见的问题,它不仅影响水壶、水瓶等容器的使用寿命,还可能对水质产生影响。因此,掌握一些去水垢的方法是非常有用的。本文将详细介绍几种常见的去水垢方法。柠檬酸去水垢法柠檬酸是一种天然的有机酸,具有很好的溶解水垢的能力。使用柠檬酸去水垢的方法非常简单,只需将柠檬酸粉末或柠檬汁涂抹在
2025-05-08 01:15:11