跳到主要内容

奇异值分解

阐述​

任何一个 m×nm\times n 矩阵可以分解为 m×rm\times r、r×rr\times r、r×nr\times n 矩阵的乘积:

A=UΣV∗A=U\Sigma V^*

其中 rr 是 AA 的秩,Σ=diag⁡(σ1,⋯ ,σr)\Sigma=\operatorname{diag}(\sigma_1,\cdots,\sigma_r) 而 σi>0\sigma_i>0 是 AA 的奇异值。UU 和 VV 是正交基,满足 U∗U=V∗V=1U^*U=V^*V=1.

显然,A∗AA^*A 具有非零特征值 λi=σi2\lambda_i=\sigma_i^2,特征向量就是 VV 中的向量,因此 \|A\|_2=\sigma_\max,并且条件数 \kappa(A)=\sigma_\max/\sigma_\min。

计算方法​

首先计算 A∗AA^*A 的特征值问题,得到正特征值和相应的特征向量 λr,vr\lambda_r,v_r;然后注意到 ui=Avi/σiu_i=Av_i/\sigma_i 是 AA∗AA^* 的特征向量。另外,我们有 N(A∗A)=N(A)N(A^*A)=N(A),也就是说它们的零空间相同。

所以,对于一个向量 xx,总是可以把它分解为在零空间和不在零空间中的两部分,

Ax=∑iAvivi∗x=(∑iσiuivi∗)xAx=\sum_iAv_iv_i^*x=\left(\sum_i\sigma_iu_iv_i^*\right)x

full SVD​

奇异值分解也可以写成 A=UΣV∗A=U\Sigma V^*,m×mm\times m、m×nm\times n、n×nn\times n,这样左右两边就都是酉矩阵。这个分解和前面的关系是

UΣV=(U^,U^⊥)(Σ^000)(V^,V^⊥)∗U\Sigma V=(\hat U,\hat U^\perp)\begin{pmatrix}\hat\Sigma&0\\0&0\end{pmatrix}(\hat V,\hat V^\perp)^*

其中 U^⊥\hat U^\perp 是 AA∗AA^* 的特征值 0 向量空间,而 V^⊥\hat V^\perp 是 A∗AA^*A 的特征值 0 向量空间。

SVD 和低秩近似​

A=∑iσiuivi∗≈∑i=1r′<rσiuivi∗A=\sum_i\sigma_iu_iv_i^*\approx\sum_{i=1}^{r'<r}\sigma_iu_iv_i^*

也就是说可以只看其中几个比较大的特征值。

实例​

性质​

从 SVD 可以推导出,矩阵的条件数

\kappa(A)=\begin{cases}\sigma_\max/\sigma_\min&\operatorname{rank}(A)=n\\\infty&\operatorname{rank}(A)<n\end{cases}

另外,注意到 A∗AA^*A 本身具有奇异值分解 V^Σ^2V^∗\hat V\hat\Sigma^2\hat V^*,所以 κ(A∗A)=κ(A)2\kappa(A^*A)=\kappa(A)^2。

如果 QQ 的列是正交的,那么实际上它的 SVD 就是自身,所以所有的奇异值都是 1. 这样 κ(Q)=1\kappa(Q)=1.

相关内容​

参考文献​