首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用主成分分析(PCA)来加快检测速度?

如何使用主成分分析(PCA)来加快检测速度?
EN

Stack Overflow用户
提问于 2016-10-28 22:06:50
回答 1查看 260关注 0票数 0

我不确定我是否正确地应用了PCA!我有p个特征和n个观察值(实例)。我把它们放在恩智浦矩阵X中。我执行均值归一化并得到归一化矩阵B。我计算pxp协方差矩阵C=(1/(n-1))B*.B的特征值和特征向量,其中*表示共轭转置。

与降序特征值对应的特征向量在pxp矩阵E中。假设我想将属性的数量从p减少到k。我使用等式X_new=B.E_reduced,其中E_reduced是通过选择E的前k列产生的。以下是我的问题:

1)应该是X_new=B.E_reduced还是X_new=X.E_reduced?

2)测试阶段是否需要重复上述计算?如果测试阶段类似于训练阶段,则不会获得加速,因为我必须在测试阶段计算每个实例的所有p个特征,而PCA会因为特征向量计算开销而使算法变慢。

3)应用PCA后,我注意到准确率下降。这是与数字k(我设置k=p/2)有关,还是与我使用线性PCA而不是内核PCA有关?选择数字k的最佳方法是什么?我读到我可以找到k个特征值之和与所有特征值之和的比率,并根据这个比率做出决定。

EN

回答 1

Stack Overflow用户

发布于 2016-10-29 03:51:17

您通常将乘法应用于居中的数据,因此投影的数据也是居中的。

在测试期间,从不重新运行主成分分析。只在训练数据上使用,并保留平移向量和投影矩阵。您需要应用与训练过程中完全相同的投影,而不是重新计算新的投影。

性能下降可能有很多原因。例如,你是否也应用了使用特征值的根的缩放?你第一次用的是什么方法?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40306868

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档