05:矩阵分解

本文最后更新于:2023年10月8日 下午

05:矩阵分解

1 λ\lambda-矩阵

1.1 定义

定义:我们记aij(λ)=λn+λn1++1a_{ij}(\lambda) = \lambda^n+\lambda^{n-1}+\cdots+1是数域F上的多项式,则矩阵

A(λ)=[a11(λ)a12(λ)a1n(λ)a21(λ)a22(λ)a2n(λ)am1(λ)am2(λ)amn(λ)]A(\lambda) = \begin{bmatrix} a_{11}(\lambda) & a_{12}(\lambda) & \cdots & a_{1n}(\lambda) \\ a_{21}(\lambda) & a_{22}(\lambda) & \cdots & a_{2n}(\lambda) \\ \vdots & \vdots & \ddots & \vdots \\ a_{m1}(\lambda) & a_{m2}(\lambda) & \cdots & a_{mn}(\lambda) \end{bmatrix}

叫做λ\lambda矩阵aij(λ)a_{ij}(\lambda)中次数最高的多项式称为A(λ)A(\lambda)的次数

定义λ\lambda矩阵中有一个r阶子式不为0,所有r+1r+1阶子式都是0,则矩阵的秩为r,显然0矩阵的秩为0

定义:对于λ\lambda矩阵A(λ)A(\lambda),当存在一个n阶λ\lambda矩阵B(λ)B(\lambda),使得A(λ)B(λ)=B(λ)A(λ)=EA(\lambda)B(\lambda) = B(\lambda)A(\lambda)=E,则B(λ)B(\lambda)A(λ)A(\lambda),记作A1(λ)A^{-1}(\lambda)。对于一般矩阵的行列式判断是否可逆的方法在λ\lambda矩阵中也可用。

定义:矩阵A(λ)A(\lambda)初等变换是指

  1. 任两行(列)互换位置
  2. 非0常数c乘矩阵的某一行(列)
  3. 矩阵的某一行(列)的ϕ(λ)\phi(\lambda)倍加到另一行(列)上去,其中ϕ(λ)\phi(\lambda)是一个多项式

上述三个初等变换分别对应的三个初等矩阵记作

  • P(i,j)P(i, j)
  • P(i(c))P(i(c))
  • P(i,j(ϕ))P(i,j(\phi))

与一般矩阵的初等变换一样,左乘矩阵A(λ)A(\lambda)行变换右乘A(λ)A(\lambda)列变换

定义A(λ)A(\lambda)经有限次初等变换后变成B(λ)B(\lambda),则称A(λ)A(\lambda)B(λ)B(\lambda)等价,记作A(λ)B(λ)A(\lambda)\rightarrow B(\lambda)

不难得到上述矩阵等价的充要条件是存在两个可逆矩阵P(λ)P(\lambda)Q(λ)Q(\lambda),使得

B(λ)=P(λ)A(λ)Q(λ)B(\lambda) = P(\lambda)A(\lambda)Q(\lambda)

1.2 行列式因子、不变因子和初等因子

1.2.1 行列式因子

定义:对于一个λ\lambda矩阵,其秩为r,那么A存在很多个k阶非0子式,其中1kr1\leq k\leq r,即k最大取到其秩。对于A的每阶子式,我们将其行列式结果全部算出来,这些结果中最高次数项系数为1的最大公因子就称作A(λ)A(\lambda)行列式因子,记作Dk(λ)D_k(\lambda),表示第k阶的行列式因子。

由于0阶子式不存在,我们规定D0(λ)=1D_0(\lambda)=1,对于秩为r的矩阵A(λ)A(\lambda),其行列式因子有r个。

定理:等价的λ\lambda矩阵有相同的各阶行列式因子,也有相同的秩。

定理A(λ)A(\lambda)是n阶λ\lambda-矩阵,Dk(λ)D_k(\lambda)是其第k阶行列式因子,则Dk1(λ)Dk(λ)D_{k-1}(\lambda) | D_k(\lambda)。这个式子表示第k阶行列式因子能够整除第k1k-1阶的行列式因子。

1.2.2 不变因子

定义A(λ)A(\lambda)是n阶λ\lambda-矩阵,Dk(λ)D_k(\lambda)是其第k阶行列式因子,定义

dk(λ)=Dk(λ)Dk1(λ)k=1,2,,nd_k(\lambda) = \frac{D_k(\lambda)}{D_{k-1}(\lambda)}\quad k = 1,2,\dots,n

A(λ)A(\lambda)不变因子

定义:若秩为r的n阶矩阵A(λ)A(\lambda)等价于一个对角矩阵,

A(λ)D(λ)=[d1(λ)dr(λ)00]A(\lambda) \rightarrow D(\lambda) = \begin{bmatrix} d_1(\lambda) & & & & & \\ & \ddots & & & & \\ & & d_r(\lambda)& & & \\ & & &0 & & \\ & & & &\ddots & \\ & & & & & 0 \end{bmatrix}

其中dk1(λ)dk(λ)d_{k-1}(\lambda)|d_k(\lambda)di(λ)d_i(\lambda)最高次项系数为1,那么对角线上的di(λ)d_i(\lambda)就是A(λ)A(\lambda)的不变因子,而矩阵D(λ)D(\lambda)称为A(λ)A(\lambda)Smith标准型

