Skip to content
汉松札记
Go back

统计学与机器学习交汇点:线性回归的数学基础

技术笔记

本文详细解析了线性回归的数学含义,包括“线性”和“回归”两个核心概念。线性主要涉及可加性和齐次性,这两个性质在数学、统计学乃至软件工程等多个领域都有广泛应用。回归则是一种预测数值型输出(因变量)的方法,基于一个或多个输入(自变量)。线性回归结合了这两个概念,通过找到最佳拟合直线来进行预测。该模型具有可加性和齐次性,使其易于理解和扩展。本文还通过具体实例和方程,解释了这些概念在实际应用中的意义和优势。

线性

线性的基本定义是:一个函数或等式在数学上被称为线性的,如果它具有“可加性”和“齐次性”。具体来说,对于任何标量aa,和任何输入xx和yy,线性函数f(x)f(x)需满足:

  1. 可加性:f(x+y)=f(x)+f(y)f(x + y) = f(x) + f(y)
  2. 齐次性:f(ax) = a \times f(x)

可加性

可加性作为一种基础数学性质,在多个领域有广泛应用。

比如概率论,概率论中的可加性主要有两方面:

  1. 事件可加性:如果两个事件 A 和 B 是互斥的(即 A \cap B = \emptyset),则 A 和 B 的并集 A \cup B 的概率是 P(A) + P(B)。

P(A \cup B) = P(A) + P(B) \\2. 随机变量可加性:如果 X 和 Y 是两个独立的随机变量,则 X+Y 的期望和方差是可加的。

E[X + Y] = E[X] + E[Y] \\\text{Var}(X + Y) = \text{Var}(X) + \text{Var}(Y) \\

“可加性”在数学和工程上常用于将一个复杂问题分解成几个更简单的子问题,然后独立解决这些子问题,最后将它们的解相加以获得最终的解。

上面我们讲的都是数学上面的理解,比较抽象。数学的概念在现实世界中有很多实际工作的映射。接下来让我们把可加性的概念迁移到软件工程上面。

假设你要设计一个电商网站,该网站有几个主要组件:用户界面(UI)、商品推荐系统、库存管理、和支付处理。

  1. 用户界面(UI):负责网站的外观和用户交互。
  2. 商品推荐系统:根据用户历史和行为推荐商品。
  3. 库存管理:跟踪商品存量。
  4. 支付处理:处理用户支付和退款。

如果这些组件是“可加的”,即它们互相独立且可以单独优化,那么你可以分别开发和改进这些组件,而不用担心一个组件的改变会影响其他组件。例如:

然后,你可以将这些独立优化的组件组合在一起,构建一个更有效、更强大的电商网站。这就是可加性的优势:它允许你分而治之,将复杂的大问题简化为多个可管理的小问题。

齐次性

齐次性意味着当你对输入进行某种缩放(乘以一个常数因子)时,输出也会按照相同的比例缩放。这种性质有助于系统的扩展性和灵活性,因为基础逻辑和结构在缩放时保持不变。

假设你有一个电商平台,该平台具有良好的可扩展性(齐次性)。今天有1万名用户访问,明天可能有10万名用户访问。

  1. 商品推荐系统:无论是1万名用户还是10万名用户,商品推荐系统只需要增加对应的机器就能服务更多用户。
  2. 库存管理:如果你卖出的商品数量增加了10倍,库存管理系统仍然能够准确地跟踪哪些商品有存货,哪些没有。

由于这些组件都具有齐次性,即使网站的规模发生了巨大变化,整个系统的基本性质和效率也不会受到影响。这也使得随着业务的发展,扩展整个平台变得相对容易。这就是齐次性在电商网站设计中的一种应用。

非线性

为了加深对线性的理解,这里也简单提一下非线性的概念。非线性的定义很简单:不满足线性的可加性和齐次性就是非线性。

线性函数或模型更容易分析和解释,但在处理复杂系统时可能过于简化。非线性函数或模型则能捕捉更多的复杂性,但解析解通常更难找到。

想象一下你在丢一个球,这个球以恒定的速度移动。你可以用一个直线方程来表示这个球的位置和时间的关系,也就是说,这个问题是“线性”的。

这种情况下,如果你知道了球初始的位置和速度,你就能很容易地计算出球在任何时候的位置。

假设球以恒定速度 v移动,时间为t,初始位置为 x_0。这个模型可以用以下公式表示:

x(t) = v \cdot t + x_0 \\

这是一个线性方程,你可以很容易地解出任何时间 t下球的位置x(t)。

现在,假设你丢的这个球受到了风阻和重力的影响,速度会不断改变。这时,你不能用一个简单的直线方程来描述球的运动轨迹了。这个问题就是“非线性”的。

这种情况下,要确定球在任何给定时间的确切位置就相对复杂了。可能需要用到更复杂的数学工具和计算。

现在考虑风阻和重力。假设球的位置 x(t)受到风阻D(x)和重力g的影响,我们可能会得到一个像这样的方程:

m \frac{d^2 x}{dt^2} = - D(x) - mg \\

这是一个二阶微分方程,其中D(x)可能是一个复杂的非线性函数,比如D(x) = k x^2。

在这个情况下,要解出 x(t)就相对复杂了,可能需要数值方法来求解。

简单来说:

