特征值与特征向量、特征方程、特征多项式、矩阵相似、相似变换、矩阵对角化、奇异值分解(Singular Value Decomposition)手算加MATLAB
特征值(Eigenvalue)与特征向量(Eigenvector)
定义:若AAA为n×nn\times nn×n的矩阵,xxx为非零向量,若存在数λ\lambdaλ使得Ax=λxAx=\lambda xAx=λx有非平凡解xxx,则称λ\lambdaλ为AAA的特征值,xxx则为对应于λ\lambdaλ的特征向量。
例1:设A=[1652]A=\begin{bmatrix}1&6\\5&2\end{bmatrix}A=[1562],u=[6−5]u=\begin{bmatrix}6\\-5\end{bmatrix}u=[6−5],v=[3−2]v=\begin{bmatrix}3\\-2\end{bmatrix}v=[3−2],判断uuu和vvv是不是矩阵AAA的特征向量。
解:
Au=[1652][6−5]=[−2420]=−4×[6−5]=−4uAu=\begin{bmatrix}1&6\\5&2\end{bmatrix}\begin{bmatrix}6\\-5\end{bmatrix}= \begin{bmatrix}-24\\20\end{bmatrix}=-4\times \begin{bmatrix}6\\-5\end{bmatrix}=-4uAu=[1562][6−5]=[−2420]=−4×[6−5]=−4u
所以,向量uuu是特征值λ=4\lambda = 4λ=4对应的特征向量。
Av=[1652][3−2]=[−911]≠λ[3−2]Av=\begin{bmatrix}1&6\\5&2\end{bmatrix}\begin{bmatrix}3\\-2\end{bmatrix}= \begin{bmatrix}-9\\11\end{bmatrix}\neq \lambda \begin{bmatrix}3\\-2\end{bmatrix}Av=[1562][3−2]=[−911]=λ[3−2]
所以,AvAvAv不是向量vvv的倍数,即向量vvv不是矩阵向量AAA的特征向量。
例2:请证明7是矩阵A=[1652]A=\begin{bmatrix}1&6\\5&2\end{bmatrix}A=[1562]的特征值,并求特征值7对应的特征向量。
解:
根据定义,存在数λ\lambdaλ使得Ax=λxAx=\lambda xAx=λx有非平凡解xxx,当方程Ax=7xAx=7xAx=7x有非平凡解时,λ=7\lambda = 7λ=7才能是矩阵AAA的特征值。即:
Ax−7x=0Ax-7x=0Ax−7x=0
(A−7I)x=0(A-7I)x=0(A−7I)x=0
此方程为齐次方程,先计算其系数矩阵A−7IA-7IA−7I:
A−7I=[1652]−[7007]=[−665−5]A-7I=\begin{bmatrix}1&6\\5&2\end{bmatrix}-\begin{bmatrix}7&0\\0&7\end{bmatrix}=\begin{bmatrix}-6&6\\5&-5\end{bmatrix}A−7I=[1562]−[7007]=[−656−5]
显然,A−7IA-7IA−7I的列向量[−65]\begin{bmatrix}-6\\5\end{bmatrix}[−65]和[6−5]\begin{bmatrix}6\\-5\end{bmatrix}[6−5]因为满足:
1×[−65]+1×[6−5]=[00]1\times \begin{bmatrix}-6\\5\end{bmatrix}+1\times \begin{bmatrix}6\\-5\end{bmatrix}=\begin{bmatrix}0\\0\end{bmatrix}1×[−65]+1×[6−5]=[00]
所以此二列向量是线性相关的(当然,也可以看出此二列向量是-1倍数的关系,所以可以说明它们是线性相关的),所以方程(A−7I)x=0(A-7I)x=0(A−7I)x=0有非平凡解(即向量xxx的元素不全为0的解),所以满足上述定义,所以7为矩阵AAA的特征值。
容易解得上述方程组的解为:满足x1=x2x_1=x_2x1=x2的所有向量x=[x1x2]x=\begin{bmatrix}x_1\\x_2\end{bmatrix}x=[x1x2],如[11]\begin{bmatrix}1\\1\end{bmatrix}[11],[22]\begin{bmatrix}2\\2\end{bmatrix}[22]等,这些向量(零向量除外)都是λ=7\lambda = 7λ=7对应的特征向量。
当然,矩阵A=[1652]A=\begin{bmatrix}1&6\\5&2\end{bmatrix}A=[1562]的特征值并不只有7一个,对于所有满足Ax=λxAx=\lambda xAx=λx,即(A−λI)x=0(A-\lambda I)x=0(A−λI)x=0有非平凡解,的λ\lambdaλ都可以算矩阵AAA的特征值。
特征空间:由零向量和所有对应于特征值λ\lambdaλ的特征向量构成。特征空间即(A−λI)x=0(A-\lambda I)x=0(A−λI)x=0所有解得集合,也称为A−λIA-\lambda IA−λI的零空间。
特征方程(Characteristic Equation)
例1:求矩阵A=[1652]A=\begin{bmatrix}1&6\\5&2\end{bmatrix}A=[1562]的特征值。
解:
要求出所有使得(A−λI)x=0(A-\lambda I)x=0(A−λI)x=0有非平凡解的λ\lambdaλ的值。此问题等价于求出所有使得A−λIA-\lambda IA−λI矩阵为不可逆矩阵:
A−λI=[1−λ652−λ]A-\lambda I =\begin{bmatrix}1-\lambda &6\\5&2-\lambda\end{bmatrix}A−λI=[1−λ562−λ]
det(A−λI)=(1−λ)(2−λ)−30=λ2−3λ−28=(λ−7)(λ+4)=0det(A-\lambda I )=(1-\lambda)(2-\lambda)-30=\lambda ^2-3\lambda-28=(\lambda-7)(\lambda+4)=0det(A−λI)=(1−λ)(2−λ)−30=λ2−3λ−28=(λ−7)(λ+4)=0
所以λ=7\lambda=7λ=7或λ=−4\lambda=-4λ=−4为矩阵AAA的特征值。
总结:
本例中,det(A−λI)=0det(A-\lambda I )=0det(A−λI)=0就是矩阵AAA的特征方程,用特征方程可以判断矩阵det(A−λI)det(A-\lambda I )det(A−λI)是否可逆(矩阵的行列式值若为0,则不可逆;如果一个矩阵可逆,则其行列式值不等于零)。
数λ\lambdaλ是矩阵AAA的特征值的充要条件是:λ\lambdaλ是矩阵AAA的特征方程det(A−λI)=0det(A-\lambda I )=0det(A−λI)=0的根。
对于n阶的矩阵,同样可以用此方法求特征值。
特征多项式(Characteristic Polynomial)
det(A−λI)=0det(A-\lambda I )=0det(A−λI)=0是矩阵AAA的特征方程,其化简出来是一个特征多项式。
例:求矩阵A=[5−26−103−8000540001]A=\begin{bmatrix}5&-2&6&-1\\0&3&-8&0\\0&0&5&4\\0&0&0&1\end{bmatrix}A=⎣⎢⎢⎡5000−23006−850−1041⎦⎥⎥⎤的特征方程和特征多项式。
解:
det(A−λI)=det[5−λ−26−103−λ−80005−λ40001−λ]=(5−λ)(3−λ)(5−λ)(1−λ)=(5−λ)2(3−λ)(1−λ)=λ4−14λ3+68λ2−130λ+75=0det(A-\lambda I)=det\begin{bmatrix}5-\lambda&-2&6&-1\\0&3-\lambda&-8&0\\0&0&5-\lambda&4\\0&0&0&1-\lambda\end{bmatrix}=(5-\lambda)(3-\lambda)(5-\lambda)(1-\lambda)=(5-\lambda)^2(3-\lambda)(1-\lambda)=\lambda ^4-14\lambda ^3+68\lambda^2-130\lambda+75=0det(A−λI)=det⎣⎢⎢⎡5−λ000−23−λ006−85−λ0−1041−λ⎦⎥⎥⎤=(5−λ)(3−λ)(5−λ)(1−λ)=(5−λ)2(3−λ)(1−λ)=λ4−14λ3+68λ2−130λ+75=0
所以,矩阵AAA的特征方程为:
(5−λ)2(3−λ)(1−λ)=0(5-\lambda)^2(3-\lambda)(1-\lambda)=0(5−λ)2(3−λ)(1−λ)=0,或:
λ4−14λ3+68λ2−130λ+75=0\lambda ^4-14\lambda ^3+68\lambda^2-130\lambda+75=0λ4−14λ3+68λ2−130λ+75=0
而后者(λ4−14λ3+68λ2−130λ+75=0\lambda ^4-14\lambda ^3+68\lambda^2-130\lambda+75=0λ4−14λ3+68λ2−130λ+75=0)又称为矩阵AAA的特征多项式。
注:本例中,因子(λ−5)(\lambda - 5)(λ−5)出现了2次,所以称特征值5有重数2,而其他的特征值3、1的重数为1。
使用MATLAB求矩阵特征值
例:对于上面的例题,求矩阵A=[1652]A=\begin{bmatrix}1&6\\5&2\end{bmatrix}A=[1562]特征值,使用eig(A)
函数即可:
A =1 65 2
>> eig(A)
ans =-47
用MATLAB求出矩阵AAA特征值为-4和7,与上面手算的一致。
矩阵相似、相似变换
矩阵相似定义:如果AAA和BBB是n×nn\times nn×n矩阵,若存在可逆矩阵PPP使得P−1AP=BP^{-1}AP=BP−1AP=B,或等价地A=PBP−1A=PBP^{-1}A=PBP−1,那么可说AAA相似于BBB。令Q=P−1Q=P^{-1}Q=P−1,则有Q−1BQ=AQ^{-1}BQ=AQ−1BQ=A,即BBB也相似于AAA,所以两个方向都成立,这样我们可以简单地说AAA和BBB相似就行。
相似变换:把矩阵AAA变成P−1APP^{-1}APP−1AP(即P−1AP=BP^{-1}AP=BP−1AP=B)的变换称为相似变换。
矩阵相似定理:如果n×nn\times nn×n的矩阵AAA是相似的,那么它们具有相同的特征多项式,因此也具有相同的特征值和相同的重数。
使用QR分解的方法求特征值(数值方法)
对于大多数矩阵来说,计算特征值是困难的,因为特征方程的零点用数值方法(如牛顿法)计算有困难,其计算的速度和精度难以保障。
所以,如果需要使用数值方法求矩阵特征值,就要换用其他方法。由矩阵相似定理可知,如果任何与矩阵AAA相似的矩阵,都与矩阵AAA有相同的特征值。
计算方法如下:先找到一系列可以收敛于一个上三角矩阵的且与矩阵AAA相似的矩阵(使用QR分解的方法,求出这一系列矩阵),如果可以找到这样的矩阵,那么这一系列矩阵收敛的极限矩阵(三角矩阵)的对角线元素就是矩阵AAA的特征值。
(注:此处用到三角矩阵的一个性质:三角矩阵的主对角线元素就是其特征值。例如,矩阵A=[475002001]A=\begin{bmatrix}4&7&5\\0&0&2\\0&0&1\end{bmatrix}A=⎣⎡400700521⎦⎤的特征值是4、0和1;矩阵B=[300210624]B=\begin{bmatrix}3&0&0\\2&1&0\\6&2&4\end{bmatrix}B=⎣⎡326012004⎦⎤的特征值是3、1和4。)
该方法的好处:对大多数矩阵,使用QR分解的方法(在这种求特征值的方法中,QR分解可以求出与原矩阵相似的且正交的矩阵,由于这些矩阵是相似且正交的,所以可以减少特征值求解过程的舍入误差),都能找到这样的收敛的一系列矩阵,且因为QR分解的数值计算法速度和精度都较好,所以用此方法计算的特征值,其计算速度和精度也较好。
实际计算中,极线矩阵往往会是分块上三角矩阵(block upper triangular matrix),对其求特征值是可行的。
上述方法总结为:设矩阵AAA为n×nn\times nn×n的方阵,将AAA进行QR分解得:A=Q0R0A=Q_0R_0A=Q0R0,然后构造A1=R0Q0A_1=R_0Q_0A1=R0Q0;然后对新构造的矩阵A1A_1A1进行QR分解得:A1=Q1R1A_1=Q_1R_1A1=Q1R1,再用A1A_1A1的QR分解矩阵构造A2A_2A2得:A2=R1Q1A_2=R_1Q_1A2=R1Q1,如此类推,直到生成矩阵AnA_nAn,且它的QR分解为:An=QnRnA_n=Q_nR_nAn=QnRn,然后这个矩阵AnA_nAn的对角线下面的元素充分小或者出现明显不收敛时就停下。
在这个方法中,可以证明的推论(证明过程略):
- A=Q0A1Q0TA=Q_0A_1Q^T_0A=Q0A1Q0T
- A=(Q0Q1)A2(Q0Q1)TA=(Q_0Q_1)A_2(Q_0Q_1)^TA=(Q0Q1)A2(Q0Q1)T
- Q0Q1Q_0Q_1Q0Q1是正交矩阵
- 矩阵AAA、A1A_1A1和A2A_2A2直到AmA_mAm具有相同的特征值
矩阵对角化(Diagonalization)
背景:如果一个n×nn\times nn×n的方阵AAA可以被分解为A=PDP−1A=PDP^{-1}A=PDP−1(其中DDD为对角矩阵(diagonal matrix),即除了对角线元素外(当然,主对角线上的元素也是可以为0的),其他元素都为0的矩阵),这样分解可以显示更多得关于矩阵AAA的特征值和特征向量的信息,也可以利用此分解式快速求解AkA^kAk(kkk较大时也能快速求出)。
例1:设对角阵D=[5003]D=\begin{bmatrix}5&0\\0&3\end{bmatrix}D=[5003],
则D2=[5003][5003]=[520032]D^2=\begin{bmatrix}5&0\\0&3\end{bmatrix}\begin{bmatrix}5&0\\0&3\end{bmatrix}=\begin{bmatrix}5^2&0\\0&3^2\end{bmatrix}D2=[5003][5003]=[520032]
D3=DD2=[5003][520032]=[530033]D^3=DD^2=\begin{bmatrix}5&0\\0&3\end{bmatrix}\begin{bmatrix}5^2&0\\0&3^2\end{bmatrix}=\begin{bmatrix}5^3&0\\0&3^3\end{bmatrix}D3=DD2=[5003][520032]=[530033]
所以,可以总结出,对于k≥1,Dk=[5k003k]k\geq1,D^k=\begin{bmatrix}5^k&0\\0&3^k\end{bmatrix}k≥1,Dk=[5k003k]
总结:从本例可看出,对角阵的幂很容易计算。
例2:设矩阵A=[72−41]A=\begin{bmatrix}7&2\\-4&1\end{bmatrix}A=[7−421],给定A=PDP−1A=PDP^{-1}A=PDP−1,其中P=[11−1−2]P=\begin{bmatrix}1&1\\-1&-2\end{bmatrix}P=[1−11−2],D=[5003]D=\begin{bmatrix}5&0\\0&3\end{bmatrix}D=[5003],求AkA^kAk。
解:
先求矩阵PPP的逆P−1=[21−1−1]P^{-1}=\begin{bmatrix}2&1\\-1&-1\end{bmatrix}P−1=[2−11−1]
结合矩阵乘法:A2=(PDP−1)(PDP−1)=PD(P−1P)DP−1=PDDP−1=PD2P−1A^2=(PDP^{-1})(PDP^{-1})=PD(P^{-1}P)DP^{-1}=PDDP^{-1}=PD^2P^{-1}A2=(PDP−1)(PDP−1)=PD(P−1P)DP−1=PDDP−1=PD2P−1,
同理有:A3=AA2=(PDP−1)A2=(PDP−1)(PD2P−1)=PD(P−1P)D2P−1=PD3P−1A^3=AA^2=(PDP^{-1})A^2=(PDP^{-1})(PD^2P^{-1})=PD(P^{-1}P)D^2P^{-1}=PD^3P^{-1}A3=AA2=(PDP−1)A2=(PDP−1)(PD2P−1)=PD(P−1P)D2P−1=PD3P−1,
所以,一般地,对于k≥1,Ak=PDkP−1=[11−1−2][5k003k][21−1−1]=[2⋅5k−3k5k−3k2⋅3k−2⋅5k2⋅3k−5k]k\geq1,A^k=PD^kP^{-1}=\begin{bmatrix}1&1\\-1&-2\end{bmatrix}\begin{bmatrix}5^k&0\\0&3^k\end{bmatrix}\begin{bmatrix}2&1\\-1&-1\end{bmatrix}=\begin{bmatrix}2\cdot5^k-3^k &5^k-3^k\\2\cdot3^k-2\cdot5^k&2\cdot3^k-5^k\end{bmatrix}k≥1,Ak=PDkP−1=[1−11−2][5k003k][2−11−1]=[2⋅5k−3k2⋅3k−2⋅5k5k−3k2⋅3k−5k]
总结:根据相似定理,如果方阵AAA相似于对角矩阵DDD,则有A=PDP−1A=PDP^{-1}A=PDP−1,那么此时可以称矩阵AAA可对角化。
对角化定理
对角化定理:n×nn\times nn×n的方阵AAA可对角化(即A=PDP−1A=PDP^{-1}A=PDP−1,且DDD为对角阵)的充要条件是:方阵AAA有nnn个线性无关的特征向量,也可以说是矩阵PPP的列向量是AAA的nnn个线性无关特征向量。此时,DDD的主对角线上的元素分别是AAA的对应于PPP中的特征向量的特征值。
例1:判断矩阵是否可以对角化,如果可以,对角化之:A=[133−3−5−3331]A=\begin{bmatrix}1&3&3\\-3&-5&-3\\3&3&1\end{bmatrix}A=⎣⎡1−333−533−31⎦⎤。
解:
先求矩阵AAA的特征值:
0=det(A−λI)=−λ3−3λ+4=−(λ−1)(λ+2)20=det(A-\lambda I)=-\lambda^3-3\lambda+4=-(\lambda-1)(\lambda+2)^20=det(A−λI)=−λ3−3λ+4=−(λ−1)(λ+2)2
所以,矩阵AAA的特征值为λ=1\lambda=1λ=1和λ=−2\lambda=-2λ=−2。
当矩阵阶数大于2×22\times 22×2时,可以用MATLAB求特征值:
A =1 3 3-3 -5 -33 3 1
>> eig(A)
ans =1.000000000000000e+00-2.000000000000000e+00-1.999999999999998e+00
用MATLAB求出来,可见λ≈−2\lambda \approx-2λ≈−2有两个,这是符合上面因式分解的结果的(λ=−2\lambda=-2λ=−2的重数为2),λ=1\lambda=1λ=1是另一个特征值。
再求矩阵AAA的3个线性无关的特征向量:
因为矩阵AAA是3×33\times 33×3的矩阵,由对角化定理可知,需要找到3个线性无关的特征向量,如果找不到,那么AAA就不能对角化:
求特征值λ=1\lambda=1λ=1对应的基:
化简方程(A−λI)x=(A−1I)x=0(A-\lambda I)x=(A-1 I)x=0(A−λI)x=(A−1I)x=0对应的增广矩阵:
[A−λI0]=[1−λ330−3−5−λ−30331−λ0]=[0330−3−6−303300]→[10−1001100000][A-\lambda I\quad 0]=\begin{bmatrix}1-\lambda&3&3&0\\-3&-5-\lambda&-3&0\\3&3&1-\lambda&0\end{bmatrix}=\begin{bmatrix}0&3&3&0\\-3&-6&-3&0\\3&3&0&0\end{bmatrix}\rightarrow \begin{bmatrix}1&0&-1&0\\0&1&1&0\\0&0&0&0\end{bmatrix}[A−λI0]=⎣⎡1−λ−333−5−λ33−31−λ000⎦⎤=⎣⎡0−333−633−30000⎦⎤→⎣⎡100010−110000⎦⎤
通解为:x=[x1x2x3]=x3[1−11]x=\begin{bmatrix}x_1\\x_2\\x_3\end{bmatrix}=x_3\begin{bmatrix}1\\-1\\1\end{bmatrix}x=⎣⎡x1x2x3⎦⎤=x3⎣⎡1−11⎦⎤
所以特征值λ=1\lambda=1λ=1对应的基为:v1=[1−11]v_1=\begin{bmatrix}1\\-1\\1\end{bmatrix}v1=⎣⎡1−11⎦⎤
求特征值λ=−2\lambda=-2λ=−2对应的基:
化简方程(A−λI)x=(A+2I)x=0(A-\lambda I)x=(A+2 I)x=0(A−λI)x=(A+2I)x=0对应的增广矩阵:
[A−λI0]=[1−λ330−3−5−λ−30331−λ0]=[3330−3−3−303330]→[111000000000][A-\lambda I\quad 0]=\begin{bmatrix}1-\lambda&3&3&0\\-3&-5-\lambda&-3&0\\3&3&1-\lambda&0\end{bmatrix}=\begin{bmatrix}3&3&3&0\\-3&-3&-3&0\\3&3&3&0\end{bmatrix}\rightarrow \begin{bmatrix}1&1&1&0\\0&0&0&0\\0&0&0&0\end{bmatrix}[A−λI0]=⎣⎡1−λ−333−5−λ33−31−λ000⎦⎤=⎣⎡3−333−333−33000⎦⎤→⎣⎡100100100000⎦⎤
通解为:x=[x1x2x3]=x2[−110]+x3[−101]x=\begin{bmatrix}x_1\\x_2\\x_3\end{bmatrix}=x_2\begin{bmatrix}-1\\1\\0\end{bmatrix}+x_3\begin{bmatrix}-1\\0\\1\end{bmatrix}x=⎣⎡x1x2x3⎦⎤=x2⎣⎡−110⎦⎤+x3⎣⎡−101⎦⎤
所以特征值λ=−2\lambda=-2λ=−2对应的基为:
v2=[−110]v_2=\begin{bmatrix}-1\\1\\0\end{bmatrix}v2=⎣⎡−110⎦⎤和v3=[−101]v_3=\begin{bmatrix}-1\\0\\1\end{bmatrix}v3=⎣⎡−101⎦⎤
容易验证v1v_1v1和v2v_2v2和v3v_3v3是线性无关的。
使用上面求得的3个线性无关的特征向量构造矩阵P=[v1v2v3]P=[v_1\quad v_2\quad v_3]P=[v1v2v3],v1v_1v1、v2v_2v2和v3v_3v3的顺序可以随意排列。
P=[v1v2v3]=[1−1−1−110101]P=[v_1\quad v_2\quad v_3]=\begin{bmatrix}1&-1&-1\\-1&1&0\\1&0&1\end{bmatrix}P=[v1v2v3]=⎣⎡1−11−110−101⎦⎤
再构造矩阵DDD,把矩阵AAA的特征值放在矩阵DDD的主对角线上,注意特征值的次序要和上面构造PPP时使用的特征向量的次序对应一致(例如,上面特征值1对应的特征向量v1v_1v1是排在第一列的,所以特征值1要放在DDD的第一列的主对角线元素上):
D=[1000−2000−2]D=\begin{bmatrix}1&0&0\\0&-2&0\\0&0&-2\end{bmatrix}D=⎣⎡1000−2000−2⎦⎤
构造出DDD和PPP后,进行验算,看是否满足A=PDP−1A=PDP^{-1}A=PDP−1,这个式子可以变形为AP=PDAP=PDAP=PD,先判断矩阵PPP是否可逆:
求矩阵PPP的秩(rank):
P =1 -1 -1-1 1 01 0 1>> rank(P)ans =3
矩阵PPP的秩(rank)为3,和其阶数一致,所以矩阵PPP是可逆的。
AP=[133−3−5−3331][1−1−1−110101]=[122−1−2010−2]AP=\begin{bmatrix}1&3&3\\-3&-5&-3\\3&3&1\end{bmatrix}\begin{bmatrix}1&-1&-1\\-1&1&0\\1&0&1\end{bmatrix}=\begin{bmatrix}1&2&2\\-1&-2&0\\1&0&-2\end{bmatrix}AP=⎣⎡1−333−533−31⎦⎤⎣⎡1−11−110−101⎦⎤=⎣⎡1−112−2020−2⎦⎤
PD=[1−1−1−110101][1000−2000−2]=[122−1−2010−2]PD=\begin{bmatrix}1&-1&-1\\-1&1&0\\1&0&1\end{bmatrix}\begin{bmatrix}1&0&0\\0&-2&0\\0&0&-2\end{bmatrix}=\begin{bmatrix}1&2&2\\-1&-2&0\\1&0&-2\end{bmatrix}PD=⎣⎡1−11−110−101⎦⎤⎣⎡1000−2000−2⎦⎤=⎣⎡1−112−2020−2⎦⎤
可见AP=PDAP=PDAP=PD成立且PPP可逆,即A=PDP−1A=PDP^{-1}A=PDP−1成立,所以以上矩阵AAA的对角化成立。
例2:试对矩阵A=[243−4−6−3331]A=\begin{bmatrix}2&4&3\\-4&-6&-3\\3&3&1\end{bmatrix}A=⎣⎡2−434−633−31⎦⎤对角化。
解:
AAA的特征方程:
0=det(A−λI)=−(λ−1)(λ+2)20=det(A-\lambda I)=-(\lambda-1)(\lambda+2)^20=det(A−λI)=−(λ−1)(λ+2)2
所以特征值为:1和-2。
用上例的方法求得:
特征值1对应的特征向量为:v1=[1−11]v_1=\begin{bmatrix}1\\-1\\1\end{bmatrix}v1=⎣⎡1−11⎦⎤
特征值2对应的特征向量为:v2=[−110]v_2=\begin{bmatrix}-1\\1\\0\end{bmatrix}v2=⎣⎡−110⎦⎤
检验v1v_1v1、v2v_2v2是否线性相关:
[v1v20]=[1−10−110100]→[100010000][v_1\quad v_2\quad 0]=\begin{bmatrix}1&-1&0\\-1&1&0\\1&0&0\end{bmatrix}\rightarrow \begin{bmatrix}1&0&0\\0&1&0\\0&0&0\end{bmatrix}[v1v20]=⎣⎡1−11−110000⎦⎤→⎣⎡100010000⎦⎤
方程[v1v2]x=0[v_1\quad v_2]x=0[v1v2]x=0仅有平凡解,所以矩阵[v1v2][v_1\quad v_2][v1v2]各列线性无关,所以特征向量v1v_1v1、v2v_2v2线性无关。
但是根据对角化定理,虽然v1v_1v1、v2v_2v2线性无关,但是仅有2个特征向量,没达到3个所以矩阵AAA不能对角化。
例3:判断矩阵A=[5−8100700−2]A=\begin{bmatrix}5&-8&1\\0&0&7\\0&0&-2\end{bmatrix}A=⎣⎡500−80017−2⎦⎤是否可以对角化。
解:
因为AAA为三角阵,其主对角线元素就是特征值,所以其特征值为5、0和-2,这是三个相异的特征值,所以可以对角化。
总结:
一个判断矩阵对角化的充分条件:如果n×nn\times nn×n的矩阵AAA有nnn个相异的特征值,则可以对角化。
当然,n×nn\times nn×n的矩阵不是必须有nnn个不同特征值才可以对角化的,例如上面的例2,仅有2个不同特征值也能对角化。
奇异值分解(Singular Value Decomposition,SVD)
背景:由上述对矩阵对角化的讨论可知,矩阵的对角化,即A=PDP−1A=PDP^{-1}A=PDP−1(DDD为对角阵)的分解有很多简便的用途,但是不是所有矩阵都有这样的分解的。但是,所有的矩阵都可以分解成A=QDP−1A=QDP^{-1}A=QDP−1,这就是奇异值分解SVD,它是线性代数中最有用的分解之一。
例:矩阵A=[4111487−2]A=\begin{bmatrix}4&11&14\\8&7&-2\end{bmatrix}A=[4811714−2],线性变换x∣→Axx|\rightarrow Axx∣→Ax将R3R^3R3中的单位球{x:∣∣x∣∣=1}\{x:||x||=1\}{x:∣∣x∣∣=1}映射为R2R^2R2中的椭圆。请找出使得长度∣∣Ax∣∣||Ax||∣∣Ax∣∣最大的一个单位向量xxx,并计算这个最大长度。
解:
举例:例如R3R^3R3中的一个点x=[123]x=\begin{bmatrix}1\\2\\3\end{bmatrix}x=⎣⎡123⎦⎤,经过线性变换x∣→Axx|\rightarrow Axx∣→Ax后,即:
x′=Ax=[4111487−2][123]=[6816]x^{'}=Ax=\begin{bmatrix}4&11&14\\8&7&-2\end{bmatrix}\begin{bmatrix}1\\2\\3\end{bmatrix}=\begin{bmatrix}68\\16\end{bmatrix}x′=Ax=[4811714−2]⎣⎡123⎦⎤=[6816]
可见,原来的三维点变成了二维,其线性变换公式就是AxAxAx。
题目要求使得长度∣∣Ax∣∣||Ax||∣∣Ax∣∣最大,那么也是∣∣Ax∣∣2||Ax||^2∣∣Ax∣∣2最大,后者更好计算,因为:
∣∣Ax∣∣2=(Ax)T(Ax)=xTATAx=xT(ATA)x||Ax||^2=(Ax)^T(Ax)=x^TA^TAx=x^T(A^TA)x∣∣Ax∣∣2=(Ax)T(Ax)=xTATAx=xT(ATA)x,
其中(ATA)T=AT(AT)T=ATA(A^TA)^T=A^T(A^T)^T=A^TA(ATA)T=AT(AT)T=ATA,所以ATAA^TAATA是对称矩阵。
由于经过转化后的AxAxAx的模为xT(ATA)xx^T(A^TA)xxT(ATA)x,要使之最大,所以,现在问题转化为在条件∣∣x∣∣=1||x||=1∣∣x∣∣=1的限制下,求二次型xT(ATA)xx^T(A^TA)xxT(ATA)x最大值,并求对应的单位向量。
因为,二次型xT(ATA)xx^T(A^TA)xxT(ATA)x最大值就是矩阵ATAA^TAATA的最大特征值,所以先求阵ATAA^TAATA:
ATA=[4811714−2][4111487−2]=[801004010017014040140200]A^TA=\begin{bmatrix}4&8\\11&7\\14&-2\end{bmatrix}\begin{bmatrix}4&11&14\\8&7&-2\end{bmatrix}=\begin{bmatrix}80&100&40\\100&170&140\\40&140&200\end{bmatrix}ATA=⎣⎡4111487−2⎦⎤[4811714−2]=⎣⎡801004010017014040140200⎦⎤
所以二次型xT(ATA)x=80x12+170x22+200x32+200x1x2+80x1x3+280x2x3x^T(A^TA)x=80x_1^2+170x_2^2+200x_3^2+200x_1x_2+80x_1x_3+280x_2x_3xT(ATA)x=80x12+170x22+200x32+200x1x2+80x1x3+280x2x3
求出矩阵ATAA^TAATA特征值:
A =80 100 40100 170 14040 140 200>> eig(A)ans =-0.000090.0000360.0000
特征值和对应的单位特征向量:
λ1=360,u1=[132323]\lambda_1 =360,u_1=\begin{bmatrix}\frac{1}{3}\\\frac{2}{3}\\\frac{2}{3}\end{bmatrix}λ1=360,u1=⎣⎡313232⎦⎤
λ2=90,u2=[−23−1323]\lambda_2 =90,u_2=\begin{bmatrix}-\frac{2}{3}\\-\frac{1}{3}\\\frac{2}{3}\end{bmatrix}λ2=90,u2=⎣⎡−32−3132⎦⎤
λ3=0,u3=[23−2313]\lambda_3 =0,u_3=\begin{bmatrix}\frac{2}{3}\\-\frac{2}{3}\\\frac{1}{3}\end{bmatrix}λ3=0,u3=⎣⎡32−3231⎦⎤
因为∣∣Ax∣∣2=xT(ATA)x||Ax||^2=x^T(A^TA)x∣∣Ax∣∣2=xT(ATA)x的最大值为360,且在对应的单位特征向量u1=[23−2313]u_1=\begin{bmatrix}\frac{2}{3}\\-\frac{2}{3}\\\frac{1}{3}\end{bmatrix}u1=⎣⎡32−3231⎦⎤处取得,
Au1=[4111487−2][132323]=[186]=[y1y2]Au_1=\begin{bmatrix}4&11&14\\8&7&-2\end{bmatrix}\begin{bmatrix}\frac{1}{3}\\\frac{2}{3}\\\frac{2}{3}\end{bmatrix}=\begin{bmatrix}18\\6\end{bmatrix}=\begin{bmatrix}y_1\\y_2\end{bmatrix}Au1=[4811714−2]⎣⎡313232⎦⎤=[186]=[y1y2]
[y1y2]\begin{bmatrix}y_1\\y_2\end{bmatrix}[y1y2]为经过线性变换x∣→Axx|\rightarrow Axx∣→Ax后的坐标,上式表明,向量Au1=[186]Au_1=\begin{bmatrix}18\\6\end{bmatrix}Au1=[186]即指向新坐标系中距离原点最远的点(18,6)(18,6)(18,6),即该椭圆长轴的一个端点。且对于∣∣x∣∣=1||x||=1∣∣x∣∣=1,∣∣Ax∣∣||Ax||∣∣Ax∣∣最大值为360\sqrt{360}360。
奇异值(Singular Value)
定义:如果AAA为m×nm\times nm×n的矩阵,ATAA^TAATA为对称矩阵且可正交对角化,{u1,…,un}\{u_1,\dots,u_n\}{u1,…,un}是RnR^nRn的单位正交向基且构成ATAA^TAATA的特征向量,λ1,,…,λn\lambda_1,,\dots,\lambda_nλ1,,…,λn是ATAA^TAATA对应的特征值,那么对于1≤i≤n1\le i\le n1≤i≤n,有:
∣∣Aui∣∣2=(Aui)T(Aui)=viTATAui=uiT(ATA)ui=uiT(ATAui)=uiT(λiui)=λi||Au_i||^2=(Au_i)^T(Au_i)=v_i^TA^TAu_i=u_i^T(A^TA)u_i=u_i^T(A^TAu_i)=u_i^T(\lambda_iu_i)=\lambda_i∣∣Aui∣∣2=(Aui)T(Aui)=viTATAui=uiT(ATA)ui=uiT(ATAui)=uiT(λiui)=λi
即∣∣Aui∣∣2=λi||Au_i||^2=\lambda_i∣∣Aui∣∣2=λi,可见ATAA^TAATA的所有特征值非负,对所有特征值进行排列:
λ1≥λ2≥⋯≥λn≥0\lambda_1\ge \lambda_2\ge \dots \ge \lambda_n\ge0λ1≥λ2≥⋯≥λn≥0,
则矩阵AAA的奇异值是ATAA^TAATA特征值的平方根(按递减顺序排列),记作σ1,…,σn\sigma_1,\dots,\sigma_nσ1,…,σn,即σi=λi\sigma_i=\sqrt{\lambda_i}σi=λi。
由上例可知,矩阵AAA的奇异值其实是向量Au1,…,AunAu_1,\dots,Au_nAu1,…,Aun的长度。
所以,上例对应于特征值360、90、0的奇异值分别为
σ1=λ1=360\sigma_1=\sqrt{\lambda_1}=\sqrt{360}σ1=λ1=360
σ2=λ2=90\sigma_2=\sqrt{\lambda_2}=\sqrt{90}σ2=λ2=90
σ3=λ3=0=0\sigma_3=\sqrt{\lambda_3}=\sqrt{0}=0σ3=λ3=0=0
又因为AAA的第二个奇异值是∣∣Ax∣∣||Ax||∣∣Ax∣∣在所有与u1u_1u1正交的单位向量u2u_2u2上的最大值,且这个最大值在第二个单位特征向量u2u_2u2处获得,所以:
Au2=[4111487−2][−23−1323]=[3−9]Au_2=\begin{bmatrix}4&11&14\\8&7&-2\end{bmatrix}\begin{bmatrix}-\frac{2}{3}\\-\frac{1}{3}\\\frac{2}{3}\end{bmatrix}=\begin{bmatrix}3\\-9\end{bmatrix}Au2=[4811714−2]⎣⎡−32−3132⎦⎤=[3−9]
而点(3,−9)(3,-9)(3,−9)在新的椭圆的短轴端点。
所以,矩阵AAA的前两个奇异值其实是椭圆长版轴和短半轴的长度。
奇异值分解定理
定理:如果AAA是一个秩为rrr的m×nm\times nm×n的矩阵,那么存在一个形为Σ=[D000]\Sigma=\begin{bmatrix}D&0\\0&0\end{bmatrix}Σ=[D000]的m×nm\times nm×n的矩阵(其中DDD为r×rr\times rr×r的且对角线元素为正的对角阵,rrr不超过mmm、nnn中较小的那个),其中DDD的对角线元素是AAA的前rrr个奇异值,σ1≥σ2≥⋯≥σr≥0\sigma_1\ge\sigma_2\ge \dots \ge \sigma_r\ge0σ1≥σ2≥⋯≥σr≥0,并且存在一个m×mm\times mm×m的正交矩阵UUU和一个n×nn\times nn×n的正交矩阵VVV使得A=UΣVTA=U\Sigma V^TA=UΣVT。任何分解A=UΣVTA=U\Sigma V^TA=UΣVT都称为AAA的一个奇异值分解(SVD)。
注意,UUU和VVV不是由AAA唯一确定的。UUU中的列称为AAA的左奇异向量(Left Singular Vectors),VVV的列称为AAA的右奇异向量(Right Singular Vectors)。
例:求上例中的矩阵A=[4111487−2]A=\begin{bmatrix}4&11&14\\8&7&-2\end{bmatrix}A=[4811714−2]的一个奇异值分解。
解:
求奇异值分解可分三步
- 将矩阵ATAA^TAATA正交对角化。先求矩阵ATAA^TAATA的特征值及对应的特征向量的单位正交集。
- 计算矩阵VVV和矩阵Σ\SigmaΣ。将矩阵ATAA^TAATA的特征值降序排列,
由上例可知,
特征值和对应的单位特征向量:
λ1=360,u1=[132323]\lambda_1 =360,u_1=\begin{bmatrix}\frac{1}{3}\\\frac{2}{3}\\\frac{2}{3}\end{bmatrix}λ1=360,u1=⎣⎡313232⎦⎤
λ2=90,u2=[−23−1323]\lambda_2 =90,u_2=\begin{bmatrix}-\frac{2}{3}\\-\frac{1}{3}\\\frac{2}{3}\end{bmatrix}λ2=90,u2=⎣⎡−32−3132⎦⎤
λ3=0,u3=[23−2313]\lambda_3 =0,u_3=\begin{bmatrix}\frac{2}{3}\\-\frac{2}{3}\\\frac{1}{3}\end{bmatrix}λ3=0,u3=⎣⎡32−3231⎦⎤
所以
V=[u1u2u3]=[13−232323−13−23232313]V=\begin{bmatrix}u_1&u_2&u_3\end{bmatrix}=\begin{bmatrix}\frac{1}{3}&-\frac{2}{3}&\frac{2}{3}\\\frac{2}{3}&-\frac{1}{3}&-\frac{2}{3}\\\frac{2}{3}&\frac{2}{3}&\frac{1}{3}\end{bmatrix}V=[u1u2u3]=⎣⎡313232−32−313232−3231⎦⎤
下面构造矩阵Σ\SigmaΣ:
由于上例对应于特征值360、90、0的奇异值分别为
σ1=λ1=360\sigma_1=\sqrt{\lambda_1}=\sqrt{360}σ1=λ1=360
σ2=λ2=90\sigma_2=\sqrt{\lambda_2}=\sqrt{90}σ2=λ2=90
σ3=λ3=0=0\sigma_3=\sqrt{\lambda_3}=\sqrt{0}=0σ3=λ3=0=0
所以非零奇异值为矩阵DDD的对角线元素,所以:
D=[3600090]D=\begin{bmatrix}\sqrt{360}&0\\0&\sqrt{90}\end{bmatrix}D=[3600090]
而矩阵DDD是矩阵Σ\SigmaΣ的左上角,其他元素放0即可,所以:
Σ=[D0]=[360000900]\Sigma=\begin{bmatrix}D&0\end{bmatrix}=\begin{bmatrix}\sqrt{360}&0&0\\0&\sqrt{90}&0\end{bmatrix}Σ=[D0]=[360009000]
- 构造矩阵UUU。当矩阵AAA的秩为rrr时,矩阵UUU的前rrr列是从Au1,…,AunAu_1,\dots,Au_nAu1,…,Aun计算得到的单位向量。因为本例中,矩阵AAA有两个非零奇异值,所以rankA=2rank\space A=2rank A=2,且∣∣Au1∣∣=σ1||Au_1||=\sigma_1∣∣Au1∣∣=σ1,∣∣Au2∣∣=σ2||Au_2||=\sigma_2∣∣Au2∣∣=σ2
由于上面计算得:
Au1=[4111487−2][132323]=[186]Au_1=\begin{bmatrix}4&11&14\\8&7&-2\end{bmatrix}\begin{bmatrix}\frac{1}{3}\\\frac{2}{3}\\\frac{2}{3}\end{bmatrix}=\begin{bmatrix}18\\6\end{bmatrix}Au1=[4811714−2]⎣⎡313232⎦⎤=[186]
Au2=[4111487−2][−23−1323]=[3−9]Au_2=\begin{bmatrix}4&11&14\\8&7&-2\end{bmatrix}\begin{bmatrix}-\frac{2}{3}\\-\frac{1}{3}\\\frac{2}{3}\end{bmatrix}=\begin{bmatrix}3\\-9\end{bmatrix}Au2=[4811714−2]⎣⎡−32−3132⎦⎤=[3−9]
把向量Au1=[186]Au_1=\begin{bmatrix}18\\6\end{bmatrix}Au1=[186]和向量Au2=[3−9]Au_2=\begin{bmatrix}3\\-9\end{bmatrix}Au2=[3−9]单位化:
u1′=1σ1Au1=1182+62[186]=1360[186]=[310110]u_1^{'}=\frac{1}{\sigma_1}Au_1=\frac{1}{\sqrt{18^2+6^2}}\begin{bmatrix}18\\6\end{bmatrix}=\frac{1}{\sqrt{360}}\begin{bmatrix}18\\6\end{bmatrix}=\begin{bmatrix}\frac{3}{\sqrt{10}}\\\frac{1}{\sqrt{10}}\end{bmatrix}u1′=σ11Au1=182+621[186]=3601[186]=[103101]
u2′=1σ2Au2=132+(−9)2[3−9]=190[3−9]=[110−310]u_2^{'}=\frac{1}{\sigma_2}Au_2=\frac{1}{\sqrt{3^2+(-9)^2}}\begin{bmatrix}3\\-9\end{bmatrix}=\frac{1}{\sqrt{90}}\begin{bmatrix}3\\-9\end{bmatrix}=\begin{bmatrix}\frac{1}{\sqrt{10}}\\-\frac{3}{\sqrt{10}}\end{bmatrix}u2′=σ21Au2=32+(−9)21[3−9]=901[3−9]=[101−103]
所以,现在得到了属于R2R^2R2的基,{u1,u2}\{u_1,u_2\}{u1,u2},
所以构造U=[u1u2]=[310110110−310]U=\begin{bmatrix}u_1&u_2\end{bmatrix}=\begin{bmatrix}\frac{3}{\sqrt{10}}&\frac{1}{\sqrt{10}}\\\frac{1}{\sqrt{10}}&-\frac{3}{\sqrt{10}}\end{bmatrix}U=[u1u2]=[103101101−103]
所以AAA的一个奇异值分解为:
A=UΣVT=[310110110−310][360000900][132323−23−132323−2313]A=U\Sigma V^T=\begin{bmatrix}\frac{3}{\sqrt{10}}&\frac{1}{\sqrt{10}}\\\frac{1}{\sqrt{10}}&-\frac{3}{\sqrt{10}}\end{bmatrix}\begin{bmatrix}\sqrt{360}&0&0\\0&\sqrt{90}&0\end{bmatrix}\begin{bmatrix}\frac{1}{3}&\frac{2}{3}&\frac{2}{3}\\-\frac{2}{3}&-\frac{1}{3}&\frac{2}{3}\\\frac{2}{3}&-\frac{2}{3}&\frac{1}{3}\end{bmatrix}A=UΣVT=[103101101−103][360009000]⎣⎡31−323232−31−32323231⎦⎤
例4:求矩阵A=[1−1−222−2]A=\begin{bmatrix}1&-1\\-2&2\\2&-2\end{bmatrix}A=⎣⎡1−22−12−2⎦⎤的一个奇异值分解。
解:
先计算ATA=[9−9−99]A^TA=\begin{bmatrix}9&-9\\-9&9\end{bmatrix}ATA=[9−9−99](ATAA^TAATA为对称矩阵且可正交对角化),求得ATAA^TAATA特征值为18,0.
特征值18对应的单位特征向量为:v1=[−1212]v_1=\begin{bmatrix}-\frac{1}{\sqrt{2}}\\\frac{1}{\sqrt{2}}\end{bmatrix}v1=[−2121]
特征值0对应的单位特征向量为:v2=[1212]v_2=\begin{bmatrix}\frac{1}{\sqrt{2}}\\\frac{1}{\sqrt{2}}\end{bmatrix}v2=[2121]
所以V=[v1v2]=[−12121212]V=\begin{bmatrix}v_1&v_2\end{bmatrix}=\begin{bmatrix}-\frac{1}{\sqrt{2}}&\frac{1}{\sqrt{2}}\\\frac{1}{\sqrt{2}}&\frac{1}{\sqrt{2}}\end{bmatrix}V=[v1v2]=[−21212121]
矩阵的奇异值为σ1=18=32\sigma_1=\sqrt{18}=3\sqrt{2}σ1=18=32,σ2=0\sigma_2=0σ2=0,因为只有一个非零奇异值,所以矩阵DDD只有一个值,即D=32D=3\sqrt{2}D=32,矩阵Σ\SigmaΣ形状同AAA:
Σ=[3200000]\Sigma=\begin{bmatrix}3\sqrt{2}&0\\0&0\\0&0\end{bmatrix}Σ=⎣⎡3200000⎦⎤
为了构造UUU,先求Av1Av_1Av1、Av2Av_2Av2:
Av1=[−222−22]Av_1=\begin{bmatrix}-\sqrt{2}\\2\sqrt{2}\\-2\sqrt{2}\end{bmatrix}Av1=⎣⎡−222−22⎦⎤
Av2=[000]Av_2=\begin{bmatrix}0\\0\\0\end{bmatrix}Av2=⎣⎡000⎦⎤
将Av1Av_1Av1单位化:u1=[−1323−23]u_1=\begin{bmatrix}-\frac{1}{3}\\\frac{2}{3}\\-\frac{2}{3}\end{bmatrix}u1=⎣⎡−3132−32⎦⎤
矩阵UUU的前rrr列是从Au1,…,AunAu_1,\dots,Au_nAu1,…,Aun计算得到的单位向量。因为本例中,矩阵AAA只有有1个非零奇异值,所以rankA=1rank\space A=1rank A=1,且∣∣Av1∣∣=σ1||Av_1||=\sigma_1∣∣Av1∣∣=σ1。
所以本例中UUU的第一列是u1=[−1323−23]u_1=\begin{bmatrix}-\frac{1}{3}\\\frac{2}{3}\\-\frac{2}{3}\end{bmatrix}u1=⎣⎡−3132−32⎦⎤,而其他列要将{u1}\{u_1\}{u1}扩充为R3R^3R3的单位正交基才能得到。因此,要找到另外两个与u1u_1u1正交的单位向量u2u_2u2、u3u_3u3,此关系可表述为:
u1Tx=[−1323−23][x1x2x3]=−13x1+23x2−23x3=0u_1^Tx=\begin{bmatrix}-\frac{1}{3}&\frac{2}{3}&-\frac{2}{3}\end{bmatrix}\begin{bmatrix}x_1\\x_2\\x_3\end{bmatrix}=-\frac{1}{3}x_1+\frac{2}{3}x_2-\frac{2}{3}x_3=0u1Tx=[−3132−32]⎣⎡x1x2x3⎦⎤=−31x1+32x2−32x3=0
通解:x=[x1x2x3]=x2[210]+x3[−201]x=\begin{bmatrix}x_1\\x_2\\x_3\end{bmatrix}=x_2\begin{bmatrix}2\\1\\0\end{bmatrix}+x_3\begin{bmatrix}-2\\0\\1\end{bmatrix}x=⎣⎡x1x2x3⎦⎤=x2⎣⎡210⎦⎤+x3⎣⎡−201⎦⎤
u2=15[210]=[25150]u_2=\frac{1}{\sqrt5}\begin{bmatrix}2\\1\\0\end{bmatrix}=\begin{bmatrix}\frac{2}{\sqrt5}\\\frac{1}{\sqrt5}\\0\end{bmatrix}u2=51⎣⎡210⎦⎤=⎣⎡52510⎦⎤
由于[210]\begin{bmatrix}2\\1\\0\end{bmatrix}⎣⎡210⎦⎤、[−201]\begin{bmatrix}-2\\0\\1\end{bmatrix}⎣⎡−201⎦⎤与u1=[−1323−23]u_1=\begin{bmatrix}-\frac{1}{3}\\\frac{2}{3}\\-\frac{2}{3}\end{bmatrix}u1=⎣⎡−3132−32⎦⎤都正交,
下面用格拉姆施密特方法求Span{[210]Span\{\begin{bmatrix}2\\1\\0\end{bmatrix}Span{⎣⎡210⎦⎤,[−201]}\begin{bmatrix}-2\\0\\1\end{bmatrix}\}⎣⎡−201⎦⎤}的一个正交基:
令w1=[210]w_1=\begin{bmatrix}2\\1\\0\end{bmatrix}w1=⎣⎡210⎦⎤
w2=[−201]−−45[210]=[−25451]w_2=\begin{bmatrix}-2\\0\\1\end{bmatrix}-\frac{-4}{5}\begin{bmatrix}2\\1\\0\end{bmatrix}=\begin{bmatrix}-\frac{2}{5}\\\frac{4}{5}\\1\end{bmatrix}w2=⎣⎡−201⎦⎤−5−4⎣⎡210⎦⎤=⎣⎡−52541⎦⎤
标准化:
u2=15[210]=[25150]u_2=\frac{1}{\sqrt5}\begin{bmatrix}2\\1\\0\end{bmatrix}=\begin{bmatrix}\frac{2}{\sqrt5}\\\frac{1}{\sqrt5}\\0\end{bmatrix}u2=51⎣⎡210⎦⎤=⎣⎡52510⎦⎤
u3=545[−25451]=[−245445545]u_3=\frac{5}{\sqrt{45}}\begin{bmatrix}-\frac{2}{5}\\\frac{4}{5}\\1\end{bmatrix}=\begin{bmatrix}-\frac{2}{\sqrt{45}}\\\frac{4}{\sqrt{45}}\\\frac{5}{\sqrt{45}}\end{bmatrix}u3=455⎣⎡−52541⎦⎤=⎣⎢⎡−452454455⎦⎥⎤
所以:U=[u1u2u3]=[−1325−2452315445−230545]U=\begin{bmatrix}u_1&u_2&u_3\end{bmatrix}=\begin{bmatrix}-\frac{1}{3}&\frac{2}{\sqrt5}&-\frac{2}{\sqrt{45}}\\\frac{2}{3}&\frac{1}{\sqrt5}&\frac{4}{\sqrt{45}}\\-\frac{2}{3}&0&\frac{5}{\sqrt{45}}\end{bmatrix}U=[u1u2u3]=⎣⎢⎡−3132−3252510−452454455⎦⎥⎤
所以AAA的一个奇异值分解为:
A=UΣVT=[u1u2u3]=[−1325−2452315445−230545][3200000][−12121212]=[1−1−222−2]A=U\Sigma V^T=\begin{bmatrix}u_1&u_2&u_3\end{bmatrix}=\begin{bmatrix}-\frac{1}{3}&\frac{2}{\sqrt5}&-\frac{2}{\sqrt{45}}\\\frac{2}{3}&\frac{1}{\sqrt5}&\frac{4}{\sqrt{45}}\\-\frac{2}{3}&0&\frac{5}{\sqrt{45}}\end{bmatrix}\begin{bmatrix}3\sqrt{2}&0\\0&0\\0&0\end{bmatrix}\begin{bmatrix}-\frac{1}{\sqrt{2}}&\frac{1}{\sqrt{2}}\\\frac{1}{\sqrt{2}}&\frac{1}{\sqrt{2}}\end{bmatrix}=\begin{bmatrix}1&-1\\-2&2\\2&-2\end{bmatrix}A=UΣVT=[u1u2u3]=⎣⎢⎡−3132−3252510−452454455⎦⎥⎤⎣⎡3200000⎦⎤[−21212121]=⎣⎡1−22−12−2⎦⎤
经验算上述分解是正确的。
MATLAB做SVD分解
对于上例中的矩阵A=[1−1−222−2]A=\begin{bmatrix}1&-1\\-2&2\\2&-2\end{bmatrix}A=⎣⎡1−22−12−2⎦⎤,在MATLAB中做SVD分解,命令[U,S,V]=svd(A)
:
A =1 -1-2 22 -2>> [U,S,V]=svd(A)U =-0.3333 0.6667 -0.66670.6667 0.6667 0.3333-0.6667 0.3333 0.6667S =4.2426 00 00 0V =-0.7071 0.70710.7071 0.7071
可见MATLAB中得到的UUU矩阵第一列与手算是一致的,第二第三列则不一致,SSS矩阵与手算的Σ\SigmaΣ矩阵一致,VVV矩阵与手算的VTV^TVT矩阵一致。
特征值与特征向量、特征方程、特征多项式、矩阵相似、相似变换、矩阵对角化、奇异值分解(Singular Value Decomposition)手算加MATLAB相关推荐
- MIT | 数据分析、信号处理和机器学习中的矩阵方法 笔记系列 Lecture 6 Singular Value Decomposition (SVD)
本系列为MIT Gilbert Strang教授的"数据分析.信号处理和机器学习中的矩阵方法"的学习笔记. Gilbert Strang & Sarah Hansen | ...
- 机器学习中的数学基础:(1)实际应用中矩阵特征值与特征向量的几何意义
关于特征值.特征向量的讲解有很多的教程,对于这些枯燥的数学基础怎么运用到自己的实际计算机视觉实验中,是一项很重要的任务.算法的底层其实就是数学公式的各种结合与推导,有时间不是我们不能很好的去理解这些算 ...
- 矩阵特征值和特征向量详细计算过程(转载)
1.矩阵特征值和特征向量定义 A为n阶矩阵,若数λ和n维非0列向量x满足Ax=λx,那么数λ称为A的特征值,x称为A的对应于特征值λ的特征向量.式Ax=λx也可写成( A-λE)x=0,并且|λE-A ...
- 使用MTL库求解矩阵特征值和特征向量
关于矩阵的特征值和特征向量求解,大部分的数学运算库都进行了提供,下面是使用MTL库的接口进行封装. #include <mtl/matrix.h> #include <mtl/mtl ...
- MATLAB笔记5:矩阵的转置、求逆、旋转、翻转;矩阵的行列式、秩、迹;矩阵的特征值、特征向量
矩阵的转置.求逆.旋转.翻转 inv(A):求矩阵A的逆矩阵: 转置:A.'为矩阵A的转置,A'为矩阵A的共轭转置: rot90(A,k):将矩阵A逆时针方向旋转90°的k倍,k为1时可省略: fli ...
- ai数学之矩阵特征值、特征向量、矩阵分解
特征值和特征向量的意义 从定义出发,Ax=cx:A为n阶矩阵,c为特征值,x为特征向量. 矩阵A乘以x表示,对向量x进行一次转换(旋转或拉伸)(是一种线性转换),而该转换的效果为常数c乘以向量x(即只 ...
- 特征值与特征向量_机器学习和线性代数 - 特征值和特征向量
特征值和特征向量可能是线性代数中最重要的概念之一.从机器学习.量子计算.物理到许多数学和工程的问题,都可以通过找到一个矩阵的特征值和特征向量来解决. 根据定义(标量λ.向量v是特征值.特征向量A): ...
- 随机向量x的协方差阵_【科普】如何正确理解特征值与特征向量
Greeting! 特征值与特征向量是大学线性代数与统计学课程里的内容,当年强背了过去,并没有真正理解过这个问题.为了以后学习统计学习方法更方便,在此记录下学习文章以加深理解.(个人观点,如有错漏请提 ...
- 【线性代数】三、特征值和特征向量
目录 一.基本概念和性质 矩阵方阵考察特征向量 二.矩阵的相似 三.矩阵相似对角化 四.实对称矩阵和正交矩阵 五.题型 1.抽象型特征值和特征向量 2.两矩阵相似的判别和证明 3.求可逆矩阵P使得 P ...
最新文章
- C#流对象使用完后不立即释放的问题
- asp.net 发送邮件
- 51nod1236 序列求和 V3
- linux环境下创建postgis数据库,linux下搭建postgresql、postgis、pg_pathman环境步骤详解...
- 为什么应该用模块取代C/C++中的头文件?
- 新一代数据安全的制胜法宝-UBA
- 杭电1411 校庆神秘建筑
- 网络收包流程-软中断中process_backlog和poll方式处理流程(二)
- JSP和Servlet传值中文乱码解决
- 湖北移动中兴B860AV2.1_S905L_线刷固件包
- [Pytorch系列-33]:数据集 - torchvision与CIFAR10/CIFAR100详解
- Win7如何显示文件扩展名
- AutoCAD_FILEDIA
- php多条件筛选前台功能,JavaScript前端数据多条件筛选功能实现代码
- 微信关注事件bug记录
- 服务器的原点和限位信号,CANopen--基于DS402协议的伺服电机原点回零模式实现
- 输入股票、热门事件词,查最新消息
- 《PID》一篇文章带你搞懂使用PID
- 旅行商问题(深度优先搜索 回溯法 排列树)
- Java并发编程的艺术-阅读笔记和思维导图
热门文章
- 《Windows游戏编程大师技巧》(第二版)第1章(上)
- [业余知识:PC 硬件监控]使用WinRing0 2.0.0.20读取CPU温度
- matlab求能控标准型函数,实验三 利用Matlab分析能控性和能观性
- 计蒜客 A2236 马的管辖 暴力枚举 状态压缩
- 如何快速交付高价值的软件
- ConcurrentHashMap 红黑树转换分析
- 钉钉提供的内网穿透工具pierced 速度超快
- From Predictive to Prescriptive Analytics
- NPM包发布时报错code E401
- Flipper的NO APPLICATION SELECTED问题