定理:任意一个秩r0r\neq 0的n阶λ\lambda-矩阵A(λ)A(\lambda)总可以经过初等变换化为Smith标准型。

类似于一般的矩阵,λ\lambda矩阵有以下推论

  1. λ\lambda矩阵A(λ)A(\lambda)可逆的充要条件是A(λ)A(\lambda)与单位矩阵等价
  2. λ\lambda矩阵A(λ)A(\lambda)可逆的充要条件是A(λ)A(\lambda)可以表示成一系列初等矩阵的乘积

1.2.3 初等因子

定义:给出A(λ)A(\lambda)的不变因子,在复数域内因式分解这些初等因子,有

di(λ)=(λλ1)ei1(λλ2)ei2(λλs)eisd_i(\lambda) = (\lambda-\lambda_1)^{e_{i1}}(\lambda - \lambda_2)^{e_{i2}}\cdots(\lambda - \lambda_s)^{e_{is}}

其中λ1,λs\lambda_1, \lambda_s是不同的复数,eije_{ij}是非负整数。

注意到di(λ)di+1(λ)d_i(\lambda)|d_{i+1}(\lambda),即i+1i+1阶初等因子总能整除第i阶的,所以0ei1e(i+1)10\leq e_{i1}\leq e_{(i+1)1}, 0ei2e(i+1)20\leq e_{i2}\leq e_{(i+1)2}, …, 0eise(i+1)s0\leq e_{is}\leq e_{(i+1)s},即高阶的指数总是不低于上一阶对应的指数。

在上述式子中,所有指数大于0的因子(λλj)eij(\lambda-\lambda_j)^{e_{ij}}就称为矩阵的初等因子。一个矩阵A(λ)A(\lambda)的全部初等因子就叫做它的初等因子组

定理:n阶λ\lambda矩阵A(λ)A(\lambda)B(λ)B(\lambda)等价的充要条件是它们有相同的秩有相同的初等因子。

推论:设λ\lambda矩阵A(λ)=[B(λ)C(λ)]A(\lambda) = \begin{bmatrix}B(\lambda) & \\ & C(\lambda) \end{bmatrix}是分块的对角矩阵,则B(λ)B(\lambda)C(λ)C(\lambda)的初等因子的全体是A(λ)A(\lambda)的全部初等因子。这个推论可以推广到n个分块的情况下。

定义:对于一个一般的数字矩阵,其特征矩阵λEA\lambda E-A是一个n阶λ\lambda矩阵,则λEA\lambda E-A的行列式因子、不变因子、初等因子就称为数字矩阵A的行列式因子、不变因子、初等因子。

总结:行列式因子是各阶子式中最高次项为1的最大公因子,其中第0阶行列式因子是1.不变因子是行列式因子的高一阶除以低一阶,初等因子是不变因子因式分解后指数大于0的所有项。

2 Jordan矩阵

2.1 定义

定义:形如

Jm(λ)=[λ1λ1λ1λ]m×nJ_m(\lambda) = \begin{bmatrix} \lambda & 1 & & & \\ & \lambda & 1 & & \\ & & \ddots & \ddots \\ & & & \lambda & 1 \\ & & & & \lambda \end{bmatrix}_{m\times n}

的m阶方阵称为m阶Jordan块,其中λ\lambda是复数。当λ\lambda是某一矩阵A的特征值时,称Jm(λ)J_m(\lambda)为A的特征值λ\lambda的Jordan块

定义:由若干个Jordan块组成的分块对角矩阵

J=[Jm1(λ1)Jm2(λ2)Jms(λs)]J = \begin{bmatrix} J_{m_1}(\lambda_1) & & & \\ & J_{m_2}(\lambda_2) & & \\ & & \ddots & \\ & & & J_{m_{s}}(\lambda_s) \end{bmatrix}

称为Jordan矩阵,记mi=n\sum m_i = n,则J为n阶Jordan矩阵

2.2 矩阵与Jordan矩阵的相似

定理:给出矩阵ACn×nA\in C^{n\times n}λ1,,λσ\lambda_1,\dots,\lambda_\sigma时A的不同的特征值,我们算出λEA\lambda E-A的全部初等因子

