申明: 仅个人小记
既定事实,
- 对于任意规格mXn矩阵
A,
ATA为n*n规格的实对称矩阵。
- 实对称矩阵必然存在n个线性无关的相互正交的单位特征向量
- 正交矩阵的逆矩阵等于正交矩阵的转置
-
r(ATA)=r(A)=k,(k≤min{m,n}),即
ATA的非零特征值的个数为k(重根分开计数)
- 易知恒有
ATA的特征值
λi≥0,将特征值按降序排为
λ1,λ2,,,λk,λk+1,,,λn,其中
λk,λk+1,,,λn皆为零值。
推导开始
ATA的n个n维度线性无关的相互正交的单位特征向量,记为
v1
,v2
,...,vn
所以有,
ATAvi
=λivi
={λivi
,0
,i≤ki>k
vi
⋅vj
=0,(i̸=j)以及vi
⋅vi
=1所以下面只讨论非零特征值部分,
vj
⋅ATAvi
=vj
⋅λivi
,(i,j≤k)
进而有,
vj
TATAvi
=λvj
⋅vi
,(i,j≤k)显然,
(Avj
)T⋅(Avi
)=λi⋅{0,1,i̸=ji=j
即,
(Avj
)⋅(Avi
)={0,λi,i̸=ji=j,(i,j≤k)
即得,
∣Avi
∣=λ
i且Avi
⊥Avj
说明,
Av1
,Av2
,...,Avk
是一组m维度列向量的正交基。
进而我们将这组正交基正规化,即化为每个向量都变为模为1的向量,即
∣Av1
∣Av1
,∣Av2
∣Av2
,...,∣Avk
∣Avk
即,
λ1
Av1
,λ2
Av2
,...,λk
Avk
,
记作,
u1
,u2
,...,uk
,(注意:ui
是m维的列向量)因为
k≤m,且
ui
是m维度的,所以可以补充m维正交向量,使得
u1
,u2
,,,um
为m个m维度的正交向量组。
此处梳理下,以上的推导结果为
ui
⋅uj
={0,1,i̸=ji=j,(i,j≤m)
Avi
=ui
λi
,(i,j≤k)
所以有,
A(v1
,v1
,...,vn
)
=(u1
,u2
,...,um
)⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡λ1
λ2
.λk
0.0⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤
=UΣ
其中
Σ为m*n的矩阵。又因为,
[v1
,v1
,...,vn
] 是正交矩阵,所以必然有
[v1
,v1
,...,vn
]−1=[v1
,v1
,...,vn
]T
所以,
A=(u1
,u2
,...,um
)⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡λ1
λ2
.λk
0.0⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤[v1
,v1
,...,vn
]−1
即,
A=(u1
,u2
,...,um
)⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡λ1
λ2
.λk
0.0⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤[v1
,v1
,...,vn
]T
记作,
A=UΣVT
U的规格:mm,
Σ 规格:mn, V规格: n*n
补充
证明矩阵U的列向量是
AAT的单位特征向量
AATui
=AATλi
Avi
=Aλi
ATAvi
=Aλi
λivi
=λiλi
Avi
=λiui
即,
AATui
=λiui
,
又因为,
ui
⋅ui
=1
所以,
ui
是
AAT的单位特征向量。