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

一、概念

一元线性回归,指的是只研究一个自变量与一个因变量之间的关系。简单来说就是看如何设计出一条理想的直线(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】**老师学习的,大家可以去看该老师的视频学习!

相关推荐
罗西的思考6 小时前
【Agentic RL】Dressage Staleness 控制深度分析
人工智能·算法·机器学习
quaer7 小时前
弗洛伊德算法--判圈法寻找环的入口O(n) O(1)
数据结构·算法
Rocky Ding*7 小时前
深入解析GPT-6 Astra提示词工程:从Skills、AGENTS.md到可验证的Agent交付
论文阅读·人工智能·深度学习·机器学习·aigc·ai-native·提示词工程
高晶8 小时前
无乘法器实现LC二阶滤波器:基于移位运算的快速算法与四种精度推导
算法·设计模式·程序员
ysbfsy8 小时前
大数计算思路
算法
高晶8 小时前
主从自动分配算法:平均值乘以设备数一半的选举基准值解析
算法·设计模式·程序员
学电子她就能回来吗9 小时前
LeetCode Hot 100|普通数组专题学习笔记(零基础版)
笔记·算法·leetcode
用户老李9 小时前
反向传播计算梯度举例
算法
niyongsheng9 小时前
多智能体连续时间内路径规划:AA-SIPP(m) 的 Rust 实现与算法
算法·rust·机器人
田里的水稻9 小时前
PyTorch_Dataloader\TensorBoard---数据加载与可视化
人工智能·pytorch·python·神经网络·机器学习