MIT 18.06 linear algebra 第三十讲笔记
- Singular value Decomposition ⇒SVD
- A=UΣVT Σ is diagonal U,V is Orthogonal
对称的正定矩阵A,可以被写为A=QSQT。正定矩阵的这种分解其实就是SVD分解的一种特例。而SVD分解并不需要U和V相等。

在上图中在行空间中选择一个单位向量v1,然后在列空间中使得存在单位向量u1满足σ1u1=Av1。其中的σ1是一个数字,表示他们之间的数量关系。在找一个与v1正交的单位向量v2,然后使得在列空间中存在一个与u1正交的单位向量u2满足σ2u2=Au2。通过史密斯正交法就可以找到一组标准正交的单位向量。
用矩阵表示也就是:
A[v1v2⋯vrvr+1vn]=
[u1u2⋯urur+1um]⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢σ1σ2⋱σr0⋱0⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥=
AV=UΣ
需要对上面的矩阵做一下说明,其中v1,v2,⋯,vr是矩阵A行空间的一组标准正交基。如果矩阵A不是列满秩的话,需要增加矩阵A零空间的一组标准正交基。同理u1,u2,⋯,ur是列空间的一组标准正交基,如果矩阵A不是行满秩的话,需要用AT的零空间中的一组标准正交基来填充。其中vr+1,⋯,vn是N(A)的一组标准正交基,ur+1,⋯,um是N(AT)的一组标准正交基思考一下就会知道,如果存在零空间了,那么就需要找出零空间的一组标准正交基,那么Avi就会得到零,那么零就会出现在对角阵Σ的末尾。
求解时,A=UΣV−1=UΣVT,那么ATA=VΣTUTUΣV=
V⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢⎢σ21σ22⋱σ2r0⋱0⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥⎥VT。
看到这里是否会突然联想到ATA=QΛQT。对于ATA对应的是正定或者至少半正定矩阵。ATA可以应对长方形矩阵。
例子
A=[4−343],可以看出这个矩阵是可逆的,因此设行空间的标准正交基为v1,v2,u1,u2为列空间的标准正交基。满足Av1=σ1u1和Av2=σ2u2。
ATA=[257725],因此解出特征值为32和18,特征向量分别为⎡⎣12√12√⎤⎦和⎡⎣12√−12√⎤⎦,由于求出了矩阵V相应的矩阵U其实也就确定了,不能随便选取。u1=[10],u2=[0−1],可以代进去算一下,是正确的A=UΣVT。
我们可以通过AAT的方法来计算U,AAT=UΣVTVΣTUT=UΣ2UT。
AAT与ATA的特征值是相同的,假设ATAx=λx,有AATAx=λAx。
例子2
矩阵A=[4836],此时行空间与列空间只是一维的因此需要添加零空间的正交基来补全。

此时对角阵就会出现用零填充的情况。按照上面的逻辑计算即可。