问题标签 [feature-selection]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - 在 R 中使用 FSelector 减少数据集
我是 R 新手,我想用它在我拥有的数据集上执行特征选择。我找到了 FSelector 包。我看了手册,但我有一些疑问。
此示例使用 Relief 方法计算每个变量的重要性。最后一行创建了一个公式:“class = feature1 + feature2 + ... +featureN”。现在,给定所选特征的子集(一个字符数组),我如何从 iris 创建一个新数据集,它只包含那些变量(即一个有 2 列的矩阵)?
attributes - 特征选择/属性选择 - 整体表现良好
在大规模数据挖掘基准研究的背景下,我比较了 9 个数据集上的 15 种算法,得出了 135 种算法/数据集组合。该研究是使用 WEKA 完成的。
我最后的分析是关于特征选择的影响。我知道,没有完美的特征选择算法,但最佳选择取决于要部署的算法和将应用它的数据集。
尽管为每种组合找到最佳特征选择算法的问题很大,但我正在寻找那些被认为总体上表现出良好性能的算法,可以说是“全能者”。到目前为止,我发现CFS(基于相关性的特征选择)、基于ReliefF和一致性的子集评估(Hall / Holmes 2002)的推荐是一个普遍不错的选择,以及调查中的注释,这些方法与Rankers一样简单(例如相关系数)证明非常有效(Guyon / Ellissef 2003)。
是否有一个很好的基准研究,一些其他研究表明在实践中使用哪些方法或使用哪些方法?
r - R中的卡方代码,因为数据空间很低
使用这个我得到打印为 999 的属性,但再次使用。我必须收集部分数据,因为我的记忆力很低
r - 如何在 R 中使用卡方分割数据(我的属性为 6631)
所以我用
这给出了 999 个属性的结果
如何通过拆分数据来获取所有属性。我使用的是 32 位操作系统,因此一次无法获取属性。
r - 当数据很大时如何使用 naivebayes 预测 traindata
这里f1
用于添加权重。
java - Mallet 特征选择类似于将特征值设置为 0
我正在查看 Mallet 源代码,似乎大多数分类器实现(例如朴素贝叶斯)并没有真正考虑到特征选择,即使InstanceList
该类有一个setFeatureSelection
方法。
现在我想对我的数据集进行一些涉及特征选择的快速实验。我在想,从技术捷径的角度来看,我可能会获得排名最低的特征,并将这些值在实例向量中设置为 0。这在机器学习中是否等同于分类器训练中的特征选择,从而根本不考虑它们(如果不涉及平滑,例如拉普拉斯估计)?
谢谢你
python - sci-kit 中使用的特性学习 DT 的实现
我已经在 sci-kit learn 中实现了一个带有 CV 的 DT 分类器。但是,我还想输出有助于分类的特征数量。这是我到目前为止的代码:
我可以包含什么来输出特征数量,例如,我查看了 RFE,正如我在另一个问题中询问的那样,但它不能轻易地包含在 DT 中。因此,我想知道是否有办法修改我的上述代码以输出有助于最高精度的特征数量。此处的总体目标是然后将其与其他分类器的输出进行比较。谢谢你。
algorithm - 删除嘈杂和冗余的功能
我已经根据面部标记从视频序列中提取了特征,作为这些标记在视频序列上的平均值和标准差。他们需要根据这些标记分为四个不同的类别。
总的来说,我有一个大约 260 个功能的功能集。我应该如何确定我的集合中哪些特征是嘈杂和冗余的。我在一些研究论文中读到了它,其中一些使用了我认为非常合适的 plus l take away r 算法,但在这样的算法中,他们总是将一个特征与另一个特征进行比较,并说它与它相比是好是坏。我如何评价我的功能是好是坏?通常使用什么标准?
我研究了几天,但没有发现任何明确且有用的东西。将不胜感激,谢谢。
algorithm - 使用 Bhattacharyya 距离进行特征选择
我有一组使用图像处理提取的 240 个特征。目标是在训练后将测试用例分为 7 个不同的类别。每个类大约有 60 个观察值(即,每个类我有大约 60 个特征向量,每个向量有 240 个分量)。
许多研究论文和书籍利用顺序前向搜索或顺序后向搜索从特征向量中选择最佳特征。下图给出了顺序前向搜索算法。
任何这样的算法都使用一些标准来区分特征。一种常用的方法是使用 Bhattacharyya 距离作为标准。Bhattacharyya 距离是分布之间的散度类型度量。在一些研究和研究中,我发现给定一个由该类的所有 60 个特征向量组成的类 A 的矩阵 M1,使得它具有 n=60 行和 m=240 列(因为总共有 240 个特征)和一个类 BI 的类似矩阵 M2 可以找出它们之间的 Bhattacharyya 距离并找到它们的相互依赖关系。
我的问题是如何将两者结合起来。如上所述,如何将 Bhattacharyya 距离作为选择算法中最佳特征的标准。
statistics - 特征选择和交叉验证
我想训练一个回归模型,为此我使用随机森林模型。但是,我还需要进行特征选择,因为我的数据集中有很多特征,我担心如果我使用了所有特征,那么我会过度拟合。为了评估我的模型的性能,我还进行了 5 折交叉验证,我对以下两种方法的问题是正确的,为什么?
1-我是否应该将数据分成两半,在前半部分进行特征选择,并使用这些选定的特征对剩余的一半进行 5 折交叉验证 (CV)(在这种情况下,5 个 CV 将使用完全相同的选定特征)。
2-执行以下程序:
1- 将数据分成 4/5 用于训练和 1/5 用于测试 2- 将此训练数据(全部数据的 4/5)分成两半:a-) 在前半部分训练模型并使用训练好的模型进行特征选择。b-) 使用第一部分中选择的特征在训练数据集的后半部分训练模型(这将是我们最终训练的模型)。3- 在剩余的 1/5 数据上测试模型的性能(在训练阶段从未使用过) 4- 重复上一步 5 次,每次我们随机(不替换)将数据分成 4 /5 用于训练,1/5 用于测试
我唯一担心的是,在第二个过程中,我们将有 5 个模型,最终模型的特征将是这五个模型的顶级特征的并集,所以我不确定 5CV 的性能是否可以反映最终模型的最终性能,特别是因为最终模型与 5fold 中的每个模型具有不同的特征(因为它是 5 CV 中每个模型的选定特征的并集)