1433 字
7 分钟
线性代数 07|最小二乘、QR 与伪逆

数学总导航 · 本课程目录 · ← 上一章 · 下一章 →

电子秤有点抖,怎样估出真正的重量?#

同一件物品称三次,读数是 98、101、104 克。你只能报一个重量 cc,怎样让总平方误差最小?

把误差写出来:(98−c)2+(101−c)2+(104−c)2(98-c)^2+(101-c)^2+(104-c)^2。令 c=101+hc=101+h,展开得到 18+3h218+3h^2。所以 101 克最好,不需要凭直觉猜。

几何上,允许的预测只能是 (c,c,c)(c,c,c),它们在三维里构成一条直线。读数 (98,101,104)(98,101,104) 通常不在直线上,最小二乘把它投影到 (101,101,101)(101,101,101)。下面再把一条直线推广到更多预测变量。

从一个常数走到一条拟合直线#

电子秤例子只能报一个常数。如果测量会随时间缓慢漂移,就改报 a+bta+bt。在时刻 0,1,20,1,2 读到 1,2,21,2,2,预测向量为 (a,a+b,a+2b)(a,a+b,a+2b)。

所有允许预测由 (1,1,1)(1,1,1) 与 (0,1,2)(0,1,2) 两个方向张成一个平面。数据点通常不在平面上,任务是找到最近点。这里“拟合直线”在数据三维空间中对应的是一个预测平面,两个不同几何图像不要混淆。

正规方程可以从“挪一点不会变好”推出#

设当前误差 r=Ax−br=Ax-b,把参数改成 x+thx+th,平方误差为

∥r+tAh∥2=∥r∥2+2t rTAh+t2∥Ah∥2.\|r+tAh\|^2=\|r\|^2+2t\,r^TAh+t^2\|Ah\|^2.

若它对正负两种小 tt 都不能下降,一阶系数必须为零,即 rTAh=0r^TAh=0 对所有 hh 成立,因此 ATr=0A^Tr=0。这就是正规方程。

得到它后还可以反过来证明全局最优:交叉项已经为零,任何参数改动只会增加 ∥Ah∥2\|Ah\|^2。如果存在非零 hh 使 Ah=0Ah=0,参数可以变,预测和误差却不变,因此解不唯一。

为什么数值实现更爱 QR#

若 AA 的两列几乎平行,直接形成 ATAA^TA 会使这种难以区分的方向更加突出,条件数平方。QR 则先建立稳定的正交方向,再用三角系统回代。

可以把它理解为先把斜着挤在一起的两把尺子整理成互不干扰的尺子,再读坐标。不过这是几何解释;实际代码通常用 Householder 变换保证浮点稳定,而不是把所有投影步骤天真地直接相减。

最小范数解为什么是一种选择,而非恢复真相#

若只测出 x+y=2x+y=2,所有 (t,2−t)(t,2-t) 都吻合观测。最小范数选择 (1,1)(1,1),因为 t2+(2−t)2=2(t−1)2+2t^2+(2-t)^2=2(t-1)^2+2。

但真实值可能是 (0,2)(0,2)。伪逆给出的答案满足一个明确偏好:在同样解释观测的解里,选欧氏长度最小者。没有额外信息时,任何算法都不能凭空知道真实分配。这一点会在反问题与正则化里再次出现。

带你做:为什么残差的总和常常为零#

用带截距的直线拟合数据,设计矩阵包含一列全 1。最小二乘条件 ATr=0A^Tr=0 在这一列上给 ∑iri=0\sum_i r_i=0。

它意味着预测的平均值与观测平均值相同。以数据 1,2,21,2,2 和预测 7/6,5/3,13/67/6,5/3,13/6 为例,残差可取预测减观测,为 1/6,−1/3,1/61/6,-1/3,1/6,和确实为零。

如果你删除截距项,只拟合穿过原点的直线,列空间不再包含常数方向,残差和为零就不再必然成立。不要把某种模型的性质当成所有回归模型的共同性质。

你也可以反过来检查自己的实现:在普通无权平方损失、包含截距、且求解足够精确时,残差总和若明显不为零,可能是数据对齐、权重或求解环节出了问题。理论由此提供了一条很实用的核验办法。

回头整理:定义、工具与练习#

方程无解时,找最接近的输出#

测量数据有噪声时,Ax=bAx=b 常常无精确解。我们改为

min⁡x∥Ax−b∥22.\min_x\|Ax-b\|_2^2.

AxAx 必须位于列空间,所以这是把 bb 投影到列空间。最优余量与每一列正交:

AT(Ax−b)=0.A^T(Ax-b)=0.

这称为正规方程。若列满秩,则 ATAA^TA 正定、解唯一;若列相关,最近的输出仍唯一,但产生这个输出的 xx 可以不唯一。

一次手算拟合#

用 y≈α+βty\approx\alpha+\beta t 拟合 (0,1),(1,2),(2,2)(0,1),(1,2),(2,2)。有

A=(101112),b=(122),ATA=(3335),ATb=(56).A=\begin{pmatrix}1&0\\1&1\\1&2\end{pmatrix},\quad b=\begin{pmatrix}1\\2\\2\end{pmatrix},\quad A^TA=\begin{pmatrix}3&3\\3&5\end{pmatrix},\quad A^Tb=\begin{pmatrix}5\\6\end{pmatrix}.

解得 α=7/6,β=1/2\alpha=7/6,\beta=1/2。三个预测值为 7/6,5/3,13/67/6,5/3,13/6,余量与常数列及时间列都正交。

QR 为何方便#

若列满秩,将 AA 分解为 QRQR,其中 QQ 的列标准正交、RR 为可逆上三角矩阵。最小二乘化为 Rx=QTbRx=Q^Tb,用回代求解。

直接形成 ATAA^TA 会把二范数条件数平方:κ2(ATA)=κ2(A)2\kappa_2(A^TA)=\kappa_2(A)^2。因此 QR 通常更适合实际浮点计算。

伪逆补上秩亏情形#

借助 SVD A=UΣVTA=U\Sigma V^T,把非零奇异值取倒数、零保持为零,得到 A+=VΣ+UTA^+=V\Sigma^+U^T。则

x∗=A+bx_*=A^+b

是所有最小二乘解中范数最小的那个。它没有凭空恢复丢失的信息,只是在无法确定的核方向上选择零分量。

从样本回归到随机变量#

有限数据用平方和,随机变量用期望平方误差,函数用积分平方误差。三者都属于“在内积空间中寻找投影”。这条路线将在 概率、条件期望与再生核 中延伸为条件期望。

练习与解答#

  1. 用一个常数拟合数据 1,2,61,2,6,最优常数是多少?
  2. 若 A=(1 1)A=(1\ 1)、b=2b=2,有哪些精确解,哪个最小范数?
  3. 若正规方程有解,为什么它一定是全局最小点?

解答:1. 均值 3。2. x=(t,2−t)x=(t,2-t),最小范数解为 (1,1)(1,1)。3. 对任意增量 hh,平方误差增加量是 ∥Ah∥2\|Ah\|^2,交叉项因正规方程为零,故不会更小。


数学总导航 · 本课程目录 · ← 上一章 · 下一章 →

线性代数 07|最小二乘、QR 与伪逆
https://f1yingwhite.github.io/posts/数学/线性代数教程/07-最小二乘、QR-与伪逆/
作者
F1yingWhite
发布于
2026-11-03
许可协议
CC BY-NC-SA 4.0