奇异值分解(SVD)的推导和应用简介

特征值分解

学过线性代数的同学都知道,n阶方阵可以被特征分解为特征向量和特征值。特征向量可以组成特征矩阵,特征值组成对角矩阵,表示成下面的形式。如果是对称矩阵还可以分解成标准形。

                                                                                                         


奇异值分解

那么如果我们要处理的矩阵不是方阵它能不能被分解呢?当然可以。分解的方法被称为奇异值分解,即SVD。

奇异值分解在机器学习中的用途非常广泛,例如图像去噪,降维,另外还有推荐算法等。

假设有一个普通的矩阵A(m*n),我们可以将A表示成如下形式:


其中U、V为正交矩阵,E为m*n的对角阵。


证明上式:


图片来自张贤达老师的《矩阵分析与应用》


求解左奇异矩阵U和右奇异矩阵V

  • 左奇异矩阵U:A*At得到一个m*m的方阵,于是我们对A*At进行特征值分解。即,我们能得到m个特征值和对应的m个特征向量。m个向量组成特征向量矩阵U。
  • 右奇异矩阵V:At*A得到一个n*n的方阵,于是我们对At*A进行特征值分解。即,我们能得到n个特征值和对应的n个特征向量。n个向量组成特征向量矩阵V。

证明上方法能得到左右奇异矩阵

因为,所以有


为m*m方阵,对角线为的特征值。可见分解能够得到左奇异矩阵U。


为m*m方阵,对角线为的特征值。可见分解能够得到右奇异矩阵V。


求解奇异值

将矩阵A乘以右奇异矩阵V,如下


将对应的左奇异向量和右奇异向量代入上面式子,可以求出对应的奇异值lambda i。所有的lambda i组成中间的奇异值对角阵。


于是得到最后结果


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值