【机器学习】回归类算法-一元线性回归(入门)

一、概念

一元线性回归,指的是只研究一个自变量与一个因变量之间的关系。简单来说就是看如何设计出一条理想的直线(y=kx+b)。

二、如何确定一条理想的直线?

(1)最小二乘法

通过数学模型,拟合一条较为理想的直线。该直线可以使原数列的观测值与模型的估计值的离差平方和最小 (即所有点到该直线的垂直距离最短),而且原数列的观测值(y)与模型估计值(y1)的离差总和为0

我们可以从下面的,求解身高与体重之间的关系的例子中,来理解最小二乘法。

(2)如何求解最小二乘法

①公式的推导

下面的这张图片是老师给的,直接可以求y=b1x+b0公式中的b1与b0的公式 (大家可以下来查资料自行推导,数学好的推荐

②机器学习的工具SKlearn

from sklearn import linear_model

linear_model.LinearRegression()

三、案例实践

设计下列商品销售量与收入之间的一元线性回归方程:

代码:

python 复制代码
import numpy as np
from sklearn import linear_model

X = [522, 539, 577, 613, 644, 670, 695, 713, 741, 769, 801, 855, 842, 860, 890, 920]
Y = [6700, 7136, 7658, 7784, 8108, 7583, 8002, 8442, 8158, 8683, 9317, 9675, 8542, 8584, 9612, 9719]
# reshap改变数据的形状
x = np.array(X).reshape(-1, 1)
y = np.array(Y).reshape(-1, 1)
# LinearRegression()为linear_model中的线性回归方程,直接调用即可
lr = linear_model.LinearRegression()
# fit()调用模型函数
lr.fit(x, y)
# coef_和intercept_分别对应我们要求的一元回归函数里面的两个系数
print(lr.coef_)
print(lr.intercept_)

结果:

四、总结

博主也是初学者,有很多不懂的地方,如果有说错的地方,欢迎大家指正。最后,该内容是跟着**B站up主【abilityjh】**老师学习的,大家可以去看该老师的视频学习!

相关推荐
No0d1es4 小时前
电子学会青少年软件编程(C/C++)5级等级考试真题试卷(2024年6月)
c语言·c++·算法·青少年编程·电子学会·五级
WBluuue5 小时前
数学建模:智能优化算法
python·机器学习·数学建模·爬山算法·启发式算法·聚类·模拟退火算法
赴3355 小时前
矿物分类案列 (一)六种方法对数据的填充
人工智能·python·机器学习·分类·数据挖掘·sklearn·矿物分类
一车小面包5 小时前
机器学习--决策树
决策树·机器学习
大阳1236 小时前
线程(基本概念和相关命令)
开发语言·数据结构·经验分享·算法·线程·学习经验
小艳加油6 小时前
Python机器学习与深度学习;Transformer模型/注意力机制/目标检测/语义分割/图神经网络/强化学习/生成式模型/自监督学习/物理信息神经网络等
python·深度学习·机器学习·transformer
weixin_307779137 小时前
VS Code配置MinGW64编译GNU 科学库 (GSL)
开发语言·c++·vscode·算法
sunxinyu7 小时前
曲面/线 拟合gnuplot
大数据·线性回归·数据处理·数据拟合·二维三维空间数据
Silence zero7 小时前
day43_2025-08-17
人工智能·深度学习·机器学习
学行库小秘8 小时前
ANN神经网络回归预测模型
人工智能·python·深度学习·神经网络·算法·机器学习·回归