统计学习方法第15章-奇异值分解SVD
定义矩阵的奇异值分解(SVD)是指,将一个非零的 m×nm \times nm×n 实矩阵 A,A∈Rm×nA, A \in \mathbf{R}^{m \times n}A,A∈Rm×n, 表示为以下三个实矩阵乘积形式的运算, 即进行矩阵的因子分解:A=UΣVTA=U \Sigma V^{\mathrm{T}} A=UΣVT其中,UUU 是 mmm 阶正交矩阵, VVV 是 nnn 阶正交矩阵,
定义
矩阵的奇异值分解(SVD)是指,将一个非零的 m×nm \times nm×n 实矩阵 A,A∈Rm×nA, A \in \mathbf{R}^{m \times n}A,A∈Rm×n, 表示为三个实矩阵相乘的形式:
A=UΣVTA=U \Sigma V^{\mathrm{T}} A=UΣVT
其中,UUU 是 mmm 阶正交矩阵, VVV 是 nnn 阶正交矩阵,Σ\SigmaΣ 是由降序排列的非负的对角线元素组成的 m×nm \times nm×n 矩形对角矩阵, 满足
UUT=IVVT=IΣ=diag(σ1,σ2,⋯ ,σp)σ1⩾σ2⩾⋯⩾σp⩾0p=min(m,n)\begin{aligned} &U U^{\mathrm{T}}=I \\ &V V^{\mathrm{T}}=I \\ &\Sigma=\operatorname{diag}\left(\sigma_{1}, \sigma_{2}, \cdots, \sigma_{p}\right) \\ &\sigma_{1} \geqslant \sigma_{2} \geqslant \cdots \geqslant \sigma_{p} \geqslant 0 \\ &p=\min (m, n) \end{aligned}UUT=IVVT=IΣ=diag(σ1,σ2,⋯,σp)σ1⩾σ2⩾⋯⩾σp⩾0p=min(m,n)
σi\sigma_{i}σi成称为矩阵AAA的奇异值,UUU的列向量称为左奇异向量,VVV的列向量称为右奇异向量
ps:奇异值分解不要求矩阵AAA是方阵,矩阵的奇异值分解可以看作是方阵对角化的推广
常用形式
以上给出的奇异值分解又称为完全奇异值分解,实际常用的是奇异值分解的紧凑形式和截断形式。
设有m×nm \times nm×n 实矩阵 AAA, 其秩为 rank(A)=r,r⩽min(m,n)\operatorname{rank}(A)=r, r \leqslant \min (m, n)rank(A)=r,r⩽min(m,n):
紧奇异值分解:
A=UrΣrVrTA=U_{r} \Sigma_{r} V_{r}^{\mathrm{T}}A=UrΣrVrT
其中,UrU_{r}Ur 是 m×rm \times rm×r 矩阵, VrV_{r}Vr 是 n×rn \times rn×r 矩阵, Σr\Sigma_{r}Σr 是 rrr 阶对角矩阵;矩阵 UrU_{r}Ur 由完全奇异值分解中 UUU 的前 rrr 列、矩阵 VrV_{r}Vr 由 VVV 的前 rrr 列、矩阵Σr\Sigma_{r}Σr 由 Σ\SigmaΣ 的前 rrr 个对角线元素组成。紧奇异值分解的对角矩阵 Σr\Sigma_{r}Σr 的秩与原始矩阵 AAA 的秩相等。
截断奇异值分解:
A≈UkΣkVkTA \approx U_{k} \Sigma_{k} V_{k}^{\mathrm{T}}A≈UkΣkVkT
其中,0<k<r0<k<r0<k<r,UkU_{k}Uk 是 m×km \times km×k 矩阵, VkV_{k}Vk 是 n×kn \times kn×k 矩阵, Σk\Sigma_{k}Σk 是 kkk 阶对角矩阵; 矩阵 UkU_{k}Uk 由完全奇异值分解中 UUU 的前 kkk 列矩阵 VkV_{k}Vk 由 VVV 的前 kkk 列、矩阵 Σk\Sigma_{k}Σk 由 Σ\SigmaΣ 的前 kkk 个对角线元素组成。对角矩阵Σk\Sigma_{k}Σk的秩比原始矩阵AAA 的秩低
性质
(1)设矩阵 AAA 的奇异值分解为 A=UΣVTA=U \Sigma V^{\mathrm{T}}A=UΣVT, 则以下关系成立:
ATA=(UΣVT)T(UΣVT)=V(ΣTΣ)VTAAT=(UΣVT)(UΣVT)T=U(ΣΣT)UT \begin{aligned} &A^{\mathrm{T}} A=\left(U \Sigma V^{\mathrm{T}}\right)^{\mathrm{T}}\left(U \Sigma V^{\mathrm{T}}\right)=V\left(\Sigma^{\mathrm{T}} \Sigma\right) V^{\mathrm{T}} \\ &A A^{\mathrm{T}}=\left(U \Sigma V^{\mathrm{T}}\right)\left(U \Sigma V^{\mathrm{T}}\right)^{\mathrm{T}}=U\left(\Sigma \Sigma^{\mathrm{T}}\right) U^{\mathrm{T}} \end{aligned} ATA=(UΣVT)T(UΣVT)=V(ΣTΣ)VTAAT=(UΣVT)(UΣVT)T=U(ΣΣT)UT
(2)矩阵AAA的奇异值分解中,左奇异向量,右奇异向量和奇异值存在一一对应的关系
(3)矩阵 AAA 的奇异值分解中,奇异值 σ1,σ2,⋯ ,σn\sigma_{1}, \sigma_{2}, \cdots, \sigma_{n}σ1,σ2,⋯,σn 是唯一的,而矩阵 UUU 和 VVV 不 是唯一的。
(4)矩阵 AAA 和 Σ\SigmaΣ 的秩相等, 等于正奇异值 σi\sigma_{i}σi 的个数 r(r(r( 包含重复的奇异值,奇异值都是非负的)
(5)矩阵 AAA 的 rrr 个右奇异向量 v1,v2,⋯ ,vrv_{1}, v_{2}, \cdots, v_{r}v1,v2,⋯,vr 构成 ATA^{\mathrm{T}}AT 的值域 R(AT)R\left(A^{\mathrm{T}}\right)R(AT) 的一组标准正交基
几何解释
从线性变换的角度理解奇异值分解:
m×nm \times nm×n 矩阵AAA 表示从 nnn 维空间 Rn\mathbf{R}^{n}Rn 到 mmm 维 空间 Rm\mathbf{R}^{m}Rm 的一个线性变换,
T:x→Ax T: x \rightarrow A xT:x→Ax
x∈Rn,Ax∈Rm,xx \in \mathbf{R}^{n}, A x \in \mathbf{R}^{m}, xx∈Rn,Ax∈Rm,x 和 AxA xAx 分别是各自空间的向量。
A=UΣVTA=U \Sigma V^{\mathrm{T}}A=UΣVT 奇异值分解可以看作, 将线性变换AAA转换为三个简单变换. 例如下图, 给出了原始空间的标准正交基 (红色与黄色),经过坐标系的旋转变换 VTV^{\mathrm{T}}VT 、坐标轴的缩放变换 Σ\SigmaΣ, 坐标系的旋转变换 UUU ,得到和经过线性变换 AAA 等价的结果。

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐
所有评论(0)