矩阵分解

Deadly 提交于 2019-12-09 22:31:27

矩阵的奇异值分解(Singular Value Decomposition):


定义:设矩阵ACrm×nA \in C_r^{m\times n},λi\lambda _iAAH(AHA)AA^H(A^HA)的非零特征值,则称σi=λi\sigma _i=\sqrt{\lambda _i}AA的奇异值,i=1,2,,ri=1,2,\cdots,r
定理:设矩阵ACrm×nA \in C_r^{m\times n},则存在UUm×mU \in U^{m\times m}VUn×nV \in U^{n\times n},使得A=U[Δ000]VHA=U \left [ \begin{matrix} \Delta &0\\ 0&0\end{matrix} \right]V^H,其中Δ=diag[σ1,σ2,,σr]\Delta=diag[\sigma _1,\sigma _2,\cdots,\sigma _r]σ1σ2σr\sigma _1 \geq \sigma _2 \geq \cdots \geq \sigma _rAA的奇异值。
证明:因为AAHAA^H是正规阵,所以存在UUm×nU\in U^{m\times n} ,使得UHAAHU=diag[σ12,σ22,,σr2,0,,0]=[ΔΔH000]U^HAA^HU=diag[\sigma _1^2,\sigma _2^2, \cdots,\sigma _r^2,0,\cdots,0]=\left[\begin{matrix}\Delta \Delta ^H&0\\0&0\end{matrix}\right ]
σ12σ22σr2\sigma _1^2 \geq \sigma _2^2 \geq \cdots \geq\sigma _r^2
其中Δ=diag[σ1,σ2,,σr]\Delta=diag[\sigma _1,\sigma _2,\cdots,\sigma _r]。设U=[U1U2]U=[\begin{array}{cc}U_1&U_2\end{array}],则UHAAHU=[U1HU2H]AAH[U1U2]=[U1HU2H][AAHU1AAHU2]=[U1HAAHU1U1HAAHU2U2HAAHU1U2HAAHU2]=[ΔΔH000]U^HAA^HU=\left[ \begin{array} {c}U_1^H\\U_2^H\end{array}\right]AA^H\left[\begin{array}{cc}U_1&U_2\end{array}\right]\\=\left[ \begin{array}{c} U_1^H\\U_2^H\end{array}\right]\left[\begin{array}{cc}AA^HU_1&AA^HU_2\end{array}\right]\\=\left[\begin{matrix}U_1^HAA^HU_1&U_1^HAA^HU_2\\U_2^HAA^HU_1&U_2^HAA^HU_2\end{matrix}\right]\\=\left[\begin{matrix}\Delta \Delta ^H&0\\0&0\end{matrix}\right]故有U1HAAHU1=ΔΔHU1HAAHU2=0U2HAAHU1=0U2HAAHU2=0U_1^HAA^HU_1=\Delta \Delta ^H \\U_1^HAA^HU_2=0\\U_2^HAA^HU_1=0\\U_2^HAA^HU_2=0V1=AHU1ΔHV_1=A^HU_1\Delta ^{-H},则V1HV1=Δ1U1HAAHU1ΔHV_1^HV_1=\Delta ^{-1}U_1^HAA^HU_1\Delta ^{-H},由U1HAAHU1=ΔΔHU_1^HAA^HU_1=\Delta \Delta ^HV1HV1=ErV_1^HV_1=E_r所以V1V_1为次酉阵,即V1Urn×rV_1 \in U_r^{n\times r},故存在V2Unrn×(nr)V_2 \in U_{n-r}^{n\times (n-r)},使得V=[V1V2]Un×nV=[\begin{array}{cc}V_1&V_2\end{array}]\in U^{n\times n},所以UHAV=[U1HU2H]A[V1V2]=[U1HAV1U1HAV2U2HAV1U2HAV2]U^HAV=\left [ \begin{array}{c}U_1^H\\U_2^H\end{array}\right]A[\begin{array}{cc}V_1&V_2\end{array}]=\left [ \begin{matrix} U_1^HAV_1&U_1^HAV_2\\U_2^HAV_1&U_2^HAV_2\end{matrix}\right]U1HAAHU1=ΔΔHU_1^HAA^HU_1=\Delta \Delta ^HU1HAV1=U1HAAHU1ΔH=ΔU_1^HAV_1=U_1^HAA^HU_1\Delta ^{-H}=\DeltaU2HAAHU2=(AHU2)H(AHU2)=0U_2^HAA^HU_2=(A^HU_2)^H(A^HU_2)=0AHU2=0U2HA=0A^HU_2=0,U_2^HA=0所以U2HAV1=0U2HAV2=0U_2^HAV_1=0,U_2^HAV_2=0。又因为V1=AHU1ΔHV1ΔH=AHU1U1HA=ΔV1HV_1=A^HU_1\Delta ^{-H}\Rightarrow V_1\Delta ^H=A^HU_1 \Rightarrow U_1^HA=\Delta V_1^H所以U1HAV2=ΔV1HV2=0U_1^HAV_2=\Delta V_1^HV_2=0。故UHAV=[Δ000]U^HAV=\left[\begin{matrix} \Delta&0\\0&0\end{matrix}\right],即A=U[Δ000]VHA=U\left[\begin{matrix} \Delta&0\\0&0\end{matrix}\right]V^H


分解步骤(SVD):


步骤1:求出AAH(AHA)AA^H(A^HA)全部非零特征值λi\lambda _i,记Δ=diag[σ1,σ2,,σr]\Delta=diag[\sigma _1,\sigma _2,\cdots,\sigma _r],且σ1σ2σr\sigma _1 \geq \sigma _2 \geq \cdots \geq \sigma _rAA的正奇异值;
步骤2:求酉矩阵UUm×m(VVn×n)U \in U^{m\times m}(V \in V^{n\times n}),使得UHAAHU=diag[σ12,σ22,,σr2,0,,0](VHAHAV=diag[σ12,σ22,,σr2,0,,0])U^HAA^HU=diag[\sigma _1^2,\sigma _2^2, \cdots,\sigma _r^2,0,\cdots,0]\\(V^HA^HAV=diag[\sigma _1^2,\sigma _2^2, \cdots,\sigma _r^2,0,\cdots,0])
步骤3:设U=[U1U2](V=[V1V2])U=[\begin{array}{cc}U_1&U_2\end{array}](V=[\begin{array}{cc}V_1&V_2\end{array}]),其中U1(V1)U_1(V_1)U(V)U(V)的前rr 列,令V1=AHU1ΔH(U1=AV1Δ1)V_1=A^HU_1\Delta ^{-H}(U_1=AV_1\Delta ^{-1}),则V1(U1)V_1(U_1)为次酉阵,求V2Unrn×(nr)(U2Umrm×(mr))V_2\in U_{n-r}^{n\times (n-r)}(U_2\in U_{m-r}^{m\times (m-r)}),使得V=[V1V2]Un×n(U=[U1U2]Um×m)V=[\begin{array}{cc}V_1&V_2\end{array}]\in U^{n\times n}(U=[\begin{array}{cc}U_1&U_2\end{array}]\in U^{m\times m})
步骤4A=U[Δ000]VHA=U\left[\begin{matrix} \Delta&0\\0&0\end{matrix}\right]V^H


几何意义(SVD):


Δ\Delta视为放缩矩阵,UVU,V视为旋转矩阵。
因此,M=ANA=UΔVHM=AN,A=U\Delta V^H可以直观的解释为一个图像NN经过AA变换成另一个图像MM的过程,首先经过VHV^H的旋转,再经过Δ\Delta的放缩,最后在经过UU的旋转得到最终的图像。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!