为什么在 PCA 之后分类器准确率下降,即使 99% 的总方差被覆盖?

Why does classifier accuracy drop after PCA, even though 99% of the total variance is covered?

我有一个 500x1000 的特征向量,主成分分析表明超过 99% 的总方差被第一个成分覆盖。所以我用 1 维点替换 1000 维点,给出 500x1 特征向量(使用 Matlab 的 pca 函数)。但是,我的分类器准确率最初在 1000 个特征时大约为 80%,现在在 1 个特征时下降到 30%,尽管超过 99% 的方差是由这个特征引起的。对此有何解释,还是我的方法有误?

(这个问题部分来源于我之前的问题)

编辑: 我使用weka的主成分方法进行降维和支持向量机(SVM)分类器。

主成分不一定与分类准确率相关。可能存在 2 变量情况,其中 99% 的方差对应于第一台 PC,但该 PC 与数据中的基础 类 无关。而第二台 PC(仅贡献 1% 的方差)是可以分离 类 的那台 PC。如果您只保留第一台 PC,那么您将失去实际提供数据分类能力的功能。

在实践中,较小(方差较低)的 PC 通常与噪声相关联,因此移除它们可能会有好处,但不能保证这一点。

考虑您有两个变量的情况:一个人的质量(以克为单位)和体温(以摄氏度为单位)。您想要预测哪些人感染了流感,哪些人没有。在这种情况下,体重具有更大的方差,但可能与流感没有相关性,而具有低方差的温度与流感具有很强的相关性。在主成分变换之后,第一台 PC 将与质量高度对齐(因为它具有更大的方差),因此如果您丢弃第二台 PC,将失去几乎所有的分类精度。

重要的是要记住主成分是数据的无监督转换。它在计算转换时不考虑训练数据的标签(与 Fisher 的 linear discriminant 类似)。