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≈I、QR≈A、残差与列空间近似正交,并与正规方程在病态数据上比较。
练习:对近共线回归数据分别用正规方程和QR求解,比较参数、预测、残差和稳定性。
小纸条
为何正规方程通常比 QR 更容易放大数值误差?