{(λλ1)k11,(λλ1)k21,,(λλ1)ks11(λλ2)k12,(λλ2)k22,,(λλ2)ks22(λλσ)k1σ,(λλσ)k2σ,,(λλσ)ksσσ\begin{cases} (\lambda-\lambda_1)^{k_{11}}, (\lambda-\lambda_1)^{k_{21}},\dots,(\lambda-\lambda_1)^{k_{s_11}} \\ (\lambda-\lambda_2)^{k_{12}}, (\lambda-\lambda_2)^{k_{22}},\dots,(\lambda-\lambda_2)^{k_{s_22}} \\ \cdots \\ (\lambda-\lambda_\sigma)^{k_{1\sigma}}, (\lambda-\lambda_\sigma)^{k_{2\sigma}},\dots,(\lambda-\lambda_\sigma)^{k_{s_\sigma \sigma}} \end{cases}

注意到对于同一个特征值,k1i+k2i+,ksii=mik_{1i}+k_{2i}+\cdots, k_{s_ii}=m_i,角标i[1,σ]i\in [1,\sigma],其中mim_i是特征值λi\lambda_i的代数重复度,则存在可逆阵TT,使得A=TJT1A=TJT^{-1},即A与一个Jordan矩阵相似。这个相似的Jordan矩阵由一系列Jordan块构成,一个初等因子(λλi)kti(\lambda - \lambda_i)^{k_{ti}}就对应其中一个Jordan块,因子是ktik_{ti}次的,那么那个Jordan块就是kti×ktik_{ti}\times k_{ti}大小的,具体的构成是

Jkti(λi)=[λi1λi1λi1λi]kti×ktiJ_{k_{ti}}(\lambda_i)= \begin{bmatrix} \lambda_i & 1 & & & \\ & \lambda_i & 1 & & \\ & & \ddots & \ddots & \\ & & & \lambda_i & 1 \\ & & & & \lambda_i \end{bmatrix}_{k_{ti}\times k_{ti}}

将所有初等因子对应的Jordan块组合成Jordan矩阵就是矩阵A相似的Jordan阵。

给出矩阵A,其Jordan标准型的求法为

  1. 求出λEA\lambda E-A的Smith标准型,得到λEA\lambda E-A的全部初等因子
  2. λEA\lambda E-A的所有初等因子得到Jordan标准型的所有Jordan块
  3. 由Jordan块组成Jordan矩阵

2.2.1 求解相似的变换矩阵T

相似的等式是A=TJT1A = TJT^{-1}, 右乘T得到AT=TJAT=TJ。注意到我们已经得到了相似的Jordan阵,也有原矩阵A,那么未知的只是T。将T分块得到T=[t1,t2,,tn]T=[t_1,t_2,\dots,t_n], Jordan阵分块得到J=[j1,j2,,jn]J=[j_1,j_2,\dots,j_n],则有A[t1,t2,,tn]=[t1,t2,,tn][j1,j2,,jn]A[t_1, t_2,\dots,t_n]=[t_1,t_2,\dots,t_n][j_1,j_2,\dots,j_n], 整理得到

{At1=[t1,t2,,tn]j1At2=[t1,t2,,tn]j2Atn=[t1,t2,,tn]jn\begin{cases} At_1 = [t_1,t_2,\dots,t_n]j_1 \\ At_2 = [t_1,t_2,\dots,t_n]j_2 \\ \cdots \\ At_n = [t_1,t_2,\dots,t_n]j_n \\ \end{cases}

解出这个方程后选取适当的tit_i即可

2.2.2 推论与定理

定理:给出矩阵A相似于Jordan阵J,J中一个Jordan块是

Ji=[λ1λ1λ1λ]kJ_i = \begin{bmatrix} \lambda & 1 & & & \\ & \lambda & 1 & & \\ & & \ddots & \ddots & \\ & & & \lambda & 1 \\ & & & & \lambda \end{bmatrix}_k

若找到一组线性无关的向量ti,1,,ti,kt_{i,1},\dots,t_{i,k},使得A[ti,1,,ti,k]=[ti,1,,ti,k]JiA[t_{i,1},\dots,t_{i,k}]=[t_{i,1},\dots,t_{i,k}]J_i, 则称JiJ_i对应的线性无关向量是ti,1,,ti,kt_{i,1},\dots,t_{i,k}。此时下列命题成立。

  1. ti,kt_{i,k}(AλE)kx=θ(A-\lambda E)^kx=\theta的一个非0解,且(AλE)k1ti,kθ(A-\lambda E)^{k-1}t_{i,k}\neq \theta
  2. (AλE)jti,k=ti,kj(A-\lambda E)^jt_{i,k}=t_{i,k-j}, j[1,k1]j\in [1,k-1]
  3. ti,1t_{i,1}λ\lambda对应的一个特征向量
  4. 若矩阵A的特征值λ\lambda对应有a个无关的特征向量,则λ\lambda对应a个Jordan块。

定理:将Jordan标准型中每个Jordan块对应的线性无关的向量放在一起,它们是线性无关的。

2.2.3 数字型矩阵的Jordan标准型的变换矩阵T的求法

给出以下方阵

A=[308316205]A=\begin{bmatrix}3 & 0 & 8 \\3 & -1 & 6 \\-2 & 0 & -5\end{bmatrix}

求Jordan标准型和相似变换矩阵T

第一步:写出特征矩阵

λEA=[λ3083λ+1620λ+5]\lambda E-A = \begin{bmatrix} \lambda -3 & 0 & 8 \\ 3 & \lambda +1 & 6 \\ -2 & 0 & \lambda +5 \end{bmatrix}

第二步:用初等变换找出初等因子

λEA[1000λ+1000(λ+1)2]\lambda E-A \rightarrow \begin{bmatrix} 1 & 0 & 0\\ 0 & \lambda+1 & 0\\ 0 & 0 & (\lambda+1)^2 \end{bmatrix}

对角线上的不变因子分解后可得到初等因子有(λ+1)(\lambda+1), (λ+1)2(\lambda+1)^2

第三步:通过初等因子对应的Jordan块写出Jordan矩阵

[100011001]\begin{bmatrix} -1 & 0 & 0 \\ 0 & -1 & 1 \\ 0 & 0 & -1 \end{bmatrix}

接下来求变换矩阵T
第一步:设变换矩阵,写出等式
T=[t1,t2,t3]T=[t_1,t_2,t_3],有

AT=TJ[At1,At2,At3]=[t1,t2,t3][100011001]AT=TJ \Rightarrow [At_1,At_2,At_3] = [t_1,t_2,t_3] \begin{bmatrix} -1 & 0 & 0 \\ 0 & -1 & 1 \\ 0 & 0 & -1 \end{bmatrix}

得到

{At1=t1At2=t2At3=t2t3\begin{cases} At_1 = -t_1 \\ At_2=-t_2 \\ At_3=t_2-t_3 \end{cases}

第二步:整理得到线性方程组

{(E+A)t1=0(E+A)t2=0(E+A)t3=t2\begin{cases} (E+A)t_1 = 0 \\ (E+A)t_2 = 0 \\ (E+A)t_3 = t_2 \end{cases}

注意到前两个方程是同解的

第三步:求解齐次方程
注意到前两个方程都是齐次的,容易得到它们的解是

k1(0,1,0)T+k2(2,0,1)T=k1α1+k2α2k_1(0,1,0)^T+k_2(-2,0,1)^T=k_1\alpha_1+k_2\alpha_2

简单的取t1=α1t_1=\alpha_1

注意到t2t_2的值现在不能直接随意取解的系数k1k_1, k2k_2来确定,因为第三个方程还不确定有没有解,第三个方程是否有解是依赖于t2t_2的取值的,为了使第三个非齐次方程有解,我们先把t2t_2代入求出约束。

第四步:求非齐次方程
t2=k1α1+k2α2t_2 = k_1\alpha_1+k_2\alpha_2, 然后代入非齐次方程,得到(E+A)t3=k1α1+k2α2(E+A)t_3=k_1\alpha_1+k_2\alpha_2, 写出增广矩阵

(E+Ak1α+k2α2)=[4082k2306k1204k2](E+A\vert k_1\alpha+k_2\alpha_2)= \begin{bmatrix} 4 & 0 & 8 & -2k_2 \\ 3 & 0 & 6 & k_1 \\ -2 & 0 & -4 & k_2 \end{bmatrix}

前面解齐次方程知道(E+A)(E+A)的秩是1,所以增广矩阵的秩也应该是1,这样非齐次方程才有解。令k1=3k_1=3, k2=2k_2=-2, 增广矩阵的秩就是1,这个时候t2=(4,3,2)Tt_2=(4,3,-2)^T,然后带入非齐次方程得到一个特解t3=(1,0,0)Tt_3=(1,0,0)^T

第五步:拼接得到变换矩阵

T=[t1,t2,t3]=[041130020]T = [t_1,t_2,t_3] = \begin{bmatrix} 0 & 4 & 1 \\ 1 & 3 & 0 \\ 0 & -2 & 0 \end{bmatrix}

2.2.4 用矩阵的特征向量确定Jordan标准型

A=[101120403]A = \begin{bmatrix}-1 & 0 & 1 \\1 & 2 & 0 \\-4 & 0 & 3\end{bmatrix}求A的Jordan标准型

第一步:求出特征值
λEA=0|\lambda E-A|=0,得到λ1=λ2=1\lambda_1=\lambda_2=1, λ3=2\lambda_3=2,特征值1的代数重复度为2,特征值2的代数重复度为1.

第二步:计算重根的几何重复度
对于代数重复度mm为1的特征值,其几何重复度aa只可能是1,重根则需要计算才知道。通过解方程(EA)x=0(E-A)x=0得到无关的特征向量只有一个(1,1,2)T(1,-1,2)^T,即几何重复度为1,则往Jordan标准型上添加mam-a个1。

假设有个m=3m=3的特征值1,它对应的Jordan块是三阶的,如果它的几何重复度可能是3,2,13,2,1,那么添加的1的个数分别是0,1,20,1,2个,对应的Jordan块为

J3=[111][1111][11111]J_3 = \begin{bmatrix}1 & & \\ & 1 & \\ & & 1 \end{bmatrix}\quad \begin{bmatrix}1 & & \\ & 1 & 1 \\ & & 1\end{bmatrix}\quad \begin{bmatrix}1 & 1 & \\ & 1 & 1 \\ & & 1\end{bmatrix}

第三步:写出Jordan块和标准型
特征值有两个,则Jordan标准型由两个Jordan块组成,特征值1对应的Jordan块是2阶的,且添加21=12-1=1个1,则J1=[111]J_1=\begin{bmatrix} 1 & 1 \\ & 1\end{bmatrix}.

特征值2对应的Jordan块是1阶的,直接写出J2=[2]J_2=\begin{bmatrix} 2\end{bmatrix},拼接得到

J=[1112]J = \begin{bmatrix} 1 & 1 & \\ & 1 & \\ & & 2 \end{bmatrix}

2.2.5 求解常系数微分方程

求解方程组

{dx1dt=3x1+8x3dx2dt=3x1x2+8x3dx3dt=2x15x3\begin{cases}\frac{dx_1}{dt}=3x_1+8x_3 \\\frac{dx_2}{dt} = 3x_1-x_2+8x_3 \\\frac{dx_3}{dt} = -2x_1-5x_3\end{cases}

第一步:求出矩阵形式
容易得到矩阵形式

dXdt=AX\frac{dX}{dt} = AX

其中A=[308316205]A=\begin{bmatrix}3 & 0 & 8 \\ 3 & -1 & 6 \\-2 & 0 & -5 \end{bmatrix}, X=[x1x2x3]X = \begin{bmatrix}x_1 \\ x_2 \\ x_3 \end{bmatrix}, dXdt=[dX1dtdX2dtdX3dt]\frac{dX}{dt}=\begin{bmatrix} \frac{dX_1}{dt} \\ \frac{dX_2}{dt} \\ \frac{dX_3}{dt}\end{bmatrix}

第二步:计算系数矩阵A的Jordan标准型和变换矩阵
计算得到T=[041130020]T=\begin{bmatrix}0 & 4 & 1 \\ 1 & 3 & 0 \\ 0 & -2 & 0 \end{bmatrix},且T1AT=J=[100011001]T^{-1}AT=J=\begin{bmatrix}-1 & 0 & 0 \\ 0 & -1 & 1 \\0& 0 & -1 \end{bmatrix}

第三步:替换X=TYX=TY
替换X=TYX=TY, Y=[y1,y2,y3]TY=[y_1,y_2,y_3]^T,得到

dTYdt=ATYTdYdt=ATYdYdt=T1ATY=JY\begin{aligned} \frac{dTY}{dt} &= ATY \\ T\frac{dY}{dt} & =ATY \\ \frac{dY}{dt} &=T^{-1}ATY=JY \end{aligned}

第四步:解Y的方程

{dy1dt=y1dy2dt=y2+y3dy3dt=y3\begin{cases} \frac{dy_1}{dt} = -y_1 \\ \frac{dy_2}{dt} = -y_2+y_3 \\ \frac{dy_3}{dt} = -y_3 \end{cases}

得到y1=k1ety_1 = k_1e^{-t}, y3=k3ety_3 = k_3e^{-t}, y2=et(k3t+k2)y_2=e^{-t}(k_3t+k_2)

第五步:根据XXYY的线性变换关系还原变量到X

X=TY=[4y2+y3y1+3y22y2]X=TY=\begin{bmatrix}4y_2+y_3 \\y_1+3y_2 \\-2y_2 \end{bmatrix}

得到

{x1=(4k3t+4k2+k3)etx2=(3k3t+3k2+k1)etx3=(2k3t2k2)et\begin{cases} x_1 = (4k_3t+4k_2+k_3)e^{-t}\\ x_2=(3k_3t+3k_2+k_1)e^{-t}\\ x_3=(-2k_3t-2k_2)e^{-t} \end{cases}

3 三角分解

定义:如果能找到一个下三角矩阵LL,和一个上三角矩阵UU,使得任意一个矩阵A=LUA=LU,那么这样的将一个矩阵分解为两个三角形矩阵相乘的操作就称之为矩阵的三角分解。矩阵三角分解的意义在于简化大矩阵行列式,逆矩阵和方程组的计算。

矩阵的三角分解得到的LL, UU矩阵一般不唯一

对于一个线性方程组Ax=bAx=b,如果分解A=LUA=LU,可以得到

Ax=(LU)x=L(Ux)=bAx=(LU)x=L(Ux)=b

Ux=yUx=y,则得到

{Ux=yLy=b\begin{cases}Ux=y \\Ly=b\end{cases}

由于LL, UU都是三角形矩阵,所以解方程会变得容易一些

分解的上三角矩阵和下三角矩阵一般是指

L=[l11l21l22ln1ln2lnn]U=[u11u12u1nu22u2nunn]L = \begin{bmatrix} l_{11} & & & \\ l_{21} & l_{22} & & \\ \vdots & \vdots &\ddots & \\ l_{n1} & l_{n2}& \cdots & l_{nn} \end{bmatrix}\quad U=\begin{bmatrix} u_{11} & u_{12} &\cdots& u_{1n} \\ & u_{22} & \cdots & u_{2n} \\ & & \ddots & \vdots \\ & & \cdots & u_{nn} \end{bmatrix}

3.1 定理与推论

定理:矩阵ACnn×nA\in C_n^{n\times n}(满秩方阵)的三角分解A=LUA=LU唯一的充要条件是

Δk0k[1,n1]\Delta_k\neq 0\quad k\in[1,n-1]

其中Δk\Delta_k是A的顺次主子式

两种特殊的三角分解
如果将下三角矩阵LL变为

L~=[1l211ln1ln(n1)1]\tilde L= \begin{bmatrix} 1 & & & \\ l_{21} & 1 & & \\ \vdots & \ddots & \ddots & \\ l_{n1} & \cdots & l_{n(n-1)} & 1 \end{bmatrix}

即主对角线上的元素变为1,称为单位下三角矩阵,此时的分解变为A=L~UA=\tilde LU,称作Crout分解

如果将上三角矩阵变为

U~=[1u12u1n1u2n1]\tilde U= \begin{bmatrix} 1 & u_{12}&\cdots & u_{1n}\\ & 1 &\cdots &u_{2n} \\ & & \ddots &\vdots \\ & & \cdots & 1 \end{bmatrix}

即主对角线上的元素变为1,称为单位上三角矩阵,此时的分解变为A=LU~A=L\tilde U,称为Doolittle分解

推论:给出ACnn×nA\in C_{n}^{n\times n},且Δk0,k[1,n1]\Delta_k\neq 0,k\in[1,n-1],则A唯一的被分解为A=L~DU~A=\tilde LD\tilde U,其中D为对角阵。具体分解时,可先分解成LU~L\tilde U,再将L分解为L~D\tilde LD,得到L~DU~\tilde L D \tilde U

4 Cholesky分解

定义:一个正定的Hermite矩阵A可唯一的分解为A=LLHA=LL^H,其中L为正线下三角矩阵,即矩阵的对角线元素均为正的。

4.1 Cholesky分解的方法

当拿到Hermite矩阵A之后,将其三角分解得到A=L~DU~A=\tilde LD\tilde U,由于矩阵D是对角阵,记为D=diag[a11,a22,a33]D=diag[a_{11},a_{22},a_{33}], 则D可写为D=diag[a11,a22,a33]×diag[a11,a22,a33]D=diag[\sqrt{a_{11}},\sqrt{a_{22}},\sqrt{a_{33}}]\times diag[\sqrt{a_{11}},\sqrt{a_{22}},\sqrt{a_{33}}]

注意到Hermite矩阵三角分解后的L~\tilde L, U~\tilde U是互相对称的,所以令L=L~×diag[a11,a22,a33]L=\tilde L\times diag[\sqrt{a_{11}},\sqrt{a_{22}},\sqrt{a_{33}}], 则LH=diag[a11,a22,a33]×U~L^H=diag[\sqrt{a_{11}},\sqrt{a_{22}},\sqrt{a_{33}}]\times \tilde U

得到A=LLHA=LL^H

5 矩阵的满秩分解

定义:对于矩阵ACrm×nA\in C_r^{m\times n}(秩为r),若存在BCrm×rB\in C_r^{m\times r}(列满秩), CCrr×nC\in C_r^{r\times n}(行满秩),使得A=BCA=BC,则称A=BCA=BC为矩阵A的满秩分解

对于任何的非0矩阵ACrm×nA\in C_r^{m\times n},都存在满秩分解

5.1 满秩分解的方法

给出矩阵

A=[0012300246]A=\begin{bmatrix}0 & 0 & 1 & 2 & 3 \\0 & 0 & 2 & 4 & 6\end{bmatrix}

进行满秩分解

第一步:计算极大无关组
行变换得到

[0012300246][0012300000]\begin{bmatrix} 0 & 0 & 1 & 2 & 3 \\ 0 & 0 & 2 & 4 & 6 \end{bmatrix}\rightarrow \begin{bmatrix} 0 & 0 & 1 & 2 & 3 \\ 0 & 0 & 0 & 0 & 0 \end{bmatrix}

秩为1,选取极大无关组为第三列的列向量

第二步:选取矩阵B为原矩阵极大无关组位置的那些向量,选取C为行阶梯化简后的非0行
对于本题,第三列是极大无关组的向量,原矩阵中对应的第三列为[12]\begin{bmatrix}1 \\2 \end{bmatrix},所以B=[12]B=\begin{bmatrix}1 \\2 \end{bmatrix}

又行阶梯化简后第一行是非0行,所以C=[00123]C=\begin{bmatrix}0 &0 &1 & 2 & 3 \end{bmatrix}

于是A=BCA=BC

注意到矩阵的满秩分解不唯一

5.2 定理与推论

定理:矩阵A如果又两个满秩分解A=B1C1=B2C2A=B_1C_1=B_2C_2,那么有以下关系

  1. QCnn×n\exists Q\in C_n^{n\times n},满足B1=B2QB_1 = B_2Q, C1=Q1C2C_1=Q^{-1}C_2
  2. C1H(C1C1H)1(B1HB1)1B1H=C2H(C2C2H)1(B2HB2)1B2HC_1^H(C_1C_1^H)^{-1}(B_1^HB_1)^{-1}B_1^H=C_2^H(C_2C_2^H)^{-1}(B_2^HB_2)^{-1}B_2^H

6 矩阵的UR分解

定义:对于矩阵ACrn×rA\in C_r^{n\times r}(列满秩)或者ACrr×nA\in C_r^{r\times n}(行满秩),如果AHA=ErA^HA=E_r或者AAH=ErAA^H=E_r,则A被称作次酉阵,全体列或行满秩的次酉阵集合记为Urn×rU_r^{n\times r}(列满秩), Urr×nU_r^{r\times n}(行满秩)

A是次酉阵,那么A的列(行)向量是标准正交向量组

定义:对于矩阵ACrn×rA\in C_r^{n\times r},A可唯一分解为A=URA=UR,其中UUrn×rU\in U_r^{n\times r},R是一个正线上三角阵,这称为矩阵的UR分解

6.1 定理与推论

推论ACrr×nA\in C_r^{r\times n},即一个行满秩矩阵,那么A可以唯一的分解为A=LUA=LU,其中UUrr×nU\in U_r^{r\times n}, L为正线下三角矩阵

推论ACnn×nA\in C_n^{n\times n},即一个满秩方阵,那么A可以唯一的分解为A=URA=UR,其中UUn×nU\in U^{n\times n},R为正线上三角矩阵

推论ACrm×nA\in C_r^{m\times n},即一个不满秩的任意矩阵,存在UUrm×rU\in U_r^{m\times r}, VUrr×nV\in U_r^{r\times n},R为r阶正线上三角矩阵,L为r阶正线下三角矩阵,使得A=URLVA=URLV

6.2 UR分解的求法

给出矩阵

A=[111100010001]A = \begin{bmatrix}1 & 1 & -1 \\1 & 0 & 0 \\0 & 1 & 0 \\0 & 0 & 1\end{bmatrix}

求UR分解

第一步:正交标准化矩阵的列向量
显然A是一个列满秩矩阵,将A记为A=[α1,α2,α3]A=[\alpha_1, \alpha_2,\alpha_3],利用Schmidt正交化方法正交并单位化得到

{η1=22α1η2=63(12α1+α2)η3=32(13α1+13α2+α3)\begin{cases} \eta_1 = \frac{\sqrt{2}}{2}\alpha_1\\ \eta_2 = \frac{\sqrt{6}}{3}(-\frac{1}{2}\alpha_1+\alpha_2)\\ \eta_3 = \frac{\sqrt{3}}{2}(\frac{1}{3}\alpha_1+\frac{1}{3}\alpha_2+\alpha_3) \end{cases}

第二步:将原向量和标准正交化的向量写成矩阵乘法形式
通过移项得到

{α1=2η1α2=62η2+22η1α3=233η366η222η1\begin{cases} \alpha_1 = \sqrt{2}\eta_1 \\ \alpha_2 = \frac{\sqrt{6}}{2}\eta_2 +\frac{\sqrt{2}}{2}\eta_1 \\ \alpha_3 = \frac{2\sqrt{3}}{3}\eta_3-\frac{\sqrt{6}}{6}\eta_2-\frac{\sqrt{2}}{2}\eta_1 \end{cases}

写成矩阵形式

A=[α1,α2,α3]=[η1,η2,η3][222220626600233]=URA=[\alpha_1,\alpha_2,\alpha_3] = [\eta_1,\eta_2,\eta_3] \begin{bmatrix} \sqrt{2} & \frac{\sqrt{2}}{2} & -\frac{\sqrt{2}}{2} \\ 0 & \frac{\sqrt{6}}{2} & -\frac{\sqrt{6}}{6} \\ 0 & 0 & \frac{2\sqrt{3}}{3} \end{bmatrix}=UR

7 奇异值分解

7.1 引入

定义:对于矩阵ACm×nA\in C^{m\times n},它的特征值均为非负实数,并且有R(AHA)=R(AAH)=R(A)R(A^HA)=R(AA^H)=R(A),现在记λi\lambda_iAHAA^HA的特征值,μi\mu_iAAHAA^H的特征值,那么有关系λi=μi>0\lambda_i=\mu_i>0成立,即两个矩阵的大于零的特征值相等。我们称αi=λi=μi\alpha_i=\sqrt{\lambda_i}=\sqrt{\mu_i}为矩阵A的奇异值。所以奇异值就是AAHAA^H的大于0的特征值开根号。

定义:设A,BCm×nA,B\in C^{m\times n},如果找到SUm×mS\in U^{m\times m}, TUn×nT\in U^{n\times n},使得A=Sm×mBm×nTn×nA=S_{m\times m}B_{m\times n}T_{n\times n}成立,那么称AB酉相似(等价)。

定理:酉相似的矩阵有相同的奇异值

7.2 奇异值分解

定义:对于给定的ACr(m×n)A\in C_r(m\times n),有r个奇异值,那么存在m阶酉矩阵U和n阶酉矩阵V使得

A=Um×m[ΔOOO]m×nVn×nHA=U_{m\times m} \begin{bmatrix} \Delta & O \\ O & O \end{bmatrix}_{m\times n} V_{n\times n}^H

其中

Δ=[α1α2αr]\Delta=\begin{bmatrix} \alpha_1 & & & \\ & \alpha_2 & & \\ & & \ddots & \\ & & & \alpha_r \end{bmatrix}

是一个用奇异值从大到小排列的对角阵,即α1α2αr>0\alpha_1\geq \alpha_2\geq \cdots\geq \alpha_r>0

这就是矩阵的奇异值分解,奇异值分解实际上提供了让任意矩阵对角化的工具

7.3 矩阵的奇异值分解步骤

第一步:计算AAHAA^H以及它的特征值λi\lambda_i
第二步:计算对应于每个λi\lambda_i的特征向量,拼接成为矩阵UU,注意拼接时的顺序要保证和特征值从大到小排列的顺序一致。
第三步:对矩阵U分块,取U1U_1为U的前r列,其中r是矩阵A的秩,或者说A的奇异值个数。剩下的列并入U2U_2
第四步:利用公式V1=AHU1ΔHV_1=A^HU_1\Delta^{-H}算出V1V_1
第五步:设出V2V_2V2V_2必定满足V1V2V_1\perp V_2,且V2=1||V_2||=1,因为V1V_1, V2V_2要构成酉矩阵,用这两个条件解出V2V_2,
第六步:拼接U=[U1,U2]U=[U_1,U_2], V=[V1,V2]V=[V_1,V_2],得到A=Um×m[ΔOOO]m×nVn×nHA=U_{m\times m}\begin{bmatrix}\Delta & O \\O & O \end{bmatrix}_{m\times n} V_{n\times n}^H,中间矩阵根据形状来填充0

8 单纯矩阵的谱分解

8.1 谱分解的引入

定义:设A是一个n阶可对角化的矩阵,其各不相同的特征值为λ1,λ2,,λσ\lambda_1,\lambda_2,\dots,\lambda_\sigma,则HiCn×n\exists H_i\in C^{n\times n},使得

A=i=1σλiHiA=\sum_{i=1}^\sigma \lambda_iH_i

这个式子就是A的谱分解Hi,i[1,σ]H_i,i\in[1,\sigma]为A的谱族

定理:谱族满足以下几个命题

  1. HiHj=δijHiH_iH_j=\delta_{ij}H_i(Hi2=HiH_i^2=H_i),δij=δ(ij)\delta_{ij} = \delta(i-j)是冲激函数
  2. i=1σHi=En\sum\limits_{i=1}^\sigma H_i=E_n
  3. HiA=AHi=λiHiH_iA=AH_i=\lambda_iH_i
  4. R(Hi)=miR(H_i)=m_i,即代数重复度
  5. HiH_i是唯一的

8.2 谱分解的步骤

第一步:将A进行相似对角化,那么将得到

A=Pdiag{m1λ1,m2λ2,,mσλσ}P1A = Pdiag\{m_1个\lambda_1, m_2个\lambda_2, \dots, m_\sigma 个\lambda_\sigma\}P^{-1}

其中mim_i是代数重复度

第二步:对P进行列分块,P1P^{-1}进行行分块

P=[P1,P2,,Pσ]P1=[P~1P~2P~σ]P=[P_1,P_2,\dots,P_\sigma]\quad P^{-1}= \begin{bmatrix} \tilde P_1 \\ \tilde P_2 \\ \vdots \\ \tilde P_\sigma \end{bmatrix}

第三步:根据相似对角化式子写出谱族

A=Pdiag{m1λ1,m2λ2,,mσλσ}P1=[P1,P2,,Pσ][λ1Em1λ2Em2λσEmσ][P~1P~2P~σ]=i=1σλiPiP~i\begin{aligned} A &= Pdiag\{m_1个\lambda_1, m_2个\lambda_2, \dots, m_\sigma 个\lambda_\sigma\}P^{-1} \\ &=[P_1,P_2,\dots,P_\sigma] \begin{bmatrix} \lambda_1E_{m_1} & & & \\ & \lambda_2E_{m_2} & & \\ & & \ddots & \\ & & & \lambda_\sigma E_{m_\sigma} \end{bmatrix} \begin{bmatrix} \tilde P_1 \\ \tilde P_2 \\ \vdots \\ \tilde P_\sigma \end{bmatrix} \\ &=\sum_{i=1}^\sigma \lambda_i P_i\tilde P_i \end{aligned}

第四步:得到谱族和谱分解
对比谱分解得到Hi=PiP~i,i[1,σ]H_i = P_i\tilde P_i,i\in[1,\sigma]

A=i=1σλiHiA=\sum_{i=1}^\sigma \lambda_iH_i

注意到代数重复度为mm的特征值有mm个特征向量,所以对于一个mm重特征值,H=i=1mPiP~iH=\sum\limits_{i=1}^m P_i\tilde P_i

8.3 正规矩阵的谱分解

定义:设A是正规矩阵,则存在U=[α1,,αn]Un×nU=[\alpha_1,\dots,\alpha_n]\in U^{n\times n},使得

A=[α1,,αn][λ1λ2λn][α1Hα2HαnH]=λ1α1α1H++λnαnαnH\begin{aligned} A&=[\alpha_1,\dots,\alpha_n] \begin{bmatrix} \lambda_1 & & & \\ & \lambda_2 & & \\ & & \ddots & \\ & & & \lambda_n \end{bmatrix} \begin{bmatrix} \alpha_1^H \\ \alpha_2^H \\ \vdots \\ \alpha_n^H \end{bmatrix}\\ &=\lambda_1\alpha_1\alpha_1^H+\cdots+\lambda_n\alpha_n\alpha_n^H \end{aligned}

不难发现,αi\alpha_i就是A特征值λi\lambda_i对应的单位特征向量,上面的式子就是A的谱分解表达式

推论:当存在重特征值的时候,假设不同的特征值有r个,记λi\lambda_i的代数重复度为nin_iλi\lambda_i对应的特征向量为αij,j[1,ni]\alpha_{ij},j\in[1,n_i],那么谱分解类似于单纯阵,写成

A=i=1rλij=1niαijαijHA=\sum_{i=1}^r\lambda_i\sum_{j=1}^{n_i}\alpha_{ij}\alpha_{ij}^H

也就是同一个特征值下的特征向量先进行相乘求和,记

Gi=j=1niαijαijHG_i = \sum_{j=1}^{n_i}\alpha_{ij}\alpha_{ij}^H

那么谱分解表达式就是

A=i=1rλiGiA=\sum_{i=1}^r \lambda_iG_i

关于GiG_i,它还满足

  1. GiH=Gi=Gi2G_i^H=G_i=G_i^2
  2. GiGk=0(ik)G_iG_k=0(i\neq k)
  3. i=1rGi=E\sum\limits_{i=1}^rG_i=E
  4. R(Gi)=niR(G_i)=n_i

满足上述性质,我们把GiG_i叫做正交投影矩阵

8.4 特征值变换推论

设A是一个n阶可对角化的方阵,谱分解是A=i=1σλiHiA=\sum\limits_{i=1}^\sigma \lambda_iH_i。考虑一个多项式映射

f(λ)=k=0makλkf(\lambda) = \sum_{k=0}^m a_k\lambda^k

那么当映射作用到矩阵A上时,对于λ\lambda的映射是同样的

f(A)=i=1σf(λi)Hif(A) = \sum_{i=1}^\sigma f(\lambda_i)H_i


05:矩阵分解
https://jesseprince.github.io/2023/09/18/master/matrixanalysis/decompose/
作者
林正
发布于
2023年9月18日
许可协议