PCA降维MATLAB使用案例

本文记录了使用MATLAB进行PCA降维的过程,通过计算降维后的精度,选择保留前40维,达到99.24%的保留信息。PCA不仅加速计算,也可能去除冗余干扰,提升模型拟合效果。
摘要由CSDN通过智能技术生成

已经不是一次使用PCA了,但是这么多参数一眼看去还是不能很快的明白,如果我想对一个二维特征矩阵降维,到底应该怎么做,这里作为备忘记录一下。
在这里插入图片描述

  • 首先使用MATLAB自带的PCA函数
    [pc,score,latent,tsquare] = pca(feature) %feature是799*216的矩阵

  • 用latent来计算降维后取多少维度能够达到自己需要的精度
    cumsum(latent)./sum(latent)
    一般取到高于95%就可以了,这里我们取前40维,精度达到了0.9924

  • pca函数已经给出了所有的转换后矩阵表示,也就是输出的score项,取出前40维就是降维后特征
    feature_after_PCA=score(:,1:40)

  • 精度分析

ExFeatureACCSRCC
1216维10.8552
240维0.99240.8494
330维0.98440.8577
4*20维0.96420.8839
515维0.94180.8811
610维0.89720.7155

可见也不是取得维数越多效果越好,降维不仅能起到加快计算速度的作用,说不定还能去除一些冗余干扰提高拟合效果呢

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值