奇异值分解SVD

文章目录

    • 奇异值是什么?
      • [1 奇异值的定义](#1 奇异值的定义)
      • [2 奇异值的性质](#2 奇异值的性质)
      • [3 特征值与奇异值的关系](#3 特征值与奇异值的关系)
      • [4 奇异值的重要性](#4 奇异值的重要性)
    • 奇异值分解

奇异值是什么?

1 奇异值的定义

对于任意一个 m × n m \times n m×n 的矩阵 A A A,存在三个矩阵 U U U, V V V和 Σ \Sigma Σ使得:
A = U Σ V T A=U\Sigma V^T A=UΣVT

其中:

  • U ∈ R m × m U \in R^{m\times m} U∈Rm×m 称为左奇异矩阵
  • V ∈ R n × n V \in R^{n\times n} V∈Rn×n 称为右奇异矩阵
  • Σ ∈ R m × n \Sigma \in R^{m\times n} Σ∈Rm×n 是对角矩阵,对角线的元素是非负实数,按降序排列,这些值称为奇异值

U U U 和 V V V 均为单位正交阵(即 U U T = I UU^T=I UUT=I 和 V V T = I VV^T=I VVT=I )。

2 奇异值的性质

1、非负性 :奇异值始终为非负数,即对角矩阵 Σ \Sigma Σ的对角元素均为非负。

2、奇异值的数量 :对于一个 m × n m \times n m×n 的矩阵 A A A,最多有 m i n ( m , n ) min(m,n) min(m,n)个奇异值。

3、矩阵的秩 :矩阵 A A A 的秩等于其非零奇异值的数量。

4、不变性:奇异值是矩阵的固有属性,与矩阵的旋转或变换无关。

3 特征值与奇异值的关系

奇异值与特征值都描述了一个矩阵的一些特征。

矩阵乘法的几何意义

矩阵乘法对应一个变换,是把任意一个向量变成另一个方向或长度的新向量,在这个过程中,原向量主要发生旋转伸缩的变化。

  • 特征值 :如果存在向量 v v v,使得 A v = λ v Av=\lambda v Av=λv,则 λ \lambda λ 是矩阵 A A A 的特征值 , v v v 是对应的特征向量
    • 特征值分解: A = Q Σ Q − 1 A=Q\Sigma Q^{-1} A=QΣQ−1
      • Q Q Q是矩阵A的特征向量组成的矩阵, Σ \Sigma Σ为对角阵,每一个对角线元素就是一个特征值。
    • 特征值表示的是这个特征到底有多重要,而特征向量表示这个特征是什么。
  • 局限矩阵A必须是方阵

特征值与特征向量的几何意义

如果矩阵对某些向量只发生伸缩变换,不产生旋转效果 ,那么这些向量就称为这个矩阵的特征向量 ,伸缩的比例就是特征值

例如:M = [ 3 0 0 1 ] \begin{bmatrix} 3&0 \\ 0&1 \end{bmatrix} [3001],对应的线性变换是如下形式,因为M乘以一个向量 ( x , y ) (x,y) (x,y)的结果是 [ 3 0 0 1 ] [ x y ] = [ 3 x y ] \begin{bmatrix}3&0\\0&1\end{bmatrix} \begin{bmatrix}x\\y\end{bmatrix} =\begin{bmatrix}3x\\y\end{bmatrix} [3001][xy]=[3xy].

  • 奇异值 :如果存在单位正交矩阵 U U U 和 V V V,使得 A = U Σ V T A=U\Sigma V^T A=UΣVT,其中 Σ \Sigma Σ为对角矩阵,对角线上的值被称为奇异值 , U U U 和 V V V 分别被称为左奇异矩阵和右奇异矩阵。
    • 可以描述普通矩阵(不一定是方阵)的重要特征。
    • 与特征值的对应关系:
      • ( A T A ) v i = λ i v i (A^TA)v_i = \lambda_i v_i (ATA)vi=λivi ,这里V就是右奇异向量。
      • σ i = λ i \sigma_i = \sqrt{\lambda_i} σi=λi
      • u i = 1 σ i A v i u_i = \frac{1}{\sigma_i} Av_i ui=σi1Avi ,这里U就是左奇异向量。
  • 奇异值跟特征值类似,但其减少的特别快,很多情况下,前10%甚至前1%的奇异值的和就占了全部的奇异值之和的99%以上了

形象理解

对于矩阵 A = [ 1 1 3 1 3 1 ] A = \begin{bmatrix} 1&\frac{1}{3}\\ \frac{1}{3}&1 \end{bmatrix} A=[131311],单位圆被变换为椭圆,特征向量 是所有向量中经过变换(A)后,方向不变的向量

但是,特征向量不变的方向并不能保证是拉伸效果最大的方向 ,而这是奇异值向量的方向 。单位圆变换为椭圆,奇异向量对应椭圆的半长轴,不同于特征值方向。

也就是说,

  • 特征向量描述的是矩阵的方向不变作用的向量
  • 奇异向量描述的是矩阵最大作用的方向向量

4 奇异值的重要性

奇异值的重要性在于,它们描述了矩阵 A A A在不同方向上能够拉伸(或压缩)空间的能力。

  • 最大的奇异值对应着矩阵在最重要的方向上的最大拉伸效果,通常与矩阵的主要信息或能量相关联。
  • 较小的奇异值可能表示噪声或数据中的微弱模式。
  • 奇异值为零意味着在相应的方向上矩阵的作用是完全压缩的,这与矩阵的秩有关,矩阵的秩等于非零奇异值的数量。

奇异值分解

奇异值分解有广泛的应用,通过保留较大的奇异值而忽略较小的奇异值,可以在减少数据维度的同时尽量保持数据的主要结构,达到数据降维和去噪的目的。

对于 A = U Σ V T A=U\Sigma V^T A=UΣVT,可以理解为:

  • V T V^T VT:旋转(正交矩阵)
  • Σ \Sigma Σ:缩放或拉伸(对角矩阵)
  • U U U:旋转(正交矩阵)

也就是说,任何矩阵变换总可以看成旋转+缩放或拉伸+旋转的过程。那么对于拉伸效果最大的判断,就取决于 Σ \Sigma Σ矩阵中最大的奇异值。

关于具体的SVD证明及求法,可参考奇异值分解(SVD)的定义、证明、求法.

相关推荐
sniper_fandc1 小时前
深度学习基础—Seq2Seq模型
人工智能·深度学习
goomind1 小时前
深度学习模型评价指标介绍
人工智能·python·深度学习·计算机视觉
金蝶软件小李1 小时前
基于深度学习的猫狗识别
图像处理·深度学习·计算机视觉
这个男人是小帅4 小时前
【GAT】 代码详解 (1) 运行方法【pytorch】可运行版本
人工智能·pytorch·python·深度学习·分类
热爱生活的五柒4 小时前
pytorch中数据和模型都要部署在cuda上面
人工智能·pytorch·深度学习
HyperAI超神经6 小时前
【TVM 教程】使用 Tensorize 来利用硬件内联函数
人工智能·深度学习·自然语言处理·tvm·计算机技术·编程开发·编译框架
埃菲尔铁塔_CV算法10 小时前
深度学习神经网络创新点方向
人工智能·深度学习·神经网络
图片转成excel表格11 小时前
WPS Office Excel 转 PDF 后图片丢失的解决方法
人工智能·科技·深度学习
李歘歘12 小时前
万字长文解读深度学习——多模态模型CLIP、BLIP、ViLT
人工智能·深度学习