机器学习初学者 04月28日 08:52
【机器学习】不要小看线性回归!
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

线性回归作为机器学习的基础模型,看似简单却应用广泛。文章首先回顾了线性回归的基本原理,即假设目标变量是输入特征的线性函数,并探讨了误差项的分布。随后,文章介绍了线性回归的几种常见变体,包括多项式回归、广义线性回归、贝叶斯线性回归,以及神经网络。这些变体通过改变等式右侧的函数形式或左侧的目标变量函数,扩展了线性回归的应用范围。文章强调,即使是复杂的神经网络,其本质也是由大量线性回归单元组成的。

💡线性回归属于监督学习,假定目标变量是输入特征的线性函数,误差项服从均值为0、方差恒定的正态分布。

📈多项式回归是线性回归的自然推广,通过引入多项式,可以拟合目标与输入之间的非线性关系。当初步分析数据时,发现目标与输入的关系是弯曲的、非线性的,那么多项式回归或许值得一试。

🔗广义线性回归是线性回归的直接扩展,它假设目标变量的某个函数与输入的线性组合有关。常见的特例包括泊松回归(目标变量服从泊松分布)和逻辑回归(分类问题)。

🧠神经网络本质上是大量“重型并行版的线性回归”再加上“激活函数”而已。每个神经元就是一个线性回归,训练过程就是不断调整这些线性回归的系数。

2025-04-27 12:01 浙江

线性回归或许看起来有些平淡无奇,但它其实是许多机器学习模型的基础。

大数据文摘编译


在数据领域初学时,大家常听到的一个建议是:不要试图把整个机器学习都学透——因为它实在太庞大且变化太快,根本不现实;


而更应该聚焦在少数几个与数据工作日常紧密相关的模型,比如决策树、支持向量机,当然,还有线性回归。


线性回归本身就是一个非常实用的模型,更有意思的是,许多其他机器学习模型其实都是在它的基础上稍作改动而来。


本文的目的,就是想让大家看到这一点。接下来,我们会先简要回顾一下线性回归的基本原理,然后再介绍它的几种常见变体。



01 线性回归再认识


线性回归属于监督学习,也就是说我们有一个明确的输出变量(即目标变量),我们假定它是输入特征的线性函数。通常我们会用下面这样的公式来表示:


这里,y 是目标变量,x 是包含所有输入特征的向量,ε 代表“噪声”,也就是那些让我们的数据点无法完全落在直线上的误差。

我们进一步假设这些噪声服从均值为0、方差恒定的正态分布,也就是说,无论特征值大小如何,数据点距离直线的远近都是类似的。

换句话说,理想中的线性回归散点图大致是这样的:
而不是这样的:
(方差不恒定时的图像,线性回归失效)


02 多项式回归


在线性回归中,我们假设目标变量是特征的线性函数。

但在实际问题中,目标往往和特征之间关系更为复杂。刚意识到这一点时,很多人可能会觉得棘手,仿佛我们需要去找到某个函数 f,使得 y = f(x) + 噪声。

不过,如果仔细想想线性回归的原理,就会发现现实世界很多规律其实都是连续的,这类函数往往可以用多项式很好地逼近(感兴趣的同学可以去查查 Weierstrass 逼近定理或 Stone-Weierstrass 定理)。

线性函数其实只是一次多项式而已,所以多项式回归可以看作是一种自然的推广。模型形式大致如下:
如果你在初步分析数据时,发现目标与输入的关系是弯曲的、非线性的,那么多项式回归或许值得一试。比如下图:

(x³-x 曲线的数据拟合示意图)

03 广义线性回归


多项式回归改变的是等式右侧的函数形式,那左侧呢?如果不是目标变量本身,而是它的某个函数和输入的线性组合有关呢?也就是说,模型变成了:



这就是广义线性回归(Generalized Linear Regression,GLM)。

当 f(y) = y 时,就是我们前面讨论的普通线性回归,所以广义线性回归是它的直接扩展。

那 f 可以取什么形式呢?这取决于具体建模任务,但有几个常见的特例:


04 贝叶斯线性回归


这里不打算展开贝叶斯统计的基础知识,相关资料很多,有兴趣的同学可以自行查阅。

简单来说,就是当我们的数据很少、信息有限时,可以借助专家意见(先验知识)来辅助建模,获得对问题更全面的认识。在线性回归的情境下,如果数据点很少,直接拟合参数往往不靠谱,因为信息量不足。

但如果我们不追求唯一的“最佳拟合直线”,而是希望得到一条“高度可能包含真实直线”的区域,那么贝叶斯线性回归正好可以满足这样的需求。

数学细节可能会比较复杂,但核心思想就是:与其给出一条确定的直线,不如给出一个可能包含直线的区域。数据点越多,这个区域就越窄,我们对直线的位置也越有信心。如下图所示:
(贝叶斯回归的置信区间示意图)


05 神经网络


回到开头给初学者的建议,虽然深度学习和神经网络现在非常火爆,相关研究也是机器学习领域的前沿,但其实本质上,神经网络也就是大量“重型并行版的线性回归”再加上“激活函数”而已。

简单来说,神经网络由许多“神经元”(也叫感知机)组成,分布在不同的层中。每个神经元本质上就是一个线性回归,加上一个激活函数,用来判断输入是否足够让神经元“激活”。神经网络的训练过程,其实就是在不断调整这些线性回归的系数。

归根结底,神经网络就是大量的线性回归!不同的网络结构,核心区别无非是神经元(线性回归单元)数量和层数的不同。最复杂的深度网络,神经元可以多达上百万,层数也很多。

激活函数的选择也有多种(Heaviside、ReLU、Sigmoid 等都很常见),有的网络还会在不同层用不同的激活函数

但本质区别也就这些。无论是 CNN、自动编码器、Transformer 等等,归根结底,都是由大量小小的线性回归单元组成的。

06 总结


所以,线性回归或许看起来有些平淡无奇,但它其实是许多机器学习模型的基础。上面这些讨论远远不是全部内容,但希望能让你意识到线性回归的重要性。千万不要小看线性回归!

原文链接:
https://medium.com/data-and-beyond/do-not-underestimate-linear-regression-4680a19f5838




阅读原文

跳转微信打开

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

线性回归 机器学习 模型变体 神经网络
相关文章