跳到正文
线性代数

QR 分解:稳定地做最小二乘

14 分钟

最小二乘寻找使 ||Ax-b||₂ 最小的 x。直接写正规方程 AᵀAx=Aᵀb 很方便,但会把条件数大致平方,数值误差可能显著放大。QR分解通常是更稳定的通用路径。

几何解释

若 A 的列张成子空间,Ax 是其中向量。最小二乘解让 Ax 成为 b 在该子空间的正交投影,残差与每一列正交,因此得到 Aᵀ(Ax-b)=0

QR怎样工作

把 A 分成正交列矩阵 Q 与上三角矩阵 R。正交变换保持2范数,于是问题化为求解较小的 Rx=Qᵀb。上三角系统可回代。

算法实现有差别

经典Gram–Schmidt直观但在列近相关时会失去正交性;改进Gram–Schmidt、Householder反射通常更稳定。数学分解相同,不代表所有实现数值品质相同。

秩亏与列主元

若特征列线性相关,R 的对角会接近0,解可能不唯一。带列主元QR可帮助识别有效秩;还需结合问题尺度设置阈值。

验证

检查 QᵀQ≈IQR≈A、残差与列空间近似正交,并与正规方程在病态数据上比较。

练习:对近共线回归数据分别用正规方程和QR求解,比较参数、预测、残差和稳定性。

小纸条

为何正规方程通常比 QR 更容易放大数值误差?