码迷,mamicode.com
首页 > 其他好文 > 详细

PCA——主成分分析(Principal components analysis )

时间:2015-12-29 15:58:51      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:

问题

1、 比如拿到一个汽车的样本,里面既有以“千米/每小时”度量的最大速度特征,也有“英里/小时”的最大速度特征,显然这两个特征有一个多余。

2、 拿到一个数学系的本科生期末考试成绩单,里面有三列,一列是对数学的兴趣程度,一列是复习时间,还有一列是考试成绩。我们知道要学好数学,需要有浓厚的兴趣,所以第二项与第一项强相关,第三项和第二项也是强相关。那是不是可以合并第一项和第二项呢?

3、 拿到一个样本,特征非常多,而样例特别少,这样用回归去直接拟合非常困难,容易过度拟合。比如北京的房价:假设房子的特征是(大小、位置、朝向、是否学区房、建造年代、是否二手、层数、所在层数),搞了这么多特征,结果只有不到十个房子的样例。要拟合房子特征‐>房价的这么多特征,就会造成过度拟合。

4、 这个与第二个有点类似, 假设在 IR 中我们建立的文档‐词项矩阵中, 有两个词项为 “learn”和“study” ,在传统的向量空间模型中,认为两者独立。然而从语义的角度来讲,两者是相似的,而且两者出现频率也类似,是不是可以合成为一个特征呢?

5、 在信号传输过程中,由于信道不是理想的,信道另一端收到的信号会有噪音扰动,那么怎么滤去这些噪音呢?

  • 剔除和类标签无关的特征,比如“学生的名字”就和他的“成绩”无关,使用的是互信息的方法。
  • 剔除和类标签有关的,但里面存在噪声或者冗余的特征。在这种情况下,需要一种特征降维的方法来减少特征数,减少噪音和冗余,减少过度拟合的可能性。

PCA 的思想

  将 n维特征映射到 k 维上(k<n) ,这 k 维是全新的正交特征。这 k 维特征称为主元,是重新构造出来的 k 维特征,而不是简单地从 n 维特征中去除其余 n‐k 维特征。

最大方差理论、最小平方误差理论、坐标轴相关度理论

PCA  计算过程

  假设我们得到的 2 维数据如下:

技术分享 

行代表样例,列代表特征,这里有 10 个样例,每个样例两个特征。

 

第一步,分别求 x 和 y 的平均值,然后对于所有的样例,都减去对应的均值。

  这里 x 的均值是 1.81,y 的均值是 1.91,减去后得到

技术分享 

若样本特征之间的方差存在明显差异,需要对特征做方差归一化(可省略)。求每个特征的标准差σ,然后对每个样例在该特征下的数据除以σ。

 

第二步,求特征协方差矩阵。

  如果数据是 3 维,那么协方差矩阵是

技术分享 

  这里只有 x 和 y,求解得

技术分享 

注:对角线上分别是 x 和 y 的方差,非对角线上是协方差。

  l  协方差 > 0时,表示 x 和 y 若有一个增,另一个也增;

  l  协方差 < 0时,表示一个增,一个减;

  l  协方差 = 0 时,两者独立。

  l  协方差绝对值越大,两者对彼此的影响越大,反之越小。

求解协方差流程:

  技术分享           技术分享  

技术分享

 

第三步,求协方差的特征值和特征向量,得到

技术分享 

  这里的特征向量都归一化为单位向量

 

第四步,将特征值按照从大到小的顺序排序,选择其中最大的 k 个,然后将其对应的 k个特征向量分别作为列向量组成特征向量矩阵。

 

第五步,将样本点投影到选取的特征向量上。

  假设样例数为 m,特征数为 n,减去均值后的样本矩阵为 DataAdjust(m*n),协方差矩阵是 n*n,选取的 k 个特征向量组成的矩阵为EigenVectors(n*k)。

  那么投影后的数据为

技术分享 

  这样,就将原始样例的 n 维特征变成了 k 维,这 k 维就是原始特征在 k 维上的投影。

  本案例令k=1,得到结果:

技术分享 

PCA  理论基础

最大方差理论

  在信号处理中认为信号具有较大的方差, 噪声有较小的方差, 信噪比就是信号与噪声的方差比,越大越好。

  如下图所示,样本在横轴上的投影方差较大, 在纵轴上的投影方差较小,那么认为纵轴上的投影是由噪声引起的。因此我们认为,最好的k维特征,是将n维样本点转换为k维后,每一维上的样本方差都很大。

技术分享

对于下图的5个样本点,假设我们选择两条不同的直线做投影。根据方差最大化理论,左边的好,因为左边投影后的样本点之间的方差最大。

 技术分享

  投影

技术分享 

  1)   红色点表示样例 

  2)   蓝色点是在u上的投影点,离原点的距离是<>(即或)

  3)   u是直线的斜率,也是直线的方向向量,而且是单位向量。

  4)   样本点(样例)的每一维特征的均值,和投影到 u上的样本点的均值相等。

    最佳的投影向量u,可以使得投影后的样本点方差最大。

  在本案例中,已知均值为0,因此方差为

技术分享 

   技术分享

  因此,λ就是Σ的特征值,u 是特征向量。最佳的投影直线,是特征值λ最大时对应的特征向量。我们只需要对协方差矩阵进行特征值分解,得到的前 k 大特征值对应的特征向量就是最佳的k维新特征,而且这k维新特征是正交的。

  获得的新样本为:技术分享,其中的第 j 维就是在上的投影。

  通过选取最大的 k 个 u,使得方差较小的特征(如噪声)被丢弃。

最小平方误差理论

PCA——主成分分析(Principal components analysis )

标签:

原文地址:http://www.cnblogs.com/sweetyu/p/5085798.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!