Answers:
使用PCA作为特征选择工具时的基本思想是根据变量的系数(载荷)的大小(从绝对值的最大到最小)选择变量。您可能还记得,PCA试图用原始变量的不相关的线性组合(投影)替换(或多或少相关的)变量。让我们忽略如何为当前问题选择最佳。这主要成分通过其解释的方差按重要性排序,每个变量对每个成分的贡献程度不同。使用最大方差准则将类似于特征提取ķ < p ķ ķ ,其中主要组件用作新功能,而不是原始变量。但是,我们可以决定仅保留第一个分量,然后选择绝对系数最高的变量;数量可能基于变量数量的比例(例如,仅保留变量的前10%)或固定的截止值(例如,考虑归一化系数的阈值)。该方法与惩罚回归(或PLS回归)中的Lasso运算符有些相似。但是,的值或要保留的分量数都不是显而易见的选择。j p j
使用PCA的问题在于:(1)将所有原始变量的测量结果用于投影到较低维度的空间中;(2)仅考虑线性关系;(3)以及基于PCA或SVD的方法作为单变量筛选方法(t检验,相关性等),请不要考虑数据结构的潜在多变量性质(例如,变量之间的更高阶交互)。
关于第1点,已经提出了一些更复杂的筛选方法,例如主要特征分析或逐步方法,例如在基因表达研究中用于“ 基因剃须 ” 的一种。同样,稀疏PCA可以用于基于结果变量加载来执行尺寸缩减和变量选择。关于第2点,如果需要将非线性关系嵌入到较低维度的空间中,则可以使用内核PCA(使用内核技巧)。决策树,或者更好的是随机森林算法,可能能够更好地解决第3点。后者可以派生基于Gini或基于置换的重要程度的度量。
最后一点:如果您打算在应用分类或回归模型之前执行特征选择,请确保对整个过程进行交叉验证(请参阅《统计学习要素》的 7.10.2节,或Ambroise和McLachlan,2002年)。
您似乎对R解决方案感兴趣,所以我建议您看一下插入符号包,其中包括许多方便的函数,用于分类或回归上下文中的数据预处理和变量选择。
给定一组N个特征,PCA分析将产生(1)方差最大的特征的线性组合(第一PCA分量),(2)在与第一PCA分量正交的子空间中具有最大方差的线性组合等(在组合的系数形成具有单位范数的向量的约束下)具有最大方差的线性组合是否是“良好”功能,实际上取决于您要预测的内容。因此,我想说,作为PCA组件和“良好”功能通常是两个不相关的概念。
您无法根据要素的方差对要素进行排序,因为PCA中使用的方差基本上是多维实体。您只能通过将方差投影到您选择的特定方向(通常是第一个主成分网)来对要素进行排序。换句话说,要素是否具有比其他方差更大的方差取决于您如何选择投影方向。