机器学习——线性回归

机器学习------线性回归

文章目录

一、什么是线性回归

线性回归是一种用来建立自变量和因变量之间线性关系的统计分析方法,也是机器学习中最常见、最容易理解的一个算法。

在中学数学中有提及到一元线性回归方程,即
f ( x ) = A x + B y + C f(x)=Ax+By+C f(x)=Ax+By+C

当确认式子中的常量 A , B , C A,B,C A,B,C后,可得到一个二元一次方程,将函数画在图中可以得到一条直线。

二、一元线性回归方程

在一元线性回归方程中,实际散点会在拟合直线的周围。

在这之间就会存在一个误差 β \beta β,则此公式可以写为
f ( x ) = A x + B y + C + β f(x)=Ax+By+C+\beta f(x)=Ax+By+C+β

三、损失函数

在一组散乱的数据里,我们可以作出多条线作为回归方程,如何判定哪条线更适合就要使用残差平方和(SSE)来判定。

在实际值 y y y和拟合值 y ^ \hat y y^中存在一个差值 e e e即为残差,将 e e e进行平方处理去掉负号,然后对全部的 e e e值进行累加,得到残差平方和。当残差平方和的值越小,说明拟合效果越好。

在一元回归方程中,其损失函数为:
f ( x ) = ∑ i = 1 n e i = ∑ i = 1 n ( y i − y ^ i ) 2 \begin{aligned} f(x)&=\sum^{n}{i=1}e_i\\ &=\sum^{n}{i=1}(y_i-\hat y_i)^2 \end{aligned} f(x)=i=1∑nei=i=1∑n(yi−y^i)2

四、代码实现

matlab 复制代码
% 输入自变量 x 和因变量 y
x = [1, 2, 3, 4, 5];
y = [2, 4, 5, 6, 8];

% 拟合线性回归方程
coefficients = polyfit(x, y, 1);

% 提取系数
m = coefficients(1);
c = coefficients(2);

% 打印结果
fprintf('y = %.2fx + %.2f\n', m, c);
 
 % 绘制原始数据点
scatter(x, y, 'filled');
hold on;

% 计算拟合的 y 值
y_fit = polyval(coefficients, x);

% 绘制拟合的线性回归方程
plot(x, y_fit, 'r');

% 设置图标和标题
xlabel('x');
ylabel('y');
title('一元线性回归');

% 图例
legend('原始数据', '拟合线');

% 恢复绘图设置
hold off;

五、运用说明

若是由两个因素影响的,使用一元线性回归,三个因素影响则用二元线性回归,在平面上拟合。其他更多的因素采用多元线性回归拟合。

注意:在使用线性回归之前,先要确认其因变量和自变量是否为线性关系。

相关推荐
user-猴子2 分钟前
让网页“活”过来 —— 用AI打造会自主学习的动态知识图谱
人工智能·学习·知识图谱
苦瓜小生3 分钟前
AI名词大扫盲!最全的面试ai名词集合
人工智能·面试
KaMeidebaby3 分钟前
卡梅德生物技术快报|bli亲和力检测gst:告别批量跑胶:BLI实时酶切监测技术加速GST融合蛋白下游流程优化
前端·网络·数据库·人工智能·算法
晚笙coding4 分钟前
KnowFlow Agent Day10:实现文档切片与数据保存
人工智能
Litluecat9 分钟前
2026年7月21日科技热点新闻
人工智能·科技·搜索引擎·新闻·每日
千维百策66612 分钟前
运用 SRE 原则降低生产事故影响:CRE 实战经验与可靠性优化方法
网络·数据库·人工智能
千天夜18 分钟前
让大模型“先想再答”:Chain-of-Thought Prompting 论文精读——CoT 为什么能激发多步推理?
人工智能·深度学习·llm·gpt-3·llama
Elastic 中国社区官方博客19 分钟前
不到 5 分钟完成本地部署:Jina embedding 模型现已支持本地部署
大数据·人工智能·elasticsearch·搜索引擎·embedding·jina
2601_9632827722 分钟前
极寒专网技术拆解:黑龙江零下 40℃场景数字对讲组网全方案|黑龙江移远科技寒地通信底层技术解析
运维·网络·人工智能·科技
程序员cxuan22 分钟前
Loop 还没玩明白,Graph Engineering 又火了。
人工智能·后端·程序员