最小二乘法
最小二乘法(least squares)通过最小化观测值与模型预测值之间的残差平方和,选择模型参数。它既是一种拟合方法,也可以解释为在允许的预测中寻找离观测最近的点。
下面用四个水位数据拟合一条直线,逐步推导要最小化的量、系数方程及几何解释。数据是合成教学数据,与数学建模条目的复现附件一致。
一条直线怎样接近四个数据点
时间为 分钟,水位为 厘米。选择直线模型 其中 是初始水位估计,单位为厘米; 是每分钟的水位变化量,单位为厘米每分钟。
四个点不在同一直线上。例如前两个点的连线为 ,它在第三个时间 预测三厘米,而观测为二。因此不能要求一条直线同时精确经过全部点,只能规定一种比较拟合好坏的方法。
对每个点,采用“观测减预测”的残差约定: 直接把残差相加会相互抵消。若取 ,残差为 ;若取 ,残差为 ,后者和为零,却仍没有精确经过各点。
平方后再相加,每个误差都贡献非负数。本例的目标为 第一组参数的平方和为一,第二组为 ,所以按这一标准第二条线更好。接下来求出所有直线中平方和最小的那条。
本例第三个时间点的残差绝对值最大,因此对平方和的贡献也最大。取平方既防止正负抵消,也使大误差受到更重惩罚。
从残差推导两个系数方程
先固定斜率,只改变截距 。每个残差对 的导数都是负一,因此 再改变斜率 ,第 个残差的变化率为 ,所以 在最小点两者为零,得到 和 。代入数据: 第一式乘 ,得到 ;第二式减去它,得 ,所以 。代回第一式,,所以 。
因此候选拟合线为 。它使残差总和为零,且 这两个条件分别说明,继续平移或转动这条拟合线,都没有一阶降低平方和的方向。
图中采用竖直距离,因为模型预测的是给定时间下的水位。若时间坐标本身也有显著误差,需另行建立误差模型,不能直接把这个目标解释成点到直线的垂直距离。
为什么求出的驻点确实最优
导数为零一般不足以证明最小值,本例可以直接比较任何另一条直线。把参数改为 ,新预测比旧预测增加 ,新残差为 。展开平方和: 在刚才求得的参数处,中间两项都为零,于是 所以没有任何参数能更好。要让等号成立,每个 都须为零;取 得 ,再取 得 。因此最优参数也唯一。
含截距拟合还有一个方便性质。从 得 所以拟合线经过样本平均点。本例 。把 消去后,另一条系数方程给出 分母描述时间点的分散程度;如果所有时间都相同,分母为零,就不能用这些数据分别确定斜率和截距。
把时间中心移到平均点,目标会更清楚
令 ,把同一条直线改写成 。参数 是平均观测时刻的预测水位,而不是原来零时刻的截距。令 ,有 、。
用最优残差的正交条件展开,可以把整个目标写成 具体地,改变参数 与 后,额外平方和是 。交叉项含 ,因此消失;余下两项系数分别为观测数4与 。
中心化没有改变拟合的直线,只使两个参数方向在平方和中分开。求得 后,换回 。图上唯一谷底与前面的代数最优性证明相对应。
矩阵形式把同样的推导用于更多参数
把截距列与时间列排成设计矩阵: 每行对应一次观测,每列对应一个模型项,所有预测为 。目标就是 前面的两条残差条件统一写成 ,即正规方程 本例直接计算得到 与上一节逐项求出的两个方程完全相同。
一般线性最小二乘的“线性”指参数的出现方式。例如 虽然画出抛物线,对三个参数仍是线性的,只需使用三列 。模型 对参数 非线性,则不能直接使用同一组线性正规方程。
几何上是在寻找投影
所有可能预测 构成一个向量子空间,即 的列空间。观测向量 未必在其中;最小二乘寻找该空间中离 最近的预测 。
图是高维投影的二维示意。水位数据有四个坐标,不能直接把它们画成普通平面点,但“残差垂直于所有可拟合方向”的关系完全相同。
正规方程说,残差 与每一列正交,因此与列空间中任意方向都正交。若换一个预测 ,勾股关系给出 这就是上一节平方展开证明的几何形式。预测点是正交投影;原始数据可能有四个或更多坐标,但关系与平面上作垂线相同。
预测唯一,参数却未必唯一。例如让两个参数总以和 出现,去拟合两次观测二和四。令 ,目标变为 最优预测都是三,但参数 都符合要求。设计矩阵的两列相同,无法区分两个参数各自的贡献。只有列线性无关时,参数才唯一。
QR 分解怎样利用这幅几何图景
先考虑设计矩阵列线性无关、观测数不少于参数数的情形。为计算投影,可以把设计矩阵的列改写为互相垂直的单位方向。将 ,其中 的列正交归一, 是上三角矩阵,这称为薄 QR 分解。
仍用水位数据。第一列 的长度为二,归一化得 。时间列 沿它的投影系数是 。减去投影后,剩余 长度为 ,所以 于是第一列是 ,第二列是 。观测在这两个单位方向上的坐标为 让预测具有相同的两个坐标,就得到三角方程 先解第二式得 ,再解第一式得 。无法投影到这两个方向上的观测部分,正是无法被模型消除的残差。
QR 也是实用的数值计算方法。直接形成 会使满列秩矩阵的二范数条件数平方,列接近相关时可能加重精度损失;实际数值库通常使用 Householder 反射等方式计算 QR。这里的逐列投影用于展示含义,数值实现细节见 FNC 的 QR 计算章节。
权重与异常值会怎样影响答案
平方会放大大残差的影响。只拟合一个常数时,数据 的平方损失最小点为均值 ;把最后一项改为一百,均值变成二十五。若目标换成绝对偏差和,中位数零在两个例子中都最优。选择平方损失,就是选择了一种具体的误差权衡。
不同观测若需要不同权重,可最小化 ,其中 。例如用常数 拟合零和十,权重分别为九和一,目标为 答案是 ;等权时则为五。较大的权重使答案更靠近对应观测。在独立误差、已知方差的模型下常取方差倒数为权重,权重如何估计及其限制见 NIST 的加权最小二乘说明。
只改一个观测,拟合线怎样移动
仍保留四个观测时刻,只把最后的水位从4增加到5厘米。这是一项人为扰动,用来研究估计对数据的反应。一般地,若只把第 个水位增加 ,斜率公式中的分母不变。水位均值也增加了 ,所以分子的变化需要把这一项一起计入: 这里 在 时为1,其余为0;最后一步用了中心化时刻之和为零。因此 本例 ,所以 、。新拟合线为 。
同一点自己的拟合值增加了 方括号称为该点的杠杆值。四个时刻的杠杆值为 ;最后一个读数增加1,其自己的预测增加0.7。它量度输入设计赋予该点的影响潜力,并不由该点残差大小决定。较大杠杆不自动表示数据错误,是否异常及实际影响还须结合残差与问题背景。Penn State:Influential Points
这个计算也给出了复核办法:重算扰动数据的正规方程,得到同样的 ;新残差为 ,和与时间加权和仍为零。只有平方和变成1.8,而不是仍然0.7。
拟合误差与预测检验
水位模型的训练平方和为 平方厘米,训练均方根误差为 另外保留未参与拟合的两点:时间四、五分钟,水位 厘米。模型预测 厘米,残差为 ,留出平方和 ,均方根误差约为 厘米。两点只是说明检验流程,不足以判断一般预测性能。
计算最小二乘解不需要假设正态分布。若要从参数进一步推断真实变化率或给出置信区间,则需指定误差模型。固定、满列秩设计与零均值误差支持无偏性;方差、相关性及分布假设决定更进一步的统计结论,见统计推断。训练均方误差的除数是观测数,估计噪声方差时常用观测数减去独立参数数,两者用途不同。
历史与复现
Legendre 在 1805 年发表最小二乘法。Gauss 在 1809 年的著作中发表相关方法,并主张自己更早已使用;发表时间与更早使用的主张需要区分。相关记载见 MacTutor 的 Legendre 传记。
本条数据、标准库 Python 程序与预期结果可从数学建模的下载说明取得。修改某个训练水位后,既可以重新求系数,也可以检查残差之和与时间加权残差之和是否仍为零,再观察留出误差如何变化。
参考来源与延伸阅读
- Boyd 与 Vandenberghe:Introduction to Applied Linear Algebra,最小二乘、QR、模型拟合。
- Driscoll 与 Braun:The QR factorization、Computing QR factorizations:薄 QR 与稳定实现。
- NIST:Weighted Least Squares Regression:权重估计与统计条件。
- MacTutor:Legendre,最小二乘发表与优先权背景。
- 先修:矩阵、向量空间、导数;相关:优化、统计推断、数学建模。