请稍等 ...
×

采纳答案成功!

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

每个映射的坐标轴方向向量w有n个元素,是不是说w是n维空间的一个向量?

在其他问题下看到了老师的如下回答:可以自己设置一个数据量比较少(比如只有5个点)的三维数据,先求第一主成分->映射(此时所有点将在一个平面上)->求第二主成分->映射(此时所有点将在一条直线上)->求第三主成分(剩下的在一条直线上的所有点所在的直线就是第三主成分)。这是一个逐步降维,将数据慢慢分布在低一维的平面的过程。

但是对于一个有n维特征的数据来说,每次映射的坐标轴的方向向量w有n个元素,是不是说w是n维空间的一个向量?这样的话即使逐步降维,得到的每个w也是有n个元素,如何理解数据逐渐分布在低一维平面上呢?

正在回答

1回答

是的,w是n维空间的向量。PCA求出的每一个坐标轴,都是在n维空间中的。n维空间的坐标轴,就是需要n个数字来描述。


回到三维数据的例子中,也就是n=3。我们在三维空间中,求出的三个主成分,每个主成分也是一个三维向量(n维向量)。我们求出第一主成分,这个主成分也是一个三维向量(n维向量)。我们将所有数据映射以后,所有的数据都在一个平面中,这个平面也是在三维空间里的。我们再求第二个主成分,这个主成分也是一个三维向量(n维向量),我们再将所有数据映射以后,所有的数据都在一条直线上,这条直线也是在三维空间中的。是的,逐步降维,其实所有的数据还在三维空间中。


但是,我们的数据如果只是一条三维空间的直线,我们就完全可以直接使用一个一维空间的直线来表达,而不需要动用三维空间。所以,我们是要找到一个从三维空间到一维空间的空间映射。推而广之,我们要找的是一个从高维空间到低维空间的映射。


我们在上一小节,求出来了components_,就是这个映射。components_描述的是从一个n维空间到另一个k维空间的映射。他是一个n*k的矩阵,注意:他的每一列都是一个n维向量,描述在原来n维空间的一个坐标轴。但是,我们只使用k根这样的坐标轴,就构成了一个在原来的n维空间中的一个子空间,这个子空间只有k个维度。

2 回复 有任何疑惑可以回复我~
  • 非常感谢!
    回复 有任何疑惑可以回复我~ 2018-05-01 17:22:08
  • 设置一个数据量比较少(比如只有5个点)的三维数据,先求第一主成分->映射(此时所有点将在一个平面上)->求第二主成分->映射(此时所有点将在一条直线上)->求第三主成分(剩下的在一条直线上的所有点所在的直线就是第三主成分)。这是一个逐步降维,将数据慢慢分布在低一维的平面的过程。
    1.如果对求第三主成分之后的数据继续求第四主成分是否可以呢?是不是映射矩阵w可以是无穷维度的矩阵,因为对数据消除上一主成分后,是可以继续无限循环提取第一主成分的,但是这样的话就不是对原数据的降维了,而且越往后,解释原数据的方差比例越小。
    2.前面提到的慢慢分布在低一维的平面的过程,应该是对数据消除上一主成分后来说的吧。每次所谓的降维是对消除上一主成分后数据寻找低维度的轴(或者方向),而不是直接针对原始数据的。
    对三维数据先求第一主成分->映射(此时所有点将在一个平面上)。如果我们仅仅把这一个主成分的向量当做映射矩阵w,得到的是把原数据降维成一维向量,而不是平面上的。同理,继续求求第二主成分->映射(此时所有点将在一条直线上),如果我们现在将两个主成分的向量当做映射矩阵w,得到的是把原数据降维成二维向量,而不是直线上的。
    所以对于原始数据来说,每次的降维之后映射矩阵w元素是逐渐增多的,也就是从一维逐渐增加,一直到n维甚至无穷维度。但是这时候我们为了降维,才从方差累计解释比例角度选取前k个维度,从而映射到k维空间,从而实现降维。
    这样理解对吗?
    回复 有任何疑惑可以回复我~ 2018-05-02 10:38:17
  • 1. 对于三维数据,我们求不出第四主成分。对于n维数据,我们只能求出n个主成分。2. 我觉得你的描述有一些我没看懂的部分,但是我看懂的部分,我觉得你的理解是对的。
    回复 有任何疑惑可以回复我~ 2018-05-02 16:24:07
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信