伪逆
伪逆通常指摩尔—彭若斯伪逆(Moore–Penrose pseudoinverse),记为 。它给任意实矩阵 和目标向量 选出一个确定的 :先使残差长度 最小;若这样的参数不止一个,再取其中长度 最小的那个。矩阵可以是长方形或秩不足,故这里的“逆”并不表示总能把 精确还原。
三次观测只测到了两个参数的和
考虑一个合成教学例子:三次观测分别为 ,模型每次都只输出两个参数的和 。其矩阵为 不可能让同一个 同时等于一、二、三。残差平方和按 展开为 因此所有最小二乘解都满足 ,最小残差平方和为二。数据只识别参数之和,不能单凭观测分别识别两个参数。
在这条解直线上写 ,参数长度平方为 它在 时最小,故伪逆选 。图中的直线是全部最小二乘参数,虚线从零指向最近点;其他点也同样拟合数据,却需要更大的参数长度。
用奇异值分解算出这一个解
这个 只有一个非零奇异方向。令 对应的伸缩倍数是 。 直接计算 。把非零伸缩倍数倒过来、把输入输出方向对调,得到 于是 ,与上面的直接最小化相同。若把观测换为 ,方程 真有无限多个精确解 ;伪逆给出其中最短的 。
一般公式及最短解的证明
若 的秩为 ,奇异值分解给出 ,其中 且每个 。定义 当 时和式为空,约定 。这个定义不把零奇异值取倒数;零方向恰是不能从输出中恢复的输入方向。
把目标分成 ,其中 与 的列空间垂直。任意输入可写成 ,其中 。两组正交性给出 要使残差最短,每个可调的平方项都取零,即 ;无法改变的误差是 。此时还可以任意加上 而不改变预测,但 在 时唯一最小。因此开篇的两级选择由公式完整推出,得到 。图中从零到 的垂线,正是这个“去掉核方向 ”的二维情形。
投影、普通逆与计算误差
从分解式直接相乘, 是输出空间到列空间的正交投影; 是输入空间到行空间的正交投影。于是 是模型能够给出的最近预测,但一般不等于 。在三次观测例子中,它把 投到 ;差 与列向量 垂直。
若 是可逆方阵,两组方向覆盖整个输入和输出,投影均为单位矩阵,此时 。若 满列秩,则在数学上有 ;这是一个恒等式,不意味着浮点程序应直接求逆并形成 。列接近相关时可用QR分解求满列秩最小二乘;真正秩不足或需检查近零奇异值时,SVD 会显出哪些方向不可辨别。
小奇异值的倒数也会放大相应输出方向的误差。例如 的伪逆等于普通逆 ;第二个观测坐标改变 ,恢复的第二个输入坐标就改变一。若实际数据含噪,是否舍弃小奇异方向或加入正则化,需要结合测量精度和模型目的决定,不能只凭“有伪逆”断言参数可靠。