线性模型就像是用直尺和铅笔来画图,简单但有局限。非线性模型就像用整个画图工具箱,虽然复杂,但更能捕捉细节。

回归

回归在统计和机器学习中通常指的是一种用来预测数值型输出(因变量)的方法,基于一个或多个数值型或者类别型的输入(自变量)。 假设你是一名高中足球教练,你想知道球员跑100米的时间(输出或因变量)和他们的体重、身高、训练时间(输入或自变量)之间有什么关系。你可以用回归分析来找出这些变量之间的关系,并据此预测新球员跑100米可能的时间。 简单来说,回归就是找出一种规律或者方程,让你可以用已知的信息(如体重、身高、训练时间)来预测你关心的结果(如跑100米的时间)。

线性回归

将上面的线性和回归的概念结合一下,我们就得到了线性回归这种机器学习的算法。线性回归是一种用于预测连续数值输出(因变量)的简单机器学习算法,基于一个或多个输入特征(自变量)。这种预测是线性的,即输出是输入的线性组合。

当我们的输入包含d个特征时,我们将预测结果\hat{y} (通常使用“尖角”符号表示y的估计值)表示为:

\hat{y} = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \cdots + \beta_n x_n \\

假设你想预测一个房子的价格(输出)基于其面积和房间数量(输入),此时特征数量为2。线性回归会给你一个方程,让你可以插入面积和房间数量,然后得到一个预测的房价。 方程可能长这样: \text{房价} = 10000 + 200 \times \text{面积} + 3000 \times \text{房间数量} 这样,如果你知道一个房子的面积是150平方米,有3个房间,就可以预测其价格: 10000 + 200 \times 150 + 3000 \times 3 = 10000 + 30000 + 9000 = 49000 所以预测房价是49000元。这就是线性回归的基本应用。

线性回归中的可加性

在线性回归中,模型的预测是各个特征和其对应权重的线性组合。这本质上是一个”可加”的过程。

假设有一个简单的线性回归模型来预测房价,基于两个特征:房屋面积(x_1)和房间数量(x_2)。模型方程为:

\text{房价} = \beta_1 x_1 + \beta_2 x_2 \\

分而治之的过程如下:

  1. 分解成子问题:你可以将房价看作由不同因素(面积和房间数量)独立影响而成。即,房屋面积对房价的影响是 \beta_1 x_1,房间数量对房价的影响是 \beta_2 x_2。
  2. 独立解决子问题:你可以分别研究面积和房间数量对房价的影响,这通常通过数据拟合来实现,得出 \beta_1 和 \beta_2。
  3. 组合子问题的解:最后,你把这两个影响相加,以得到整体房价的预测。

这种可加性使得线性回归模型非常灵活和易于解释,你可以清晰地看到每个特征如何影响预测结果,并且可以方便地添加或删除特征以改进模型。

线性回归中的齐次性

细心的读者可能会发现,线性回归的公式

\hat{y} = \beta_0 + \beta_1 x_1 + \beta_2 x_2 + \cdots + \beta_d x_d \\

不满足齐次性。齐次性定义为:对于任意常数 a,有 f(ax) = a \times f(x)。

如果我们把每个输入 x_i 都乘以一个常数 a,得到:

\hat{y}(ax_1, ax_2, \ldots, ax_n) = \beta_0 + \beta_1(ax_1) + \beta_2(ax_2) + \cdots + \beta_n(ax_n) \\= \beta_0 + a\beta_1 x_1 + a\beta_2 x_2 + \cdots + a\beta_n x_n \\= \beta_0 + a (\beta_1 x_1 + \beta_2 x_2 + \cdots + \beta_n x_n) \\= \beta_0 + a \hat{y} \\

因为存在着 \beta_0,所以 \hat{y}(ax_1, ax_2, \ldots, ax_n) \neq a \hat{y}(x_1, x_2, \ldots, x_n),这说明线性回归模型不满足齐次性。如果去掉 \beta_0,剩余部分 \beta_1 x_1 + \beta_2 x_2 + \cdots + \beta_d x_d 是齐次的。

线性回归居然不满足线性的定义?实际上”线性”在”线性回归”中指的是自变量(x)与因变量(\hat{y})之间是线性关系。即,\hat{y}是x的线性组合。这里的线性并不要求模型是齐次的。 线性模型易于计算和解释,因此即使有常数项,仍然被称为”线性回归”。这个名称主要强调 x 与 \hat{y} 之间的线性关系,而非满足齐次性。

总结

总之,线性回归是一种强大而灵活的工具,其根基在于数学的可加性和齐次性原理。这些数学性质不仅让模型易于理解和解释,还使其在多个领域和实际应用中具有广泛的适用性。从统计学到软件工程,再到商业分析,线性回归的这些核心概念都有其独特的价值和应用。通过深入理解这些基础概念,我们可以更有效地应用线性回归模型,解决复杂的问题,并从中获得有价值的洞见。无论你是一个数据科学家、工程师还是业务分析师,掌握线性回归的数学内涵都将为你打开一个全新的视野。


订阅 技术笔记

RSS 邮件订阅待配置
Share this post on:

Previous Post
ChatGPT之GPTs的使用与分析:5分钟构建一个天气画报
Next Post
ChatGLM3 的代码解释器(Code Interpreter)实现原理