Notations:
(1)Diag(x)表示以矢量为矩阵对角线元素构成对角阵,如Diag(a,b)=(a00b);
(2)粗体符号表示矩阵或者矢量,如x表示矢量,A表示矩阵。
特征值与特征向量
矩阵的乘法对应着一种线性变换使得原向量在方向和长度上发生变化,比如f(x)=Ax(x∈Rn,A∈Rm×n),f表示从Rn空间到Rm空间的一种线性映射关系。我们考虑A是方阵的情况。
y=Ax(1)
其中
y∈Rm。矩阵
A与向量
x相乘,表示对
x进行一次方向和长度上的变换,即向量
y。
例如:
A=(a11,a12a21,a22),
x=(b1,b2)T,则
y=(a11b1+a12b2a21b1+a22b2)(2)
|x|=b21+b22−−−−−−√, |y|=(a11b1+a12b2)2+(a21b1+a22b2)2−−−−−−−−−−−−−−−−−−−−−−−−−−−√ ∠(x,y)=cos−1b1(a11b1+a12b2)+b2(a21b1+a22b2)|x||y|
问题:对于线性变换矩阵
A,是否存在这样一个向量
ξ, 经过这种特定的变换之后保持方向不变,只是进行长度上的拉伸,即使得
∠(ξ,y)=0, |y|=|λ||ξ|。
定义:设A是n阶方阵,如果数λ和n维非零列向量x满足
Ax=λx(3)
称
λ是矩阵
A的特征值,
x是矩阵
A对应
λ的特征向量[1]。
根据上面的描述,我们知道,
特征向量就是这样一个满足经过线性变换阵A之后,只发生长度上变换,方向不变的向量。那我们为什么求这样的特征值与特征向量呢?可以这样理解,对于一个实际的线性系统,其特性可以用矩阵A来描述,对于输入向量x,系统输出为y会出现相位滞后、放大或者缩小等现象,而对于输入为特征向量ξ,该系统的输出只发生缩放,没有相位的变化。
设
ξi是矩阵对应于
λi的特征值,则有
Aξi=λiξi⇒(Aξ1,⋯,Aξn)=(λ1ξ1,⋯,λnξn)⇒A(ξ1,⋯,ξn)=(ξ1,⋯,ξn)⎛⎝⎜⎜⎜⎜⎜λ1λ2⋱λn⎞⎠⎟⎟⎟⎟⎟(4)(5)(6)
令
P=(ξ1,⋯,ξn),
Λ=Diag(λ1,⋯,λn)则有
AP=PΛ(7)
因此,矩阵
A对角化的问题就等价于方阵
P是否可逆,即
A是否有
n个线性无关的特征向量。矩阵
A有
n个线性无关的特征向量有两种情况
(1)
n阶方阵
A有
n个不同的特征值,对应有
n线性无关的特征向量。
(2)
n阶方阵
A有重根情况,且对应
k重根特征值
λ,有
n−rank(A−λI)=k。
注意,并不是任意的矩阵都可以相似对角化。以下针对
P可逆的情况,那么有
A=PΛP−1(8)
进一步的,若
P是一个正交矩阵,即
A=PΛPT=∑i=1nλiξiξT(9)
也就是说,
A矩阵可以由特征向量线性组合进行表示。
奇异值分解
矩阵的特征值分解仅仅是针对方阵的,对于长方形矩阵A∈Rm×n,也存在着类似的分解,称奇异值分解[2]。
定义:设矩阵A∈Rm×n,且rank(A)=r,则存在m阶正交矩阵V和n阶正交矩阵U,使得
A=VΣUT(10)
其中
Σ=(Λ0(m−r)×r0(r)×(n−r)0(m−r)×(n−r)),其中
Λ=Diag(σ1,σ2,⋯,σr),并且
σ1≥σ2⋯≥σr≥0。
证:因为
rank(A)=r,因此设
ATA的特征值为
σ21≥⋯,≥σ2r≥0,σ2r+1=σ2n=0(11)
由于
ATA是对称矩阵,因此必可以相似对角化[1],即存在正交矩阵
U,使得
UTATAU=Diag(σ21,⋯,σ2r,0,⋯,0n−r)(12)
记
U=[U1,U2],其中
U1是一个
n×r的矩阵,
U2是一个
n×(n−r)的矩阵。因此,上式可以写为
ATA[U1,U2]=[U1,U2](Λ2000)(13)
则有
ATAU1=U1Λ2,ATAU2=0(14)
记
V=[V1,V2],其中
V1是
m×r矩阵,
V2是
m×(m−r)矩阵
ATAU1=U1Λ2 ⇒ATAU1Λ=U1Λ(15)
令
V1=AU1Λ−1,有
VT1V1=(AU1Λ−1)TAU1Λ−1=Σ−1UT1ATAU1Σ−1=Λ−1Σ2Λ−1=Ir(16)(17)(18)(19)
即
V1是列正交规范化矩阵。取
V2,使得
V=[V1,V2]是正交矩阵,因此
V2AU1=VT2V1Λ=0(20)
那么
VTAU=(VT1VT2)A[U1,U2]=(VT1AU1V2AU1,VT1AU2VT2AU2)=(Λ000)(21)
即
A=VΣUT(22)
Pseudo逆矩阵
令A=VΣUT是矩阵A∈Rm×n的奇异值分解,且rank(A)=r,定义矩阵A的pseudo逆为
A+=UΣ−1VT∈Rn×m(23)
也称为Moore-Penrose广义逆矩阵。另外一种表达式是
A+=(ATA)−1AT=AT(AAT)−1(24)
可以很容易证明两种表达式是等价的,我们可以从长方形矩阵的奇异分解来解释第二个式子表达式的合理性。当
m>n时,采用
A+=(ATA)−1AT;当
m<n时,通常采用
A+=AT(AAT)−1。
参考文献
[1] 同济大学数学系, 线性代数[M].北京: 高等教育出版社, 2012.
[2] 戴华, 矩阵论[M].北京: 科学出版社, 2015.