使用主成分分析(PCA)进行特征选择(Feature Selection)

我想知道如何使用PCA执行特征选取。 PCA是否能计算每个输入变量的相对分数,使用它来过滤非信息输入变量?我希望能够通过包含的信息的方差或数量来对数据中的原始特性进行排序。
数据分析师 Level2 提问 在 2017-12-02 在 应用问题.
添加评论
1 答案
最佳答案
使用PCA作为特征选择工具的基本思想是根据其系数的大小选择变量。PCA试图用原始变量的k <pk <p不相关线性组合(投影)代替p变量。我们可以忽略如何选择一个最优的k。这些k个主成分通过解释的方差按重要性排序,每个变量对每个成分的贡献程度不同。使用最大方差标准将类似于特征提取,其中主成分被用作新特征,而不是原始变量。然而,我们可以决定只保留第一个分量,并选择绝对系数最高的j <pj <p变量。数字j可能是基于变量数量的比例,或者这种方法与Lasso算子有一些相似之处。不过,j的值和要保留的组件数量都不是明显的选择。

使用PCA的问题是:(1)所有原始变量的测量结果用于投影到较低维空间;(2)仅考虑线性关系;(3)基于PCA或SVD的方法作为单变量筛选方法(t检验,相关性等),不考虑数据结构的潜在多变量性质(例如变量之间的高阶相互作用)。

关于第1点,已经提出了一些更精细的筛选方法,例如主成分分析或逐步方法。另外,可以使用稀疏主成分分析(Sparse PCA)来基于所得到的变量加载来执行降维和变量选择。关于点2,如果需要将非线性关系嵌入到较低维空间中,则可以使用核主成分分析(Kernel-PCA)。能够解决第3点。

最后一点:如果您打算在应用分类或回归模型之前进行特征选择,请务必交叉验证整个过程(请参阅 Ambroise and McLachlan, 2002).
数据科学家 Level1 回答于 在 2017-12-17。
添加评论

您的回答

*代码插入功能已上线
发布您的回答,意味着您同意了我们的 隐私政策服务条款