夹角与垂直

两个向量的夹角为: cosθ=aTba∥∥b

两个向量正交,则内积 aTb=0

向量投影到向量

向量 b 投影到向量 a,可以形象的理解成 b 会按照与 a 垂直的方向投射到 a 上。所以 b 投影到 a 的结果是一个与 a 方向一样的向量,我们称为 p=x^a,其中 x^ 为标量。 因此有 (bp)a,也就是他们的内积为 0: aT(bx^a)=0 。可以进一步推导出 aTbx^aTa=0 ,因此: x^=aTbaTa 投影结果 p 就为: p=x^a=aTbaTaa=aaTbaTa=aaTaTab

换个视角,如果把投影的过程当成一个线性系统,也就是输入为 b,输出结果为 p,投影过程所代表的转换矩阵为 P,则: Pb=p 。通过代入计算可得:

P=aaTaTa

P 就称为投影矩阵

如果向量的维度为 n, 则 Pn×n 矩阵。P 投影矩阵的 rank 为 1,因为上面式子揭露了矩阵是由向量 aaT 相乘决定的。并且 nullspace 的 basis 为 n1 个,row space 和 column space 的 basis 为 1 个,都为 a, left nullspace 的 basis 也为 n1 个。

向量投影向量的矩阵是对称的

同时P为对称矩阵,即: PT=P。证明: PT=(aaTaTa)T=(aT)TaTaTa=aaTaTa=P

向量投影到向量的矩阵是幂等的

同时还有 P2=P。 在几何上很容易理解,投影之后再投影,对输入肯定是没有任何作用了。证明:

P2=aaTaTaaaTaTa=aaTaaTaTaaTa=a(aTa)aT(aTa)aTa=aaTaTa=P

向量投影到向量的矩阵没有逆矩阵

P 没有逆矩阵,因为 P 是 singlar 的, rank 不为 n。几何上可以理解为,向量 b 被投影之后,再也还原不回来了

向量投影到多维子空间

如果把 a 当成未知的向量,它在一个平面上,向量 b 投影到该平面上的情况分析也类似。我们可以先把这个平面的 basis 形成矩阵,用 A 表示,这样与 b 投影到该平面的向量就是 a=Ax ,这样就能使用上面同样的思路, (bAx)·Ax=0 ,这个是点积,有点推导不动了。

换一种思路,因为 a 是由 A 的 column 的线性组合,属于A的 column space,所以与 a 垂直的向量必定是落在 A 的 left nullspace 中,也就是 (bAx) 落在 A 的 left nullspace 中, 在 left nullspace 中的向量有 yTA=ATy=0 ,所以 AT(bAx)=0,再进行推导得到 ATAx=ATb (好像就是 Ax=b 两边同时用 AT 来做转换),从而得到 x=(ATA)1ATb

所以,向量 b 投影到 A 的结果就为 Ax=A(ATA)1ATb。投影矩阵就是 P=A(ATA)1AT

需要注意的是,上面P 出现了 逆矩阵 (ATA)1,而逆矩阵的出现是有条件的,即 (ATA) 需要是方阵,假设 Am×n 的矩阵,则 (ATA) 则为 n×n 的方阵。同时也需要 (ATA) 的 rank 为 n ,也就是 non-singlar 。

同时 (ATA) 的 nullspace, 也就是 A 的 nullspace,证明如下: Ax=0A nullspace AT(Ax)=0 AT(ATA)x=0 上面式子说明,A 的 nullspace 是 ATA 的 nullspace。

接下来看:

(ATA)x=0(ATA) nullspace xT(ATA)x=0xT(xTAT)Ax=0(Ax)TAx=0 (Ax)T=xTATAx2=0ATA=∥A2Ax=0Ax=0

上面式子说明,(ATA) 的 nullspace 是 ax 的 nullspace 。 所以 (ATA) 的 nullspace 与 A 的 nullspace 等价,也就是说如果 A 要有 P,则 A 必须 full rank

上面得到的投影矩阵 P 是一个一般化的情形,和一维向量投影的性质类似。

投影矩阵是对称矩阵

P 为对称矩阵,即 PT=P,证明: PT=(A(ATA)1AT)T=(AT)T((ATA)1)TAT=A(((ATA)T)1AT)=A(ATA)1AT=P

投影矩阵是幂等矩阵

同时也有 P2=P。证明:

P2=PP=(A(ATA)1AT)(A(ATA)1AT)=A(ATA)1((ATA)(ATA)1)AT=A(ATA)1AT=P

几何意义也类似,投影之后再投影,对输入肯定是没有任何作用了。

投影矩阵没有逆矩阵

类似的,P 没有逆矩阵,因为向量 b 被投影之后,再也还原不回来了

投影到四个子空间的矩阵

另外,既然 P 是把 b 投影到 A 的 column space,那么 IP 就是把 b 投影到 A 的 left nullspace,证明:bPb 落在 A left nullspace 上,那么 bPb=IbPb=(IP)b,也就是说(IP)b 投影到 A 的 left nullspace 上。

对应的, P2=AT(AAT)1Ab 投影到 A 的 row space 上,对应的 IP2b 投影到 A 的 nullspace 上

也就是说,我们可以把向量 b 投影到 A 的四个子空间:

投影矩阵 投影到A的子空间
P=A(ATA)1AT column space
P=IA(ATA)1AT left nullspace
P=AT(AAT)1A row space
P=IAT(AAT)1A nullspace