引入
- SVD奇异值分解属于矩阵分解的知识,矩阵分解用白话解释就是将一个复杂的矩阵分解成一些特殊形式的矩阵,这些特殊形式的矩阵可能是上三角矩阵、下三角矩阵以及酉矩阵等等,这些特殊的矩阵往往具有一些优秀的性质。
- 说一下我写奇异值分解的动机,我写这篇文章的时候是本科,在研究6D视觉以及机器人抓取的时候接触了对极几何、PnP以及ICP,这些算法在求解时基本都用到了奇异值分解,而大多数博客默认奇异值分解你是会的,但具我所知矩阵论是研究生课程(有的线性代数书会介绍,但是与我讲的有区别,线性代数一般在实数域下,而矩阵论在复数域下),好像控制专业开的比较多,其他专业开的比较少,所以这里细致入微的进行介绍。
- 在写这篇文章的时候,默认线性代数的知识你是会的,超出线性代数的知识但又是SVD基础的我会在这篇预备知识里面介绍,如果预备知识会的可以直接看正题SVD奇异值分解(2)定义与例子
预备知识
1.酉矩阵
定义:设
A
∈
C
n
×
n
A\in C^{n\times n}
A∈Cn×n,若
A
A
A满足
A
H
A
=
I
o
r
A
−
1
=
A
H
A^{H}A=I \ or \ A^{-1}=A^{H}
AHA=I or A−1=AH
则称A为酉矩阵。
注:
C
C
C为复数域下的符号,如果把复数域退化到实数域那么酉矩阵也就是正交矩阵,正交矩阵的定义是$A^{T}A=I $,H表示共轭转置,至于为什么要共轭,我不知道,总之共轭是对的。
显然,当A是实方阵时,酉矩阵就是正交矩阵
定理:
(1) 若
A
A
A是酉矩阵,则
A
−
1
A^{-1}
A−1也是酉矩阵
(2)若A,B是酉矩阵,则AB也是酉矩阵
(3)若A是酉矩阵,则
∣
d
e
t
A
∣
=
1
\left|det \ A\right| = 1
∣det A∣=1
(
4
)
A
是
酉
矩
阵
的
充
分
必
要
条
件
是
,
它
的
n
个
列
向
量
是
两
两
正
交
的
单
位
向
量
\color{red}{(4)A是酉矩阵的充分必要条件是,它的n个列向量是两两正交的单位向量}
(4)A是酉矩阵的充分必要条件是,它的n个列向量是两两正交的单位向量
2.酉等价
定义:设
A
,
B
∈
C
m
×
n
A\ , B \in C^{m\times n}
A ,B∈Cm×n,若存在m阶酉矩阵U和n阶酉矩阵V,使得
U
H
A
V
=
B
U^{H}AV=B
UHAV=B,则称A与B酉等价。
可以看到酉等价并不局限于方阵,这也是奇异值分解相比于其他分解的优点。
3.奇异值
定义:设
A
∈
C
r
m
×
n
(
r
>
0
)
A\in C^{m\times n}_{r}(r>0)
A∈Crm×n(r>0),
A
H
A
A^{H}A
AHA的特征值为:
λ
1
⩾
λ
2
⩾
.
.
.
λ
r
>
λ
r
+
1
=
.
.
.
=
λ
n
=
0
\lambda_{1}\geqslant \lambda_{2} \geqslant ... \lambda_{r} > \lambda_{r+1}= ... =\lambda_{n}=0
λ1⩾λ2⩾...λr>λr+1=...=λn=0
则称
σ
i
=
λ
i
(
i
=
1
,
2
,
.
.
.
,
n
)
\sigma_{i}=\sqrt{\lambda _{i}}(i=1,2,...,n)
σi=λi(i=1,2,...,n)为 A的奇异值
-
这里解释一下C的下表为r代表C的秩为r,又因为 r a n k ( A H A ) = r a n k ( A ) = r rank(A^{H}A)=rank(A)=r rank(AHA)=rank(A)=r(定理),所以 A H A A^{H}A AHA的后r个特征值一定为0。
-
A H A A^{H}A AHA与 A A H AA^{H} AAH有相同的非零特征值(定理),从而A的非零奇异值的个数恰等于 r a n k A rankA rankA, A H A A^{H}A AHA与 A A H AA^{H} AAH有相同的非零奇异值且 A A A与 A H A^{H} AH有相同的非零奇异值,这里可以把 A A A看成 A H A A^{H}A AHA是显而易见可以得到的。