关于PCA

PCA(主成分分析)是一种数据降维的方法,通过映射数据到新空间来减少特征维度。首先计算数据的协方差矩阵,接着进行奇异值分解,选取最大的几个特征值对应的特征向量,形成降维后的样本矩阵。MATLAB的princomp函数可用于PCA计算,包括特征向量、特征值、样本得分和降维后的数据。在实际应用中,需根据特征值的阈值选择保留的主成分数量。
摘要由CSDN通过智能技术生成

PCA的理解

刚开始听到PCA时,只知道它讲的是对数据进行降维,还以为是直接去掉一些数据特征;这几天看了下网上各位牛人的博客(http://blog.csdn.net/abcjennifer/article/details/8002329以及http://blog.csdn.net/watkinsong/article/details/8234766)后,我才知道原来它只是把原来的数据映射到新的空间中进行表示,即测试样本通过转换,映射到这个空间中进行表示,并没有对原来的数据进行删减。所以我们要保存住这个空间坐标转换矩阵,把测试样本同样地转换到相同的坐标空间中


为了解释PCA的过程,下面引用百度百科里面的解释:

对于一个训练集,100个对象模板,特征是10维,那么它可以建立一个100*10的矩阵,作为样本。求这个样本的协方差矩阵,得到一个10*10的协方差矩阵,然后求出这个协方差矩阵的特征值和特征向量,应该有10个特征值和特征向量,我们根据特征值的大小,取前四个特征值所对应的特征向量,构成一个10*4的矩阵,这个矩阵就是我们要求的特征矩阵,100*10的样本矩阵乘以这个10*4的特征矩阵,就得到了一个100*4的新的降维之后的样本矩阵,每个特征的维数下降了。

对上面的解释进行总结如下(假定数据样本为n×p矩阵,p为维数):
(1)计算协方差矩阵Σ,Σ为一个p×p的实对称矩阵。
这里写图片描述
注意:如果使用matlab自带的cov函数,它会先对x进行去均值操作,即每一列减去该列的均值,详情可参考博客http://bl

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值