投影矩阵、最小二乘法和SVD分解

投影矩阵广泛地应用在数学相关学科的各种证明中,但是由于其概念比较抽象,所以比较难理解。这篇文章主要从最小二乘法的推导导出投影矩阵,并且应用SVD分解,写出常用的几种投影矩阵的形式。

问题的提出

已知有一个这样的方程组:

[Ax=b ]

其中,(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^T}{A^T}(b - A{x_0}) = 0 ]

由于x的任意性,所以

[{A^T}(b - A{x_0}) = 0 ]

整理得

[{x_0} = {({A^T}A)^{ - 1}}{A^T}b = {A^dagger }b ]

其中({A^dagger } = {({A^T}A)^{ - 1}}{A^T})称为A的伪逆。

数值解法

原问题等价于

[min ||Ax - b||_2^2 ]

记$ f(x)=||Ax-b||_22=(Ax-b)T(Ax-b)=xTAT A x-2 b^T A x + b^Tb$,对x求导得,

[ abla f = 2({A^T}Ax - {A^T}b) = 0 ]

解得,

[{x} = {({A^T}A)^{ - 1}}{A^T}b = {A^dagger }b ]

投影矩阵

对最小二乘解两边同时乘以A,就是对应的投影向量,即

[{Ax} = {A({A^T}A)^{ - 1}}{A^T}b=Pb ]

那么(P={A({A^T}A)^{ - 1}}{A^T})就是将(b)投影到(ran(A))的投影矩阵。因为

[P^T={A({A^T}A)^{ - 1}}{A^T}=P,P^2=P ]

满足投影矩阵的定义。
所以(ran(A))对应的投影矩阵为

[P={A({A^T}A)^{ - 1}}{A^T} ]

SVD分解下的投影矩阵

秩为r的矩阵A的SVD分解为(A = USigma {V^T} in R^{m imes n})。其中,

[U = [{U_r}|{ ilde U_r}],V = [{V_r}|{ ilde V_r}] ]

那么,带入公式可以得到

(V_r V_r^T)(ran(A^T)={null(A)}^ot)空间的投影矩阵
(U_r U_r^T)(ran(A))空间的投影矩阵

对于(forall x in R^n),有

[leftlangle {V_r V_r^T x, ilde V_r { ilde V_r}^T x} ight angle =x^T V_r V_r^T ilde V_r { ilde V_r}^T x=0 ]

所以,( ilde V_r { ilde V_r}^T)(null(A))空间的投影矩阵
同理,( ilde U_r { ilde U_r}^T)(null(A^T)={ran(A)}^ot)空间的投影矩阵

原文地址:https://www.cnblogs.com/connorzx/p/4707112.html