前言:这篇blog是《
Linear Algebra and Its Applications》第六章的一些学习笔记。
正定矩阵
这一章要用到对实对称矩阵A的三角分解A=LDLT,以及谱定理A=QΛQT
1. 正定矩阵
对任意非零实向量x,有xTAx>0,则A为正定矩阵。
在线性代数中,正定矩阵是对称矩阵,因为来自二次型;对任一二次型,总可以写成对称矩阵的形式,即f(x1,x2…xn)=xTAx=i=1∑nj=1∑naijxixj
如果A是正定矩阵,则xTAx表示的二次型有最小值,不存在鞍点。
但在矩阵论中,正定矩阵不一定是对称矩阵,例如[11−10]
1.1. 实对称矩阵是正定矩阵的充要条件
判断实对称矩阵A是否为正定矩阵,有5个充要条件,只要满足其中一个即可。
- xTAx>0,对所有非零实向量x均成立;
- A的所有特征值λi满足λi>0;
- 所有顺序主子式Ak是正的;
- 所有主元(piovts)大于0(最快捷条件);
- A能分解成RTR,其中R的列向量相互独立。
证明:
条件1:定义,证毕。
条件2⟺条件1:对A进行分解,A=QΛQT,有xTAx=xTQΛQTx,令xTQ=yT,则xTAx=yTΛy=i=1∑nλiyi2,根据条件1,如果实对称矩阵A是正定矩阵,则任意非零向量x,xTAx恒大于0,所以i=1∑nλiyi2恒大于0,所以λi>0,证毕。
条件1和2⟹条件3:对于实对称矩阵A,以证明A3为例,令x=[x1,x2,x3,0,0,0,…]T,则xTAx等价于[x1,x2,x3]⎣⎡a11a21a31a12a22a32a13a23a33⎦⎤⎣⎡x1x2x3⎦⎤(1)
根据条件1,如果实对称矩阵A是正定矩阵,则xTAx>0,所以(1)的中间矩阵也应该是正定矩阵,根据条件2,(1)的中间矩阵的所有特征值大于0,所以A3=(1)的中间矩阵的所有特征值乘积>0证毕。方阵的行列式等于所有特征值乘积,在第五章特征值与特征向量中推导过这一结论。
条件3⟹条件4:以d3为例,d3=A2A3>0,证毕。关于求d3用的表达式,在第四章行列式中推导过。
条件4⟹条件1,对A进行三角分解A=LDLT,则xTAx=xTLDLTx,令y=LTx,则xTAx=yTDy,对角矩阵D存的是A的主元(pivots),所以yTDy=i=1∑ndiyi2>0可以推出xTAx>0
至此,条件1-4相互均可以推导。
条件5⟺条件4:A=LDLT=(LD)(DLT)=RTR,其中R=DLT;或者条件5⟺条件2:A=QΛQT=(QΛ)(ΛQT)=RTR,其中R=ΛQT
1.2. 实对称矩阵是半正定矩阵的充要条件
半正定矩阵就是对任意非零实向量x,有xTAx≥0,相对正定矩阵多了等于0;相应的充要条件也加上了等号。
- xTAx≥0,对所有非零实向量;
- A的所有特征值λi满足λi≥0;
- 所有顺序主子式Ak是≥0的;
- 所有主元piovts≥0(最快捷条件);
- A能分解成RTR,其中R的列向量相互独立。
证明:考虑A+εI正定,当ε>0。
1.3. 实对称矩阵与正定矩阵的分解
实对称矩阵不一定可以三角分解A=LDLT,但可以A=QΛQT分解,正定矩阵两种分解都可以。
A=LDLT与A=QΛQT本质上都是二次型配方。
2. 惯性定理
2.1. 合同变换
对于对称方阵A,B,存在可逆矩阵C,使得B=CTAC,则A,B相合。合同变换本质上是对实对称矩阵的分类(上一章提到过,相似变换本质上是对方阵的分类)。
2.2. 惯性定理
对于一个n阶实对称矩阵A,与它合同的实对称矩阵有多个,这些实对角矩阵的对角元中,正数的个数是一定的(叫A的正惯性指数),负数的个数也是一定的(叫A的负惯性指数)。
证明略。
实际使用时,如果A是对称方阵,用三角分解A=LDLT即可,因为A,D,Λ三者相合。
2.3. 惯性定理的推论
任何一个实对称矩阵可以相合到由若干1,若干-1,若干0组成的对角矩阵,即由相合条件约束的某一类实对称矩阵均可相合到该对角矩阵。
证明:
对实对称矩阵A进行分解A=QΛQT,所以A与Λ相合,不妨设Λ中λ1…λm是正特征根,λm+1…λi是负特征根,λi+1…λn是零特征根,则Λ=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡λ1⋱λm⋱λi⋱λn⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤=⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡λ11⋱λm1⋱−λi1⋱0⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤×⎣⎢⎢⎢⎢⎢⎢⎢⎢⎡1⋱1⋱−1⋱0⎦⎥⎥⎥⎥⎥⎥⎥⎥⎤×⎣⎢⎢⎢⎢⎢⎢⎢⎢⎢⎡λ11⋱λm1⋱−λi1⋱0⎦⎥⎥⎥⎥⎥⎥⎥⎥⎥⎤=CTBC
故Λ与B相合,故A与B相合。证毕。
2.4. 惯性定理的应用
通过A−nI限定实对称矩阵A的特征根区间,例如:A−3I有2正特征根,A−5I只有1个正特征根,则A有一个特征根在(3,5)之间。
这里用到了A−nI的特征值,相对于A的特征值也减去n的推论,证明如下:
Ax=λx,(A−3I)x=λ′x
所以
Ax=(λ′+3)x
所以λ′=λ−3
3. 奇异值分解
3.1. SVD
对矩阵Am×n,其秩r=rank(A),则其奇异值分解(Singular Value Decomposition, SVD)表示为A=UΣV=(正交矩阵)m×m(对角矩阵)m×n(正交矩阵)n×n
其中U的列向量由AAT的特征向量构成;V的列向量由ATA的特征向量构成;Σ的对角元素的前r个被称为奇异值,是AAT或者ATA的特征值平方根,其余元素为0。
证明依赖于谱定理,在有了求对称方阵特征根高效算法后,才有了SVD。
证明:
证明分六步进行
- ATA一定是对称方阵
又ATAx=λx,左乘上xT
xTATAx=λxTx=(Ax)TAx≥0
故λ≥0
故ATA至少是半正定矩阵
- 由谱定理ATA=V⎣⎢⎢⎢⎢⎢⎢⎡σ12⋱σr20⋱0⎦⎥⎥⎥⎥⎥⎥⎤VT=[v1,v2…vn]⎣⎢⎢⎢⎢⎢⎢⎡σ12⋱σr20⋱0⎦⎥⎥⎥⎥⎥⎥⎤⎣⎢⎢⎢⎡v1Tv2T⋮vnT ⎦⎥⎥⎥⎤
其中1≤i≤r时,σi>0,当r<i≤n时,σi=0。
所以,ATAvi=σi2vi,0≤i≤r
由于∣∣Avi∣∣2=(Avi)T(Avi)=viTATAvi=viTσi2vi=σi2
故∣∣Avi∣∣=σi
- 令ui=σiAvi,1≤i≤r
则ui是A的列空间的单位向量。对于i̸=j有Avi=uiσiAvj=ujσj则(Avi)TAvj=σiσjuiTuj
左边=viTATAvj=viTσj2vj=0=σiσjuiTuj=右边
由于σi,σj̸=0,则uiTuj=0
故u1,u2…ur相互正交,是A的列空间的标准正交基。
- 扩充u1,u2…ur到u1,u2…ur,ur+1…um为Rm的标准正交基,则
u1,u2…ur是A列空间C(A)的标准正交基;
ur+1,ur+2…um是A左零空间N(AT)的标准正交基;
- 逐列来看
1≤i≤r时,σi>0,Avi=uiσi;
r<i≤n时,σi=0,Avi=0=ui⋅0。
- 故AV=UΣ,所以A=UΣVT
3.2. SVD的本质
逐列来看AU=ΣV, 1≤i≤r时,σi>0,Avi=uiσi;r<i≤n时,σi=0,Avi=0=ui⋅0。则
u1,u2…ur是A列空间C(A)的标准正交基;
ur+1,ur+2…um是A左零空间N(AT)的标准正交基;
vr+1,vr+2…vn是A零空间N(A)的标准正交基;
v1,v2…vr是A行空间C(AT)的标准正交基;
可见,SVD是C(AT)到C(A)的极简极优美映射,当1≤i≤r
A[v1…vr]=[u1…ur]⎣⎡σ1⋱σr⎦⎤即两个子空间标准正交基的极简极优美变换。
3.3. 求SVD
- 求ATA的σ,v,注意实对称矩阵属于不同特征根的特征向量正交;
- 由Avi=uiσi求出ui;
- 有Gram-Schmidt求ur+1…um。
可见SVD的结果严重不唯一,但是奇异值是唯一的。
3.4. SVD的应用-伪逆
求解线性方程组Am×nx=b
- 当b在C(A),由第二章,利用高斯消去法,解方程,就和我们解多元一次方程组一样;
- 当b不再C(A),且A列满秩,则Rn就是C(AT),利用第三章的最小二乘法,把b向C(A)投影,在把这个投影点反向映射到C(AT),得到误差最小的解;
AT(Ax−b)=0⟹x=(ATA)−1ATb
- 当b不再C(A),且A列不满秩,dim(Rn)=dim(C(AT))+dim(N(A)),Rn相对于C(AT)与N(A)是更高维,把b向C(A)投影,在把这个投影点反映射到C(AT)得到反向映射点,这个反向映射点加上N(A)中任意一个点都是误差最小解,此时最小二乘法得到的误差最小解不唯一,我们可以利用伪逆求得最短最简单的误差最小解,也就是反向映射点加上N(A)中的全零点。
伪逆利用SVD定义,如果A=UΣVT,则A的伪逆定义为A+=VΣ+UT
其中Σ+表示对Σ进行转置后,奇异值取倒数。
则Ax=b的最短最简单误差最小解就是x+=A+bA+b的意义是把b投影到C(A)中,在映射到C(AT)。
下面是伪逆求解最短最简单的误差最小解的证明。
- 先证明A是对角阵的情况,以A3×4,r(A)=2为例,求最短最简单的误差最小解x
当b∈C(A)有
⎣⎡σ1000σ20000000⎦⎤⎣⎢⎢⎡x1x2x3x4⎦⎥⎥⎤=⎣⎡b1b20⎦⎤则 x1=σ1b1,x2=σ2b2
定义伪逆
A+=⎣⎢⎢⎡σ110000σ21000000⎦⎥⎥⎤
则x=A+⎣⎡b1b20⎦⎤得到最短最简单的误差最小解。
当b∈/C(A)时,b=⎣⎡b1b2b3⎦⎤,仍按照上面的伪逆,仍然可以求得最短解,同时也是误差最小的解x=A+⎣⎡b1b2b3⎦⎤=⎣⎢⎢⎡σ1b1σ2b200⎦⎥⎥⎤
- 如果A不是对角阵,则我们可以化成对角阵的形式,回到我们的根本目的,利用最小二乘法的想法求误差最小解,最小化∣∣Ax−b∣∣,则∣∣Ax−b∣∣=∣∣UΣVTx−b∣∣=∣∣U(ΣVTx−UTb)∣∣=∣∣ΣVTx−UTb∣∣最后一个等号转换用到了,正交变换不改变长度的性质。令y=VTx,则x=Vy,进一步化简∣∣Ax−b∣∣=∣∣ΣVTx−UTb∣∣=∣∣Σy−UTb∣∣此时Σ是对角矩阵,回到了情况1,我们得到y的最短最简单的误差最小解是y+=Σ+UTb由于x=Vy同样是正交变换,不改变长度,进而得到x的最短最简单的误差最小解是x+=Vy+=VΣ+UTb证毕。
值得一提的是,AA+与A+A均可看成投影矩阵,AA+b把b向C(A)投影,A+Aa把a向C(AT)投影。