投影矩阵广泛地应用在数学相关学科的各种证明中,但是由于其概念比较抽象,所以比较难理解。这篇文章主要从最小二乘法的推导导出投影矩阵,并且应用SVD分解,写出常用的几种投影矩阵的形式。
问题的提出
已知有一个这样的方程组:
其中,(A in R^{m imes n},x,b in R^n)
- 当(m=n)时,且(rank(A)=n)时,这是一个适定方程组,有唯一解(x=A^{-1}b)
- 当(m<n)时,或者(rank(A)<n)时,这是一个欠定方程组,有无穷多个解。对于这种情况,我们使用(ran(A))中与(b)距离最近的向量对应的(x)作为最小二乘解。而相应的(ran(A))中的这个向量就是(b)在空间(ran(A))中的投影。
最小二乘法
几何解法
如上图所示,(b)不在(ran(A))中,(Ax_0)是(ran(A))空间中对(b)在欧几里得范数下的最好估计。此时$$forall x in {R^n},leftlangle {Ax,b - A{x_0}}
ight
angle = 0$$
等价于
由于x的任意性,所以
整理得
其中({A^dagger } = {({A^T}A)^{ - 1}}{A^T})称为A的伪逆。
数值解法
原问题等价于
记$ f(x)=||Ax-b||_22=(Ax-b)T(Ax-b)=xTAT A x-2 b^T A x + b^Tb$,对x求导得,
解得,
投影矩阵
对最小二乘解两边同时乘以A,就是对应的投影向量,即
那么(P={A({A^T}A)^{ - 1}}{A^T})就是将(b)投影到(ran(A))的投影矩阵。因为
满足投影矩阵的定义。
所以(ran(A))对应的投影矩阵为
SVD分解下的投影矩阵
秩为r的矩阵A的SVD分解为(A = USigma {V^T} in R^{m imes n})。其中,
那么,带入公式可以得到
(V_r V_r^T)是(ran(A^T)={null(A)}^ot)空间的投影矩阵
(U_r U_r^T)是(ran(A))空间的投影矩阵
对于(forall x in R^n),有
所以,( ilde V_r { ilde V_r}^T)是(null(A))空间的投影矩阵
同理,( ilde U_r { ilde U_r}^T)是(null(A^T)={ran(A)}^ot)空间的投影矩阵