机器学习-奇异值分解

奇异值分解的定义

SVD(Singular Value Decomposition)可以理解为:将一个比较复杂的矩阵用更小更简单的3个子矩阵的相乘来表示,这3个小矩阵描述了大矩阵重要的特性。

定义:矩阵的奇异值分解是指将一个秩为 r r r的实矩阵 A m × n A_{m \times n} Am×n分解为三个实矩阵乘积的形式:

A m × n = U m × m Σ m × n V n × n T ≈ U m × k Σ k × k V k × n T A_{m \times n} = U_{m \times m} \Sigma_{m \times n} V ^ { T }_{n\times n} \approx U_{m \times k} \Sigma_{k \times k} V ^ { T }_{k\times n} Am×n=Um×mΣm×nVn×nTUm×kΣk×kVk×nT

其中 U U U m m m阶正交矩阵 U U U的列向量称为左奇异向量), V V V n n n阶正交矩阵 V V V的列向量称为右奇异向量), Σ \Sigma Σ m × n m \times n m×n矩形对角矩阵,称为奇异值矩阵,对角线上的元素称为奇异值

Σ = [ D r × r 0 0 0 ] m × n \Sigma = \begin{bmatrix} D_{r\times r}&0\\ 0&0\\ \end{bmatrix}_{m\times n} Σ=[Dr×r000]m×n

D D D是一个 r × r r \times r r×r的对角阵, D D D的对角线元素是 A A A的前 r r r个奇异值 σ 1 ≥ σ 2 ≥ ⋯ ≥ σ r > 0 \sigma _ { 1 } \geq \sigma _ { 2 } \geq \cdots \geq \sigma _ { r } > 0 σ1σ2σr>0(非负,降序)。

知识点:任意一个实矩阵 A A A可以由其外积展开式表示

A = σ 1 u 1 v 1 T + σ 2 u 2 v 2 T + ⋯ + σ r u r v r T A = \sigma _ { 1 } u _ { 1 } v _ { 1 } ^ { T } + \sigma _ { 2 } u _ { 2 } v _ { 2 } ^ { T } + \cdots + \sigma _ { r } u _ { r } v _ { r } ^ { T } A=σ1u1v1T+σ2u2v2T++σrurvrT

其中 u k v k T u _ { k } v _ { k } ^ { T } ukvkT m × n m \times n m×n矩阵,是列向量 u k u _ { k } uk和行向量 v k T v _ { k } ^ { T } vkT的外积, σ k \sigma _ { k } σk为奇异值, u k , v k T , σ k u _ { k } , v _ { k } ^ { T } , \sigma _ { k } uk,vkT,σk通过矩阵 A A A的奇异值分解得到。

知识点:奇异值在矩阵中按照从大到小排列,在很多情况下,前10%甚至1%的奇异值的和就占了全部的奇异值之和的99%以上的比例。我们可以用最大的 k k k个奇异值的矩阵和 U V T UV^T UVT相乘来近似描述矩阵,从而实现了降维、减少数据存储、提升计算性能等效果。

奇异值分解的计算

设矩阵 A A A的奇异值分解为 A = U Σ V T A = U \Sigma V ^ { T } A=UΣVT,则有

A T A = V ( Σ T Σ ) V T A A T = U ( Σ Σ T ) U T \begin{array} { l } { A ^ { T } A = V ( \Sigma ^ { T } \Sigma ) V ^ { T } } \\ { A A ^ { T } = U ( \Sigma \Sigma ^ { T } ) U ^ { T } } \end{array} ATA=V(ΣTΣ)VTAAT=U(

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值