统计学习方法第15章-奇异值分解SVD

定义

矩阵的奇异值分解(SVD)是指,将一个非零的 m × n m \times n m×n 实矩阵 A , A ∈ R m × n A, A \in \mathbf{R}^{m \times n} A,ARm×n, 表示为三个实矩阵相乘的形式:
A = U Σ V T A=U \Sigma V^{\mathrm{T}} A=UΣVT
其中, U U U m m m 阶正交矩阵, V V V n n n 阶正交矩阵, Σ \Sigma Σ 是由降序排列的非负的对角线元素组成的 m × n m \times n m×n 矩形对角矩阵, 满足

U U T = I V V T = I Σ = diag ⁡ ( σ 1 , σ 2 , ⋯   , σ p ) σ 1 ⩾ σ 2 ⩾ ⋯ ⩾ σ p ⩾ 0 p = 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σp0p=min(m,n)

σ i \sigma_{i} σi成称为矩阵 A A A的奇异值, U U U的列向量称为左奇异向量, V V V的列向量称为右奇异向量

ps:奇异值分解不要求矩阵 A A A是方阵,矩阵的奇异值分解可以看作是方阵对角化的推广

常用形式

以上给出的奇异值分解又称为完全奇异值分解,实际常用的是奇异值分解的紧凑形式和截断形式。

设有 m × n m \times n m×n 实矩阵 A A A, 其秩为 rank ⁡ ( A ) = r , r ⩽ min ⁡ ( m , n ) \operatorname{rank}(A)=r, r \leqslant \min (m, n) rank(A)=r,rmin(m,n):

紧奇异值分解:
A = U r Σ r V r T A=U_{r} \Sigma_{r} V_{r}^{\mathrm{T}} A=UrΣrVrT

其中, U r U_{r} Ur m × r m \times r m×r 矩阵, V r V_{r} Vr n × r n \times r n×r 矩阵, Σ r \Sigma_{r} Σr r r r 阶对角矩阵;矩阵 U r U_{r} Ur 由完全奇异值分解中 U U U 的前 r r r 列、矩阵 V r V_{r} Vr V V V 的前 r r r 列、矩阵 Σ r \Sigma_{r} Σr Σ \Sigma Σ 的前 r r r 个对角线元素组成。紧奇异值分解的对角矩阵 Σ r \Sigma_{r} Σr 的秩与原始矩阵 A A A 的秩相等。

截断奇异值分解

A ≈ U k Σ k V k T A \approx U_{k} \Sigma_{k} V_{k}^{\mathrm{T}} AUkΣkVkT

其中, 0 < k < r 00<k<r U k U_{k} Uk m × k m \times k m×k 矩阵, V k V_{k} Vk n × k n \times k n×k 矩阵, Σ k \Sigma_{k} Σk k k k 阶对角矩阵; 矩阵 U k U_{k} Uk 由完全奇异值分解中 U U U 的前 k k k 列矩阵 V k V_{k} Vk V V V 的前 k k k 列、矩阵 Σ k \Sigma_{k} Σk Σ \Sigma Σ 的前 k k k 个对角线元素组成。对角矩阵 Σ k \Sigma_{k} Σk的秩比原始矩阵 A A A 的秩低

性质

(1)设矩阵 A A A 的奇异值分解为 A = U Σ V T A=U \Sigma V^{\mathrm{T}} A=UΣVT, 则以下关系成立:
A T A = ( U Σ V T ) T ( U Σ V T ) = V ( Σ T Σ ) V T A A T = ( U Σ V T ) ( U Σ V T ) T = U ( Σ Σ T ) U T \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)矩阵 A A A的奇异值分解中,左奇异向量,右奇异向量和奇异值存在一一对应的关系

(3)矩阵 A A A 的奇异值分解中,奇异值 σ 1 , σ 2 , ⋯   , σ n \sigma_{1}, \sigma_{2}, \cdots, \sigma_{n} σ1,σ2,,σn 是唯一的,而矩阵 U U U V V V 不 是唯一的。

(4)矩阵 A A A Σ \Sigma Σ 的秩相等, 等于正奇异值 σ i \sigma_{i} σi 的个数 r ( r( r( 包含重复的奇异值,奇异值都是非负的)

(5)矩阵 A A A r r r 个右奇异向量 v 1 , v 2 , ⋯   , v r v_{1}, v_{2}, \cdots, v_{r} v1,v2,,vr 构成 A T A^{\mathrm{T}} AT 的值域 R ( A T ) R\left(A^{\mathrm{T}}\right) R(AT) 的一组标准正交基

几何解释

从线性变换的角度理解奇异值分解:

m × n m \times n m×n 矩阵 A A A 表示从 n n n 维空间 R n \mathbf{R}^{n} Rn m m m 维 空间 R m \mathbf{R}^{m} Rm 的一个线性变换,
T : x → A x T: x \rightarrow A x T:xAx
x ∈ R n , A x ∈ R m , x x \in \mathbf{R}^{n}, A x \in \mathbf{R}^{m}, x xRn,AxRm,x A x A x Ax 分别是各自空间的向量。

A = U Σ V T A=U \Sigma V^{\mathrm{T}} A=UΣVT 奇异值分解可以看作, 将线性变换 A A A转换为三个简单变换. 例如下图, 给出了原始空间的标准正交基 (红色与黄色),经过坐标系的旋转变换 V T V^{\mathrm{T}} VT 、坐标轴的缩放变换 Σ \Sigma Σ, 坐标系的旋转变换 U U U ,得到和经过线性变换 A A A 等价的结果。

统计学习方法第15章-奇异值分解SVD_第1张图片

你可能感兴趣的:(统计学习方法,奇异值分解,矩阵分解,统计学习方法)