形式陈述
设 且 。经济型 QR 分解写作
完整 QR 则把 补成 酉矩阵,并把 扩为 ,其底部 行为零。两种形式表达同一列空间,但维度不同;公式出现 或 时必须先说明采用哪一种。
每个 的矩阵都有 QR 分解。若 满列秩,则 对角元均非零;再约定实情形 ,或复情形将对角相位固定为正实数,可得到经济型分解的唯一性。秩亏时仍能分解,但 会奇异,唯一性消失。
稠密数值计算通常用Householder 反射公理库Householder 反射Householder reflection · Householder transformation用一个向量紧凑表示酉反射,把整段向量化到单一坐标方向,并作为稳定 QR 的基本原语。。第 步对 构造反射,左乘后把对角线下方元素清零;一串反射向量隐式表示 ,尾部更新最终产生 。实 矩阵的分解主成本约为
次浮点运算,存储可覆盖原矩阵的下三角区域。若第 步生成反射 ,则 ;计算 时按生成顺序把 依次作用到 ,无须显式形成 。
输入是矩阵和可选的列置换策略,输出是反射向量、 与置换信息。完成时应核对
并结合 对角或秩揭示信息判断数值秩。Householder QR 是后向稳定的标准稠密路线;classical Gram–Schmidt 在近相关列上可能严重丢失正交性,modified Gram–Schmidt 通常更好,但不能无条件替代 Householder 的稳定性保证。
直觉
只负责重新选择一组不会放大 -范数的正交坐标, 则记录原列怎样在这些坐标中逐层展开。于是矩阵列之间难以直接观察的几何关系,被组织成“正交方向加三角依赖”;求解和投影随后都能沿三角结构完成。
经济型 只保存列空间需要的 个方向,完整 还包含列空间正交补的 个方向。默认保存后者往往只是浪费;但若问题确实需要完整正交基,补全才有意义。
例子与边界
取
一个经济型分解为
是 而非方阵,却仍满足 ; 则是到 列空间的投影,不等于 。
若两列相同,第二个新方向为零, 的第二个对角元也为零。浮点中“恰好为零”会变成“相对矩阵尺度很小”,数值秩因此需要容差与噪声模型,不能把一个固定阈值写成数学唯一常数。
列主元 QR 写成 ,通过优先处理较显著、较独立的列改善秩判断;求得参数后必须撤销 。平面旋转更适合只消去少数元素、维护稀疏结构或更新已有分解,但对一般稠密整列消去,Householder 是默认原语。
推论与应用
Gram–Schmidt公理库Gram–Schmidt 正交化Gram–Schmidt process把有限线性无关组逐步转化为张成同一子空间的正交规范组。给出 QR 的构造性几何证明,本页集中 full/economy 维度、Householder 实现、成本和有限精度差异。把 classical Gram–Schmidt 当作默认数值 QR,会把精确算术等价误写成稳定性等价。
满列秩最小二乘可在 QR 坐标中化为上三角系统;特征值 QR 算法和 Hessenberg 化也复用正交变换。使用成熟 LAPACK 接口时,分解、显式生成 、应用 是不同操作,应只调用实际需要的部分。
参考资料
- Lloyd N. Trefethen and David Bau III, Numerical Linear Algebra, SIAM, 1997, Lectures 7–10.
- Nicholas J. Higham, Accuracy and Stability of Numerical Algorithms, 2nd ed., SIAM, 2002, Ch. 19.
- LAPACK Users’ Guide, QR Factorization.