PCA中关于协方差矩阵的问题

本文记录PCA降维过程中的关键步骤,包括数据标准化、计算协方差矩阵、求解特征值和特征向量,以及如何构建映射矩阵进行数据降维。通过实例解释协方差矩阵的计算及其在PCA中的作用。
摘要由CSDN通过智能技术生成

这段时间因需要用新特征做变换,而不是直接使用原始数据,且原始数据维度太高,故想到PCA降维后再进行操作,这个过程中遇到了一些问题,特此记录,方便自己也方便大家参考。

一、PCA数学理论:

  关于PCA的理论,资料很多,公式也一大把,本人功底有限,理论方面这里就不列出了。下面主要从应用的角度大概来讲讲具体怎么实现数据集的降维。

  1. 把原始数据中每个样本用一个向量表示,然后把所有样本组合起来构成一个矩阵。当然了,为了避免样本的单位的影响,样本集需要标准化。
  2. 求该矩阵的协方差矩阵(参考http://www.cnblogs.com/tornadomeet/archive/2012/04/09/2438505.html)。
  3. 求步骤2中得到的协方差矩阵的特征值和特征向量。
  4. 将求出的特征向量按照特征值的大小进行组合形成一个映射矩阵,并根据指定的PCA保留的特征个数取出映射矩阵的前n行或者前n列作为最终的映射矩阵。
  5. 用步骤4的映射矩阵对原始数据进行映射,达到数据降维的目的。
二、遇到的问题

1.关于样本矩阵的组成方式

每个样本都可以看成是一个1*m的行向量,假如有n个样本,则构成的样本矩阵sample维数是n*m,这时,矩阵中每一行代表一个样本,而每一列代表在该维度上n个样本各自的分布情况,因此,在求去除平均值的矩阵meansample时,要对每一列求得平均值,会得到一个1*m的行向量,然后对sample每一行剪掉这个1*m的行向量,这样就可以得到meansample矩阵了。

2.协方差矩阵的构成

大家都知道,利用PCA求特征时,最重要的一步就是要得到样本矩阵的协方差矩阵,从而得到它的特征向量矩阵,根据特征值贡献的不同舍弃部分特征向量后作为投影矩阵,通过对原始数据映射,进而获取了降维后的特征,可用于做分类和识别。如果要查看滤去次要特征后的数据,需要根据降维后的投影矩阵进行反变换,该部分还未研究(http://www.cnblogs.com/tornadomeet/archive/2012/09/06/2673104.html)。

而协方差矩阵的得来是有一些讲究的,协方差是一种用来度量两个随机变量关系的统计量,可表示为:

而对于协方差矩阵,n维的数据集就需要计算个协方差,那自然而然的我们会想到使用矩阵来组织这些数据。给出协方差矩阵的定义:

这个定义还是很容易理解的,我们可以举一个简单的三维的例子,假设数据集有

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值