从极大似然到最小二乘#
最小二乘法(Least Squares Method)是数据拟合里最经典的一类方法。它要做的事情可以先用一句话记住:
找到一条线,或者一个模型,让所有数据点的误差平方和尽可能小。
这里最容易卡住的问题不是公式本身,而是三个更本质的追问:
- 为什么不能把误差直接相加?
- 既然要消除正负号,为什么常用平方,而不是绝对值?
- 为什么从极大似然估计出发,也会推到同一个平方误差目标?
这篇按这三个问题展开。阅读顺序先从最小二乘的直觉困惑出发,再进入概率密度和似然函数,最后完成真正的推导方向:从极大似然到最小二乘。
1. 残差是什么#
假设我们有一组数据点:
用模型
去预测第 个样本的输出。真实值和预测值之间的差,就是残差:
如果模型是一条直线,那么 可以理解为这条直线的斜率和截距。最小二乘法要找的,就是一组最合适的 。
问题在于:每个点都有一个残差,我们怎么把一堆残差合成一个总误差?
2. 为什么不能直接把残差相加#
最朴素的想法是直接相加:
但这会马上遇到一个陷阱:正负误差会互相抵消。
比如只有两个点:
| 点 | 残差 |
|---|---|
| A | |
| B |
直接相加得到:
这个总误差看起来是 ,好像模型完美拟合了数据。但实际上它在两个点上都偏得很远,只是一个点偏高、一个点偏低。
所以,拟合误差不能只看“方向上的总和”,还要看“偏离的大小”。为了消除符号,常见选择有两个:
前者得到的是绝对误差,后者得到的是平方误差。
3. 为什么最小二乘选择平方#
平方不是唯一选择,但它有三个特别重要的优势。
3.1 平方函数更适合求导优化#
绝对值函数
在 的地方有尖角,不可导。它当然可以优化,但推导和算法处理会更麻烦。
平方函数
是一条平滑的抛物线,处处可导。把所有残差平方后相加:
再对参数 求导,就能得到非常干净的优化条件。在线性回归里,这甚至可以推出解析解。
3.2 平方会更重地惩罚大误差#
平方会放大大的残差:
| 残差 | 平方误差 |
|---|---|
这意味着最小二乘法会非常在意那些偏离很远的点。好处是它会努力避免某些点出现极端离谱的预测;代价是它也会对离群点比较敏感。
所以更准确地说:
平方误差适合“误差大致来自稳定噪声”的场景;如果数据里有很强的离群点,绝对误差或 Huber 损失有时会更稳健。
3.3 平方误差和正态分布天然相连#
最小二乘法最漂亮的地方,是它不只是一个计算方便的技巧。只要我们假设误差服从正态分布,那么用极大似然估计求最可能的参数,最后就会得到最小二乘目标。
这也是平方误差在统计学习里特别核心的原因。
4. 先分清概率密度和似然#
在推导之前,要先处理一个容易混淆的概念:同一个公式,为什么有时叫概率密度函数,有时又叫似然函数?
关键区别不是公式,而是谁被当作变量。
4.1 概率密度:已知参数,看数据怎么分布#
如果模型参数 已经给定,数据 是随机变量,那么
描述的是:在参数 下,观测到不同 的相对密集程度。
因为回归里的 通常是连续变量,所以这里严格说是概率密度,不是某个精确点上的概率。连续变量取某一个精确值的概率是 ,真正的概率来自某个区间上的积分。
4.2 似然:已知数据,反过来比较参数#
极大似然估计的视角反过来。
现在数据已经观测到了, 是确定的;未知的是参数 。我们把同一个表达式看成关于 的函数:
这时它就叫似然函数。它的含义不是“参数 的概率”,而是:
如果参数是 ,那么它生成当前这批观测数据的支持程度有多高。
一个简单记法是:
| 名字 | 已知 | 变量 | 问题 |
|---|---|---|---|
| 概率密度 | 参数 | 数据 | 这个模型会生成什么样的数据? |
| 似然 | 数据 | 参数 | 哪个参数更像是生成这批数据的原因? |
5. 用极大似然推出最小二乘#
现在进入推导。
假设真实值由模型预测值加噪声得到:
其中误差项满足独立同分布,并服从均值为 、方差为 的正态分布:
也就是说:
于是,在给定 和 的情况下,观测到 的概率密度为:
因为样本之间独立,整批数据的似然是每个样本似然的乘积:
代入正态分布密度:
极大似然估计要找:
连乘不方便求导,所以取对数。由于对数函数单调递增,最大化 等价于最大化 :
展开以后得到:
也就是:
观察这个式子:
- 第一项和 无关,是常数;
- 是正数;
- 唯一和 有关的部分,是残差平方和。
因此,最大化对数似然等价于最小化:
这正是最小二乘法。
6. 最后一层直觉#
最小二乘法里的“平方”可以从两个角度理解:
| 角度 | 解释 |
|---|---|
| 优化角度 | 平方消除正负号,而且平滑可导,方便求解析解或梯度优化。 |
| 统计角度 | 如果误差服从正态分布,极大似然估计自然推出平方误差。 |
所以,平方不是凭空选出来的。它一边来自优化上的便利,一边来自正态误差假设下的概率模型。
当然,这也告诉我们一个反方向的判断标准:
如果误差不像正态噪声,而是有大量离群点,最小二乘未必是最稳的选择。
这时可以考虑最小绝对偏差、Huber 损失或其他更鲁棒的目标函数。但在“误差大致对称、集中、没有太多极端离群点”的情况下,最小二乘法依然是最自然、最干净、也最常用的起点。