请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

PCA降维的把握和依据分别是什么?比如把一个近似直线分布的二维点数据降维成直线?

老师,那个PCA把二维的点降维成一条直线,为什么可以这么做?

想不明白,事先又不知道真实数据是不是直线?是因为:

  1. 这些点本来就是近似直线的?如果是近似直线的,我们是怎么知道这些点的原始数据是近似直线的?

  2. 看着近似直线就可以看作直线吗?尽管他们原始数据可能就不是直线就是分散的,如果这样,拟合成直线是否有意义?

  3. 降维正确性的评价标准是什么?

  4. 降维除了PCA还有其他方法吗,感觉PCA不太直观

//img1.sycdn.imooc.com//szimg/5a3e6faf0001ebbb08470473.jpg

正在回答

1回答

这个课程有专门的章节讲解PCA算法,在学习完PCA算法以后或许会更明白。简单回答如下:


1)我们不知道这些点是近似直线的。我们只是尝试将这些点放在一条直线上,看是不是其实并没有丢失什么信息。举一个简单的例子,我们的数据点是(1,1),(2,2),(3,3),(4,4)... 这种情况下我们将这些点放在一条直线上,其实没有丢失任何信息,因为他们本来就在一条直线上!但是如果是以均值为0方差为1随机生成的二维点,降维后就会丢失很多信息。降维的效果就不好。当然,我这里举例是用2维降到1维举例的,这样非常容易可视化,从二维平面到一根直线。实际上应该是从n维降到n-1维。通常,对于高维度的数据,比如图像数据,降维效果是非常好的,我们可以降低60-70%的维度,但是却不损失什么信息。甚至使用降维后的数据进行机器学习算法,准确率会提高,因为产生了一定的降噪作用。我们在PCA一章会看到具体的例子。


2)首先,PCA和直线拟合不是一回事。我们在PCA一章会进行一下简单的比较。其次,依然是,我们只是尝试将原始二维数据用一维数据表示,看是否丢失了过多信息。如果丢失了过多的信息,在我们不能容忍的范围里,就不应该降维。


3)降维没有正确与否的标准,只有丢失信息的多少。实际上,降维的方式本质是有无穷多种的。我们期望在其中找到“最好”,或者说“丢失信息”最少的那一种。PCA算法使用的是:降维后保持原始数据的方差的多少,来衡量降维后保持原始数据了多少信息。对于降维算法来说,这个衡量标准不是固定的。有其他降维方法使用其他的衡量标准。我们在这个课程中只会具体讲解PCA。具体的这个衡量标准的数学表示,会在PCA一章给出。


4)最直观的降维方法或许就是:如果要将n维数据降为k维,只需要从n维数据中挑出k维就好了,其他n-k维扔掉。可惜,这样做一方面是通常效果不好;另一方面,其实他的标准比PCA要模糊的多。如何找到保留的k维?要扔掉哪n-k维?如果使用穷举的方式,则复杂度过高,需要尝试C(n,k)次:)其他的降维方法包括但不局限于:MDS,Isomap,LLE,LDA,t-SNE等等,有兴趣可以找相关资料自学一下:)


加油! 

6 回复 有任何疑惑可以回复我~
  • 提问者 神经旷野舞者 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2017-12-24 02:30:58
  • 提问者 神经旷野舞者 #2
    老师的解答相当详细啊
    原来降维的效果是丢失信息,感觉信息比较抽象,总感觉这信息损失了居然还能近似表示原来的信息,这样的信息应该比较特殊吧,比如图像可以容忍大的损失。
    图像降维是说把噪声降了,是不是因为降维的时候,噪声相当于异常点,所以噪声就被降掉了,还是说是别的原因导致降维效果更好?
    感觉噪声会干扰降维啊,比如原来可以近似看成直线了,结果有个异常点,然后降维度降不到直线了
    回复 有任何疑惑可以回复我~ 2017-12-24 02:44:10
  • liuyubobobo 回复 提问者 神经旷野舞者 #3
    信息损失依然可以表达原有信息是很常见的事情。如果举一个抽象的例子,我们日常在互联网中用的图像压缩算法,比如jpg等,都是通过减少图像原有信息达到让图片文件更小的目的。利用的就是即使损失了信息,对原有图像主体信息的影响是不大的。但是压缩的太狠了,就会慢慢让整个图像越来越模糊,最终导致完全看不出是什么东西,这就是信息损失的太大了。降维不等于降噪,降噪只是降维可能的结果,但不是一定的结果,尤其是原始信息完全没有噪音的时候。你说的噪声会干扰降维,非常对。但是异常点的例子太极端,已经可以不叫做噪音了。不过如果有异常点,确实会更大的干扰降维。
    回复 有任何疑惑可以回复我~ 2017-12-24 07:17:00
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信