返回信息流https://www.cnblogs.com/eczhou/p/5435425.html
初学。动手做了这篇博文里PCA实现,在找到特征向量进行数据转换时,数据矩阵×二维特征向量矩阵,得到转换后的数据矩阵。
我把特征向量按照特征值从大到小排列对应的顺序排列的,有点迷茫,此时我得到的二维矩阵哪个是x, 哪个是y呢??三维的又该如何对应呢?
取最大特征值对应的特征向量对数据进行压缩,得到的是一维坐标,我应该如何再在原来的二维坐标系中表示出来呢?。
思索良久不得解,盼。
这是一条镜像帖。来源:北邮人论坛 / ml-dm / #31956同步于 2018/10/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
ML_DM机器人发帖
关于PCA实现的疑问
xiaotao
2018/10/13镜像同步6 回复
订阅后,新回复会通过你的通知中心匿名送达。
6 条回复
针对疑问一,“得到的坐标是以原坐标系为参考的”,这句话是错的,坐标点的位置没变,转换后得到的坐标是在新的坐标轴下表示的。至于哪一维对应哪个轴,你看看前面你参考博客的知识点,两个向量作內积是求一个在另一个向量上的投影(原坐标点就是一个从原点到该点的向量),然后按照矩阵乘法的详细过程,看看是哪些量在做的内积,就能知道了。
关于特征向量,这里首先要去看协方差矩阵那里,求出的协方差矩阵,主对角线上是单独每个维度各自的方差,其他的元素为协方差,由于选的这些每个维度对应的特征向量线性无关,因此协方差全为0,得到的协方差矩阵其实是个对角矩阵。再回想线性代数里面有个性质,n阶方阵A对应有n个线性无关的特征向量,矩阵可被对角化,且可以表示为,对角线元素全为特征值的对角矩阵。刚刚我们再说这个矩阵的对角线元素是特征值同时也是各个维度的方差,而我们要的就是使方差尽可能大的那些对应的特征向量。因此这个特征矩阵在构造的时候就先按特征值大小排序。
针对疑问二,再强调一遍,这个变换的过程,原坐标(x,y)其实相当于x(1,0)+y(0,1),这里应该是两个列向量,角标我打不出来。原坐标实际是一个从原点射出来的向量在x和y两个轴上的投影,而变换的过程实际就是在原图上画新的过原点的轴,求出的坐标就是原来的原向量在新轴上的投影,所以降维其实就是取在其中新的一个或几个坐标轴上的投影坐标,不用在原坐标系表示了。
网上还有很多通俗易懂的博客讲PCA的,别盯着一篇,多看看每个人的图和讲解应该会更容易理解。
来自 缘邮
感激大佬。这两天有点想明白了…笔芯
【 在 yuhang (yuhang) 的大作中提到: 】
: 针对疑问一,“得到的坐标是以原坐标系为参考的”,这句话是错的,坐标点的位置没变,转换后得到的坐标是在新的坐标轴下表示的。至于哪一维对应哪个轴,你看看前面你参考博...
: ...................
谢谢…最近在啃机器学习实战和统计学习方法
【 在 byr0427 (Gimosolv) 的大作中提到: 】
: 不如去看看林轩田的机器学习基石,记得你之前说看书不如看博客好懂,那看公开课应该是最好懂的,也不至于像博客这样水平参差。