MENU

【Rethink Math】矩阵论的几何理解:施密特正交化与QR分解

2026 年 06 月 27 日 • 文章

正交是一个非常好的性质呀!

Householder矩阵

Takeaway:

Householder矩阵实际上描述了关于某个超平面的镜面反射。

关于某平面的镜面反射,就是保持垂直分量不变,而平行分量反向。

首先给出Householder矩阵的定义,同样,我们只考虑实数域上的事情。设$u\in \mathbb{R}^n$是单位向量,那么称:

$$ H=I-2uu^T $$

为Householder矩阵或初等反射矩阵

当时笔者学到这里,就想,为什么这样一个公式,就表示了一个反射变换呢?实际上,书中给的这个呈现形式非常烂,笔者认为合理的定义方法是:如果一个向量$u\in \mathbb{R}^n$是一个非零向量,那么称:

$$ H=I-2\frac{uu^T}{u^Tu} $$

为Householder矩阵或初等反射矩阵。

为什么这个形式好?或许有些读者已经看出来了——减号后面这一项,不就是投影公式嘛!

考虑两个非零向量$x$和$v$,要求$x$在$v$方向上的投影,也就是求:

$$ x_{\parallel}=\alpha v $$

那么:

$$ x_{\perp}=x-x_{\parallel} $$

亦即:

$$ v^Tx_{\perp}=0 $$

亦即:

$$ v^T(x-\alpha v)=0 $$

亦即:

$$ v^Tx-\alpha v^Tv=0 $$

也就是:

$$ \alpha=\frac{v^Tx}{v^Tv} $$

哈哈,也就有了我们的投影公式:

$$ x_{\parallel}=\frac{v^Tx}{v^Tv}v $$

因为分子是一个标量:

$$ x_{\parallel}=\boxed{\frac{vv^T}{v^Tv}}x $$

框起来的不就是我们Householder矩阵减号右边的东西吗?这个东西就叫做投影矩阵,能够把向量变换为向量在$v$上的投影向量。

那我们想要求一个向量关于$v$的反射,该怎么做?这里有一个事情,需要告诉各位读者,一点便通——关于某平面的镜面反射,就是保持垂直分量不变,而平行分量反向!这一点笔者不再展开,读者自己画画图就能理解。

那么当Householder作用到一个向量上,就应该满足我们镜面反射的性质:

$$ Hx=x-x_{\parallel}-x_{\parallel} $$

那么代入上面的结果,不正是我们Householder矩阵的定义嘛!

Gram-Schmidt正交化

Takeaway:

Gram-Schmidt正交化就是把一组不正交的向量,变成为一组互相垂直的单位向量。

笔者在本科阶段,被这个东西折磨了很久,太难算了!不过笔者已经上完了所有的课程,现在可以静下心来想想这个东西到底是什么?

Schmidt正交化方法的流程是这样的,对于向量组$\alpha_1,\alpha_2,\cdots,\alpha_n$,构造新的正交单位向量组:

$$ \beta_1=\frac{\alpha_1}{||\alpha_1||} $$

$$ \beta_2=\alpha_2-(\beta_1^T\alpha_2)\beta_1 $$

$$ \cdots $$

$$ \beta_n=\alpha_n-(\beta_1^T\alpha_n)\beta_1-(\beta_2^T\alpha_n)\beta_2-\cdots-(\beta_{n-1}^T\alpha_n)\beta_{n-1} $$

熟悉吗?这里减去的每一项,不就是$\alpha_n$在之前各个方向上的投影吗?没错,不断选择向量,把它在前面所有已选择向量上的平行分量都减掉,最后就彼此垂直了。也就是说:新向量就是旧向量减掉它在其他方向上的投影

QR分解

Takeaway:

QR分解是在给一组斜的列向量重新建立一个正交坐标系。

读者可能会问:「嘿,你这家伙,为什么到现在才讲Schmidt正交化?」哈哈,没错,因为Gram-Schmidt正交化本质上就是对矩阵做QR分解;也可以这么说,QR分解实际上就是Gram-Schmidt正交化的矩阵表示

QR分解就是把一个矩阵$A$,分解为一个正交矩阵$Q$和一个上三角矩阵$R$的乘积的形式。我们对矩阵$A$所有的列向量进行Gram-Schmidt正交化,就会生成一个正交矩阵$Q$,那么我们将矩阵都看作列向量的形式:

$$ A=[a_1,a_2,\cdots,a_n]=[q_1,q_2,\cdots,q_n]M $$

这里$M$我们暂时还不知道是什么,不过可以确定的是,我们当前做了这样一件事,我们把矩阵$A$——可以看作向量组的一种排列形式——变换到了一组标准正交基上。那么$M$就应该是列向量的坐标。

那么根据Gram-Schmidt正交化方法的公式我们知道:

$$ a_i=k_{1i}q_1+k_{2i}q_2+\cdots+k_{ii}q_i $$

这无非是把公式进行移项而已。那么很明显$M$是一个上三角矩阵,每一个元素满足:

$$ M_{ij}=q_i^Ta_j $$