打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
揭开面纱:数据降维到底是怎么一回事?「强烈推荐」

  昨天实践了一个数据降维的例子,用到了5个二维的样本点,通过特征值分解法,将样本降维为1个维度,这个过程又称为数据压缩。

  今天来进一步谈谈数据降维,以实现主成分提取的另一种应用非常广泛的方法:奇异值分解法,它和特征值分解法有些相似,但是从某些角度讲,比特征值分解法更强大。

  在阐述矩阵分解法时,提到了一个非常重要的概念,向量在正交基上的投影,今天再温习下,一个向量是多少,一定是相对于正交基而获取的,如果正交基变了,这个向量的方向也就变了,因此要想确定向量的方向,就得找到它位于的由正交基确定的空间;第二,一个向量在某个主轴的投影就是这个向量点乘这个主轴的方向向量,这个也是PCA之矩阵分解法和奇异矩阵分解法的理论基础。

  下面,再介绍一个非常重要的关于矩阵的线性变换的操作:旋转和压缩,这些都是以上两种方法的基础。

  02

  —

  向量的旋转变换

  如下所示,在由 (e1,e2) 正交基确定的空间中,一个样本点 x=(a,b),如果将原来的正交基 (e1,e2) 旋转一个角度 alfa 后,新的正交基变为 (e1',e2'),求样本点在新的空间中的坐标 x'=(a',b') 和这种旋转变换的矩阵 u 。

  

  利用向量在主轴上的投影由点乘这个知识点,可以得到:

  

  化为矩阵表达:

  

  

  通过上式可以看到,u 就是变换矩阵的,并且通过上图可以求出 u 的各个元素,因为旋转角度 alfa 已经求出; 并且根据新的基(e1', e2')肯定也是正交的这个原则,所以 u 必然是正交矩阵。

  这样向量 x 通过 u 变换矩阵,获得了一次旋转,由刚开始的学历证矩形(由紫色边确定的),旋转到由橙色边确定的矩形,并且仅仅是做了一次旋转,向量 x 的大小没有发生任何改变。如果要想改变向量的长度,比如压缩这个向量 x,只需要乘以一个标量 lamda(lambda < 1)即可。

  

  有了向量旋转变换的知识储备,再来理解奇异值分解,还是回过头去想特征值分解,都可能会变得好理解了,接下来分析奇异值分解法是如何做到压缩数据,并且能确保数据的主要信息不丢失的呢?

  03

  —

  奇异值分解

  通过上面的分析,可以看出要想定位到主成分确定的正交基上,首先得保证变换后的基必须还是正交基,还记得利用特征值分解法求第一主成分的方向向量吗? 我们求出 X X' (其中X'表示X的转置)对应的特征向量,并按照特征值的大小依次排序,取前 k 个特征值对应的特征量,组成一个特征矩阵,然后数据映射到这个矩阵上,便压缩数据为 k 维,在奇异值分解方法中,一个正交基仍然使用 X X' 的特征向量,但是不同的是:

  1. 奇异值分解法,使用两个正交基,分别称为左奇异向量和右奇异向量,一般用 u 表示左奇异向量,其中 X' X 矩阵的特征向量确定了这个左奇异向量;一般用 v 表示右奇异向量,它的值是和特征值分解法用到的X X' 确定的特征值向量是一致的。

  2. 中间的对角矩阵不再像特征值分解法那样由特征值组成的对角阵,而是特征值开根号,并成为奇异值,这是方法名字由来,奇异值和特征值有点类似,可以类别着理解吧。

  3. 特征值分解法分解的矩阵必须是方阵,这就是PCA特征值分解必须要对 XX' 分解的原因,而奇异值分解法可以对任意矩阵分解。

  4. 奇异值分解任意一个 N * M 的矩阵为如下的样子:

  

  如何推理出U, 中间的奇异阵, V 的shape呢,因为 U 和 V 都是正交矩阵,所以U 和 V 是方阵,所以 U 为 N * N的方阵,V为 M * M 的方阵,由此可知中间的奇异阵为 N * M 的对角阵。

  U 和 V 为什么都是正交阵呢? 因为在第二节中介绍说过只有正交阵才能完成向量的旋转,正是依靠这两个正交阵,奇异值分解法能完成两个方向的数据压缩,而特征值分解法由于只有一个正交阵所以只能完成一个方向的数据压缩。

  一点说明:

  奇异值σ的梯度比较大,在许多情况下,从大到小排序后的奇异值的前10%的和,就占了全部的奇异值之和的99%以上。也就是说,我们也可以用前 r 个奇异值来近似描述 我们的数据,这样奇异值压缩后的数据占的空间就大大缩小了,可以看到压缩后的3个矩阵的面积原来相比大大缩小了。

  

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
奇异值分解(SVD)原理总结
矩阵的终极分解-奇异值分解 SVD
SVD分解的理解 | bfcat
奇异值分解(SVD)及其应用
奇异值分解(SVD)原理详解及推导
不懂这些线性代数知识 别说你是搞机器学习的
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服