假设 a,b 是不共线的两个向量,对应的投影向量记作 p ,将b−p记做 e ,则p=xa. 可以得知 a 与e垂直(perpendicular),则 aTe=aT(b−p)=0 . 由上述方程可以得出
aTe=aT(b−p)=aT(b−xa)=0→xaTa=aTb→x=aTbaTa p=ax→p=aaTbaTa 如果 b 翻倍,则p跟着翻倍; 如果 a 翻倍,则p不会发生变化. 所以投影矩阵 P 作用于b,使得 p=Pb ,从而得出 P=aaTaTa 如果 a 是一个n维矩阵,则 P 是一个n×n的方阵. 因为矩阵与向量的乘积构成矩阵的列空间,所以 Pb=p=ax ,则 P 的列空间是通过a的一条线 C(P)= line though a. rank(P)=1P 是对阵的么? 答案是对阵的,即PT=P 同时,如果对 p 再进行一次投影,可以看出,其投影仍在a上,则 P2=P
下面将投影移到高维.
Why project? Because Ax=b may have no solution. Solve A\hat x=p instead , p is the projection of b onto col space.\hat x is the best possible.
假设三维空间中有个平面,有个不在平面内的向量 b , 现在想让b投影在平面上形成 p . 该平面由平面的两个基a1,a2进行表示,从而该平面可以表示为 A 的列空间,即A=[a1a2], b 并不在A的列空间中.从而将问题转换为 p=Ax^ , 找出 x^ . e=b−p→ e is perpendicular to plane. p=x^1a1+x^2a2=Ax^
关键点在于 b−Ax^ 垂直于平面. aT1(b−Ax^)=0 aT2(b−Ax^)=0 [aT1aT2]T(b−Ax^)=[00] AT(b−Ax^)=0→ATAx^=ATb
误差向量 e=b−Ax^ 在哪一个子空间里? 左零空间. e in N(AT) means e⊥C(A)
ATAx^=ATb 对这个方程进行求解. x^ 是什么? 投影是什么? 投影矩阵是什么? x^=(ATA)−1ATb vector p=Ax^=A(ATA)−1ATb matrix P=A(ATA)−1AT 这里如果将 A(ATA)−1AT 进行分解的话,可以看出最后分解出的结果是个单位矩阵 I : A(ATA)−1AT→AA−1(AT)−1AT=I 这并不成立,而不成立的原因是因为 A 不是可逆方阵,所以A不存在逆. 所以 P 只能保持上述形式,当且仅当A为可逆方阵时才可以进行分解.
如果 A 是一个可逆的方阵, 则A的列空间是整个 n 维空间, 投影矩阵将是单位阵P=I. 但是如果投影到子空间(即 A 的列空间非整个n维空间),则只能保持原式.
P 是对阵矩阵 PT=P P 的投影是自身 P2=P
假设 x−y 平面中存在三个点(1,1),(2,2),(3,2) 现在需要求解一条最优直线用以尽可能的接近这三个点. 假设这条最优直线是 b=C+Dt .将三个点代入,则得到如下方程式组:
C+D=1C+2D=2C+3D=2 可以一眼看出该方程式组没有直接解.用 A 表示方程式组的系数,则可以将方程式组表示为: Ax=⎡⎣⎢111123⎤⎦⎥[CD]=⎡⎣⎢122⎤⎦⎥=b
剩下就可以用上述的近似方法进行求解,留在下节课继续讲解.