矩阵分解

豪斯霍尔德反射

Householder 反射就是一面镜子。取一个定义超平面(即与 v 垂直的平面)的单位向量 v,变换 H = I - 2 v v^T 就把每个向量关于该超平面作镜像反射。从几何上看,它是除恒等映射之外最干净的正交映射:把沿 v 的分量翻转,而让平面内的一切原封不动。

它在分解中的威力在于:你可以挑选这面镜子去恰好完成一件有用的事——取给定的列向量 x,把它反射到某个坐标轴上,使结果成为 (± ||x||, 0, 0, ..., 0)。一次选得好的反射就能一举把某列中主元下方的所有元素置零。施加 n-1 次(每列一次),就把 A 化为上三角形式,这正是 QR 分解中的 R。

由于 H 既对称又正交(H = H^T,H H = I,故 H = H^-1),它保持所有长度和角度,施加它不会放大舍入误差。这正是 Householder QR 后向稳定的原因,与 Gram-Schmidt 形成鲜明对比。你从不构造完整的 H 矩阵;只存 v,并用 H x = x - 2 v (v^T x) 来作用,每列代价约为 n 的量级。

一个需要小心的细节:为避免当 x 已几乎指向目标轴时发生灾难性抵消,应选择把 x 映到 -sign(x1) ||x|| e1 的反射,即送往远端轴向而非近端。正是这一符号选择使算法稳健。

H = I - 2 v v^T, ||v|| = 1, H x = x - 2 v (v^T x)

只需存 v;作用反射器时从不构造整个矩阵,每列代价约为 n 的量级。

Householder 反射也用于把矩阵化为三对角或 Hessenberg 形式,这是特征值迭代前的标准预处理步骤。

又称
Householder transformationelementary reflector豪斯霍尔德变换