主成分分析(PCA)与机器学习中的特征选择有什么区别? PCA是一种特征选择手段吗?
答案 0 :(得分:23)
PCA是一种找出哪些特征对于最好地描述数据集中的方差很重要的方法。它最常用于降低大数据集的维度,因此在原始数据具有固有高维度(例如图像识别)的情况下应用机器学习变得更加实用。
然而,PCA有局限性,因为它依赖于特征元素之间的线性关系,并且在开始之前它通常不清楚关系是什么。因为它也"隐藏"特征元素对数据的方差贡献很小,它有时可以消除一个影响机器学习模型性能的小但重要的区分因素。答案 1 :(得分:5)
您可以使用PCA进行功能选择。
主成分分析(PCA)是一种
的技术“使用正交变换来转换一组观察值 可能将相关变量转换为一组不相关的值 变量称为主成分。“
PCA帮助我们从根本上回答的问题是:哪个 这些M参数中的一个解释了显着的变化量 包含在数据集中? PCA基本上有助于应用80-20 规则:一小部分参数(比如说20%)可以解释80%或更多 数据的变化?
但它有一些缺点:它对规模敏感,对数据量级更高的数据给予更大的权重。数据规范化并不总是解决方案,如下所述:
还有其他方法可以进行特征选择:
特征选择算法可以看作是a的组合 用于提出新特征子集的搜索技术,以及 评估不同特征子集的评估度量。该 最简单的算法是测试每个可能的特征发现子集 最小化错误率的那个。这是一次详尽的搜索 这个空间,对于除了之外的所有人来说都是计算上难以处理的 最小的功能集。评估指标的选择很重要 影响算法,正是这些评估指标 区分特征选择的三个主要类别 algorithm:包装器,过滤器和嵌入式方法。
在某些字段中,特征提取可以建议特定目标:在图像处理中,您可能希望执行斑点,边缘或脊线检测。
答案 2 :(得分:2)
只是为了增加上面非常好的答案。不同之处在于,PCA将尝试通过探索数据的一个特征如何用其他特征(线性依赖性)来表达来减少维数。 而是选择特征,将目标考虑在内。它将根据输入变量预测目标值的有效性对输入变量进行排名。对于单变量特征选择也是如此。 多变量特征选择也可以做一些可以被认为是PCA形式的东西,因为它会丢弃输入中的一些特征。但是不要把这个类比太过分了。
答案 3 :(得分:1)
只是为了增加@Roger Rowland的答案。在监督学习(分类,回归)的背景下,我喜欢将PCA视为一个特征变换器"而不是一个功能选择器。
PCA基于提取数据显示最高可变性的轴。虽然它在新的基础上“展开”数据,并且在无监督学习中有很大帮助,但无法保证新轴与受监督问题中的歧视性特征一致。
更简单地说,在预测因变量(例如类标签)方面,根本无法保证您的主要组成部分信息量最大。
This paper是一个有用的来源。 另一个相关的交叉验证链接是here。