相关文章
从几何视角看奇异值分解(MATLAB实现)
奇异值分解的应用及MATLAB实现(图像压缩、谱聚类、潜在语义分析、主成分分析、背景删除等)
奇异值分解
设
A
∈
C
r
m
×
n
(
r
>
0
)
\mathbf{A \in C_r^{m \times n} (r>0)}
A∈Crm×n(r>0),则存在
m
m
m阶的酉矩阵
U
\mathbf{U}
U和
n
n
n的酉矩阵
V
\mathbf{V}
V,使得
U
н
A
V
=
[
Σ
O
O
O
]
(
1.1
)
U^\text{н}AV=\begin{bmatrix}\boldsymbol{\Sigma}&\boldsymbol{O}\\\boldsymbol{O}&\boldsymbol{O}\end{bmatrix} \quad(1.1)
UнAV=[ΣOOO](1.1)
其中
Σ
=
\boldsymbol{\Sigma}=
Σ=diag
(
σ
1
,
σ
2
,
.
.
.
,
σ
r
)
(\sigma_1,\sigma_2,...,\sigma_r)
(σ1,σ2,...,σr),而
σ
i
(
i
=
1
,
2
,
.
.
.
,
r
)
\sigma_i(i=1,2,...,r)
σi(i=1,2,...,r)为矩阵
A
\boldsymbol{A}
A的全部非零奇异值,其中
σ
i
=
λ
i
\sigma_i= \sqrt{\lambda_i}
σi=λi,
λ
i
\lambda_i
λi是
A
н
A
\mathbf{A^\text{н}A}
AнA的特征值。
该结论证明如下:
设Hermite矩阵
A
н
A
\mathbf{A^\text{н}A}
AнA的特征值为
λ
1
⩾
λ
2
⩾
⋅
⋅
⋅
⩾
λ
r
>
λ
r
+
1
=
⋅
⋅
⋅
=
λ
n
=
0
\lambda_1\geqslant\lambda_2\geqslant\cdotp\cdotp\cdotp\geqslant\lambda_r>\lambda_{r+1}=\cdotp\cdotp\cdotp=\lambda_n=0
λ1⩾λ2⩾⋅⋅⋅⩾λr>λr+1=⋅⋅⋅=λn=0
因为
A
\mathbf{A}
A酉相似于对角矩阵的充要条件是
A
\mathbf{A}
A为正规矩阵(满足
A
A
н
=
A
н
A
\mathbf{AA^\text{н}}=\mathbf{A^\text{н}A}
AAн=AнA),则存在
n
n
n阶酉矩阵
V
\mathbf{V}
V,使得
V
H
(
A
H
A
)
V
=
[
λ
1
⋱
λ
n
]
=
[
Σ
2
O
0
0
]
(
1.2
)
\boldsymbol{V}^\mathrm{H}(\boldsymbol{A}^\mathrm{H}\boldsymbol{A})\boldsymbol{V}=\begin{bmatrix}\lambda_1&&\\&\ddots&\\&&\lambda_n\end{bmatrix}=\begin{bmatrix}\boldsymbol{\Sigma}^2&\boldsymbol{O}\\\boldsymbol{0}&\boldsymbol{0}\end{bmatrix} \quad(1.2)
VH(AHA)V=
λ1⋱λn
=[Σ20O0](1.2)
将
V
\mathbf{V}
V分块为
V
=
[
V
1
⋮
V
2
]
,
V
1
∈
C
r
n
×
r
,
V
2
∈
C
n
−
r
n
×
(
n
−
r
)
V=\begin{bmatrix}V_1&\varvdots&V_2\end{bmatrix},\quad V_1\in\mathbf{C}_r^{n\times r},V_2\in\mathbf{C}_{n-r}^{n\times(n-r)}
V=[V1⋮V2],V1∈Crn×r,V2∈Cn−rn×(n−r)
并改写式
(
1.2
)
(1.2)
(1.2)为
A
H
A
V
=
V
[
Σ
2
O
O
O
]
A^\mathrm{H}AV=V{\begin{bmatrix}\boldsymbol{\Sigma}^2&\boldsymbol{O}\\\boldsymbol{O}&\boldsymbol{O}\end{bmatrix}}
AHAV=V[Σ2OOO]
则有
A
H
A
V
1
=
V
1
Σ
2
,
A
H
A
V
2
=
O
(
1.3
)
A^\mathrm{H}AV_1=V_1\boldsymbol{\Sigma}^2,\quad A^\mathrm{H}AV_2=\boldsymbol{O} \quad(1.3)
AHAV1=V1Σ2,AHAV2=O(1.3)
由式
(
1.3
)
(1.3)
(1.3)的第一式可得
V
1
H
A
H
A
V
1
=
Σ
2
V_1^\mathrm{H}A^\mathrm{H}AV_1=\boldsymbol{\Sigma}^2
V1HAHAV1=Σ2,或者
(
A
V
1
Σ
−
1
)
H
(
A
V
1
Σ
−
1
)
=
I
r
(AV_1\boldsymbol{\Sigma}^{-1})^\mathrm{H}(AV_1\boldsymbol{\Sigma}^{-1})=I_r
(AV1Σ−1)H(AV1Σ−1)=Ir
由式
(
1.3
)
(1.3)
(1.3)的第二式可得
(
A
V
2
)
H
(
A
V
2
)
=
0
或
A
V
2
=
0
(AV_2)^{\mathrm{H}}(AV_2)=0\quad\text{或}\quad AV_2=0
(AV2)H(AV2)=0或AV2=0
令
U
1
=
A
V
1
Σ
−
1
\boldsymbol{U}_{1}=\boldsymbol{A}\boldsymbol{V}_{1}\boldsymbol{\Sigma}^{-1}
U1=AV1Σ−1,则
U
1
=
I
r
\boldsymbol{U}_{1}=\boldsymbol{I}_{r}
U1=Ir,即
U
1
\boldsymbol{U}_{1}
U1的
r
r
r个列是两两正交的单位向量,记作
U
1
=
(
u
1
,
u
2
,
…
,
u
r
)
\boldsymbol{U}_{1}=(\boldsymbol{u}_{1},\boldsymbol{u}_{2},\ldots,\boldsymbol{u}_{r})
U1=(u1,u2,…,ur),可将
u
1
,
u
2
,
…
,
u
r
\boldsymbol{u}_{1},\boldsymbol{u}_{2},\ldots,\boldsymbol{u}_{r}
u1,u2,…,ur,扩充为
C
m
\mathbf{C}^{m}
Cm的标准正交基,记增添的向量为
u
r
+
1
,
…
,
u
m
\boldsymbol{u}_{r+1},\ldots,\boldsymbol{u}_{m}
ur+1,…,um,并构造矩阵
U
2
=
(
u
r
+
1
,
…
,
u
m
)
\boldsymbol{U}_{2}=(\boldsymbol{u}_{r+1},\ldots,\boldsymbol{u}_{m})
U2=(ur+1,…,um),则
U
=
[
U
1
⋮
U
2
]
=
(
u
1
,
u
2
,
…
,
u
r
,
u
r
+
1
,
…
,
u
m
)
\mathbf{U=\begin{bmatrix}U_1 & \vdots & U_2\end{bmatrix}=(u_1,u_2,\ldots,u_r,u_{r+1},\ldots,u_m)}
U=[U1⋮U2]=(u1,u2,…,ur,ur+1,…,um)
是
m
m
m阶酉矩阵,且有
U
1
H
U
1
=
I
r
,
U
2
H
U
1
=
O
\mathbf{ U_1{}^{\mathrm{H}}U_1=I_r,\quad U_2{}^{\mathrm{H}}U_1=O }
U1HU1=Ir,U2HU1=O
于是可得
U
H
A
V
=
U
H
[
A
V
1
⋮
A
V
2
]
=
[
U
1
H
U
2
H
]
[
U
1
Σ
⋮
O
]
=
[
U
1
H
U
1
Σ
O
U
2
H
U
1
Σ
O
]
=
[
Σ
O
O
O
]
\begin{aligned}\boldsymbol{U}^\mathrm{H}\boldsymbol{A}\boldsymbol{V}&=\boldsymbol{U}^\mathrm{H}\begin{bmatrix}\boldsymbol{A}\boldsymbol{V}_1& \vdots &\boldsymbol{A}\boldsymbol{V}_2\end{bmatrix}=\begin{bmatrix}\boldsymbol{U}_1^\mathrm{H}\\\boldsymbol{U}_2^\mathrm{H}\end{bmatrix}\begin{bmatrix}\boldsymbol{U}_1\boldsymbol{\Sigma}& \vdots &\boldsymbol{O}\end{bmatrix}=\begin{bmatrix}\boldsymbol{U}_1^\mathrm{H}\boldsymbol{U}_1\boldsymbol{\Sigma}&\boldsymbol{O}\\\boldsymbol{U}_2^\mathrm{H}\boldsymbol{U}_1\boldsymbol{\Sigma}&\boldsymbol{O}\end{bmatrix}=\begin{bmatrix}\boldsymbol{\Sigma}&\boldsymbol{O}\\\boldsymbol{O}&\boldsymbol{O}\end{bmatrix}\end{aligned}
UHAV=UH[AV1⋮AV2]=[U1HU2H][U1Σ⋮O]=[U1HU1ΣU2HU1ΣOO]=[ΣOOO]
以上为式
(
1.1
)
(1.1)
(1.1)的证明过程,将其改写为
A
=
U
[
Σ
O
O
O
]
V
н
=
U
S
V
н
(
1.4
)
A =U\begin{bmatrix}\boldsymbol{\Sigma}&\boldsymbol{O}\\\boldsymbol{O}&\boldsymbol{O}\end{bmatrix}V^\text{н} = USV^\text{н} \quad(1.4)
A=U[ΣOOO]Vн=USVн(1.4)
我们称式
(
1.4
)
(1.4)
(1.4)为矩阵
A
\mathbf{A}
A的奇异值分解(Singular Value Decomposition, SVD)。
值得注意的是: 矩阵的奇异值概念是对矩阵的特征值概念的推广,矩阵的奇异值分解是对矩阵的正交相似对角化问题的推广,任何矩阵都可以进奇异值分解,但只有可对角化的矩阵才能进行特征值分解。
参考文献
[1] 张凯院, 徐仲等. 矩阵论.