【转】特征值和奇异值的关系是什么?

转自:https://blog.51cto.com/u_15069450/2610934

问题引入

特征值分解和奇异值分解在机器学习领域都是属于满地可见的方法。两者有着很紧密的关系,突然看的话两者好像是差不多的,都可以用于信息的提取和转换,但是两者有啥区别呢?

问题解答

特征向量 (Eigenvector)

如果说一个向量 v v v是方阵 A A A的特征向量,将一定可以表示成下面的形式:

A v = λ v Av=\lambda v Av=λv

这时候 λ λ λ就被称为特征向量 v v v对应的特征值(Eigenvalue),一个矩阵的一组特征向量是一组正交向量。特征值分解(Eigendecomposition) 是将一个矩阵分解成下面的形式:

A = Q Λ Q − 1 A=Q\Lambda Q^{-1} A=QΛQ1

其中 Q Q Q是这个矩阵 A A A的特征向量组成的矩阵, Λ \Lambda Λ是一个对角阵,每一个对角线上的元素就是一个特征值,里面的特征值是由大到小排列的。这些特征值所对应的特征向量就是描述这个矩阵变化方向(从主要的变化到次要的变化排列),可以将每一个特征向量理解为一个线性的子空间,我们可以利用这些线性的子空间干很多的事情。不过,特征值分解也有很多的局限,比如说变换的矩阵必须是方阵。

奇异值

特征值分解是一个提取矩阵特征很不错的方法,但是它只是对方阵而言的,在现实的世界中,我们看到的大部分矩阵都不是方阵,比如说有 N N N个学生,每个学生有 M M M科成绩,这样形成的一个 N × M N \times M N×M的矩阵就不可能是方阵,我们怎样才能描述这样普通的矩阵呢的重要特征呢?奇异值分解(Singular Value Decomposition) 可以用来干这个事情,奇异值分解是一个能适用于任意的矩阵的一种分解的方法:

A = U Σ V T A=U\Sigma V^{\rm T} A=UΣVT

那么奇异值和特征值是怎么对应起来的呢?我们将一个矩阵A的转置乘以 A A A,并对求特征值,则有下面的形式:

( A T A ) V = λ V (A^{\rm T}A)V=\lambda V (ATA)V=λV

这里 V V V就是上面的右奇异向量,另外还有:

σ i = λ i \sigma_{i}=\sqrt {\lambda_{i}} σi=λi
u i = 1 σ i A u_{i}=\frac{1}{\sigma_{i}}A ui=σi1A (?)

这里的 σ \sigma σ就是奇异值, u u u就是上面说的左奇异向量。奇异值跟特征值类似,在矩阵中也是从大到小排列,而且的减少特别的快,在很多情况下,前10%甚至1%的奇异值的和就占了全部的奇异值之和的99%以上了。也就是说,我们也可以用前 r r r ( r ≪ m , n r \ll m,n rm,n)个的奇异值来近似描述矩阵,即部分奇异值分解

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值