1. 投影矩阵
1.1 投影矩阵P
根据上节知识,我们知道当我们在解
A
X
=
b
AX=b
AX=b的时候,发现当向量b不在矩阵A的列空间的时候,我们希望的是通过投影,将向量b投影到矩阵A的列空间中,这样,我们可以求得一个近似的解,得到如下公式
A
T
A
X
^
=
A
T
b
(1)
A^TA\hat{X} = A^Tb\tag{1}
ATAX^=ATb(1)
- 我们假设
A
T
A
可逆,
A^TA可逆,
ATA可逆,可得到解为:
X ^ = ( A T A ) − 1 A T b (2) \hat{X}=(A^TA)^{-1}A^Tb\tag{2} X^=(ATA)−1ATb(2) - 那么可以得到向量b在矩阵A的列空间向量p表示如下:
p = A ( A T A ) − 1 A T b (3) p=A(A^TA)^{-1}A^Tb\tag{3} p=A(ATA)−1ATb(3) - 由上可以看出,我们将矩阵
P
=
A
(
A
T
A
)
−
1
A
T
P=A(A^TA)^{-1}A^T
P=A(ATA)−1AT代入可得:
p = P b (4) p=Pb\tag{4} p=Pb(4) - 我们发现,向量b为不在矩阵A的列空间中的向量,p为向量b通过投影矩阵P转换后的向量。并且向量p是在矩阵A的列空间中。
1.2 投影向量
对于任意向量b来说,我们可以通过正交分解,将向量b分解到两个垂直的向量空间中,我们考虑两个极端的情况下
- 假设向量b在矩阵A的列空间中,那么向量b通过投影矩阵P的转换,还是得到其本身
P b = b (5) Pb=b\tag{5} Pb=b(5) - 假设向量b在垂直于矩阵A的列空间中,那么向量b通过投影矩阵P的转换,得到的将是零向量
P b = 0 (6) Pb=0\tag{6} Pb=0(6)
那么我们思考下,什么向量空间是垂直于矩阵A的列空间的呢?我们之前学过矩阵A的四个子空间,分别是
- Row(A) —> 矩阵A的行空间;2.Colum(A) —> 矩阵A的列空间
- N(A) —> 矩阵A的零解空间;4.
N
(
A
T
)
N(A^T)
N(AT) —> 矩阵
A
T
A^T
AT的零解空间
我们可以将 A T A^T AT按列向量拆解得到如下
A T = [ a 1 T a 2 T ⋮ a n T ] ; [ a 1 T a 2 T ⋮ a n T ] [ y 1 y 2 … y n ] = 0 (7) A^T=\begin{bmatrix}a_1^T\\\\a_2^T\\\\\vdots\\\\a_n^T \end{bmatrix};\begin{bmatrix}a_1^T\\\\a_2^T\\\\\vdots\\\\a_n^T \end{bmatrix}\begin{bmatrix}y_1&y_2&\dots&y_n\end{bmatrix}=0\tag{7} AT= a1Ta2T⋮anT ; a1Ta2T⋮anT [y1y2…yn]=0(7)
- 由上述可以看出,
A
T
A^T
AT的零解空间是垂直于矩阵A的列空间的,所以我们可以将任意向量b 通过正交分解为一部分投影在列空间的向量p,另一部分投影在
A
T
A^T
AT的零解空间中的e
p = P b e = ( I − P ) b (8) p=Pb\\\\e=(I-P)b\tag{8} p=Pbe=(I−P)b(8)
2. 线性回归
3. 直线拟合
假设我们有3个点,分别为A(1,1),B(2,2),C(3,2),需要拟合一个直线,如何保证 |AX-b|的值最小?
- 由上述两图可以看出,同样一个线性回归问题,左边可以用坐标图表示,右边可以用向量的形式表示,它们是同一问题的不同表现形式。
- 定义拟合直线为 Y = C + D X Y=C+DX Y=C+DX,A,B,C在直线l上的拟合点用p1,p2,p3表示
C + D = 1 C + 2 D = 2 C + 3 D = 2 (9) C+D=1\\\\C+2D=2\\\\C+3D=2\tag{9} C+D=1C+2D=2C+3D=2(9)
- 矩阵形式如下:
[ 1 1 1 2 1 3 ] [ C D ] = [ 1 2 2 ] ⇒ A X = b (10) \begin{bmatrix}1&1\\\\1&2\\\\1&3\end{bmatrix}\begin{bmatrix}C\\\\D\end{bmatrix}=\begin{bmatrix}1\\\\2\\\\2\end{bmatrix}\Rightarrow AX=b\tag{10} 111123 CD = 122 ⇒AX=b(10) - 那么每个点关于拟合点的误差为
e 1 = C + D − 1 e 2 = C + 2 D − 2 e 3 = C + 3 D − 2 (11) e_1=C+D-1\\\\e_2=C+2D-2\\\\e_3=C+3D-2\tag{11} e1=C+D−1e2=C+2D−2e3=C+3D−2(11) - 目前我们的目的是找到最优的
X
^
\hat{X}
X^:
X ^ = [ C ^ D ^ ] \hat{X}=\begin{bmatrix}\hat{C}\\\\\hat{D}\end{bmatrix} X^= C^D^ - 可得方程组表示如下:
A T A X ^ = A T b ; A = [ 1 1 1 2 1 3 ] (12) A^TA\hat{X}=A^Tb;A=\begin{bmatrix}1&1\\\\1&2\\\\1&3\end{bmatrix}\tag{12} ATAX^=ATb;A= 111123 (12) - 整理可得如下:
[ 3 6 6 14 ] [ C ^ D ^ ] = [ 5 11 ] \begin{bmatrix}3&6\\\\6&14\end{bmatrix}\begin{bmatrix}\hat{C}\\\\\hat{D}\end{bmatrix}=\begin{bmatrix}5\\\\11\end{bmatrix} 36614 C^D^ = 511 - 求解的得到
C
^
,
D
^
\hat{C},\hat{D}
C^,D^:
C ^ = 2 3 , D ^ = 1 2 ; ⇒ Y = 2 3 + 1 2 X (13) \hat{C}=\frac{2}{3},\hat{D}=\frac{1}{2};\Rightarrow Y=\frac{2}{3}+\frac{1}{2}X\tag{13} C^=32,D^=21;⇒Y=32+21X(13) - 代入可得
p
1
,
p
2
,
p
3
p_1,p_2,p_3
p1,p2,p3
p 1 = ( 1 , 7 6 ) ; p 2 = ( 2 , 10 6 ) ; p 3 = ( 3 , 13 6 ) ; e 1 = 7 6 − 1 = 1 6 − − − − − − − − e 2 = 10 6 − 2 = − 2 6 − − − − − − − − e 3 = 13 6 − 2 = 1 6 (14) p_1=(1,\frac{7}{6});p_2=(2,\frac{10}{6});p_3=(3,\frac{13}{6});\\\\e_1=\frac{7}{6}-1=\frac{1}{6}\\\\--------\\\\e_2=\frac{10}{6}-2=\frac{-2}{6}\\\\--------\\\\e_3=\frac{13}{6}-2=\frac{1}{6}\tag{14} p1=(1,67);p2=(2,610);p3=(3,613);e1=67−1=61−−−−−−−−e2=610−2=6−2−−−−−−−−e3=613−2=61(14)
e = [ − 1 6 2 6 − 1 6 ] ; b = [ 1 2 2 ] ; p = [ 7 6 10 6 13 6 ] (15) e=\begin{bmatrix}-\frac{1}{6}\\\\\frac{2}{6}\\\\-\frac{1}{6}\end{bmatrix};b=\begin{bmatrix}1\\\\2\\\\2\end{bmatrix};p=\begin{bmatrix}\frac{7}{6}\\\\\frac{10}{6}\\\\\frac{13}{6}\end{bmatrix}\tag{15} e= −6162−61 ;b= 122 ;p= 67610613 (15) - 我们发现如下数据,线性回归方程的方法和向量结果:
[ 1 2 2 ] = [ − 1 6 2 6 − 1 6 ] + [ 7 6 10 6 13 6 ] ⇒ b = e + p (16) \begin{bmatrix}1\\\\2\\\\2\end{bmatrix} = \begin{bmatrix}-\frac{1}{6}\\\\\frac{2}{6}\\\\-\frac{1}{6}\end{bmatrix} + \begin{bmatrix}\frac{7}{6}\\\\\frac{10}{6}\\\\\frac{13}{6}\end{bmatrix} \Rightarrow b=e+p\tag{16} 122 = −6162−61 + 67610613 ⇒b=e+p(16)
结论: b = e + p (17) 结论 :b=e+p\tag{17} 结论:b=e+p(17)
[ − 1 6 2 6 − 1 6 ] [ 7 6 10 6 13 6 ] ⇒ e T p = 0 (18) \begin{bmatrix}-\frac{1}{6}&\frac{2}{6}&-\frac{1}{6}\end{bmatrix} \begin{bmatrix}\frac{7}{6}\\\\\frac{10}{6}\\\\\frac{13}{6}\end{bmatrix} \Rightarrow e^Tp=0\tag{18} [−6162−61] 67610613 ⇒eTp=0(18)
结论: e ⊥ p (19) 结论 :e \perp p\tag{19} 结论:e⊥p(19) - 向量e与A的列空间关系
[ 1 1 1 2 1 3 ] [ − 1 6 2 6 − 1 6 ] = [ 0 0 ] (20) \begin{bmatrix}1&1\\\\1&2\\\\1&3\end{bmatrix}\begin{bmatrix}-\frac{1}{6}\\\\\frac{2}{6}\\\\-\frac{1}{6}\end{bmatrix} =\begin{bmatrix}0\\\\0\end{bmatrix}\tag{20} 111123 −6162−61 = 00 (20)
结论: e ⊥ 矩阵 A 的列空间 (21) 结论 :e \perp 矩阵A的列空间\tag{21} 结论:e⊥矩阵A的列空间(21)
真神奇!!!!
4. A^TAX=0
假设我们给定条件为 矩阵A有n个线性无关的列向量, A T A X = 0 A^TAX=0 ATAX=0 如何证明 A T A A^TA ATA可逆?
- 将等式两边同时乘以
X
T
X^T
XT:
X T A T A X = X T ∗ 0 = 0 ⇒ ( A X ) T A X = 0 (22) X^TA^TAX=X^T*0=0 \Rightarrow (AX)^TAX=0\tag{22} XTATAX=XT∗0=0⇒(AX)TAX=0(22)
可以得到AX=0,由于矩阵A有n个线性无关的列向量,所以X必须为零向量;
A T A X = 0 中 X 必须为零向量,所以 A T A 可逆!!! A^TAX=0中X必须为零向量,所以A^TA可逆!!! ATAX=0中X必须为零向量,所以ATA可逆!!!