Algorithm 如何在数据集中选择最佳/最差特征进行分类

Algorithm 如何在数据集中选择最佳/最差特征进行分类,algorithm,machine-learning,feature-selection,Algorithm,Machine Learning,Feature Selection,我正在javascript上做一个小的随机森林,我有一个2d数组,其中包含一些特性。其中一些主要是纯噪音,我想把它们从场景中移除。我一直在理解我需要为每一个特性计算什么,以便对最差的特性进行排名。我找到了如何使用库在R上实现它,但我需要自己实现它的算法 inb4:我在维基上读到了关于功能选择的内容,但没有多大帮助。。。 谢谢 我的数据集如下所示:(3个类和一些特性) 使用功能划分集合的意义在于,它有助于计算最终分类。因此,最好的特性应该是一个单独就足以正确分类的特性,而最坏的特性应该是将数据集划

我正在javascript上做一个小的随机森林,我有一个2d数组,其中包含一些特性。其中一些主要是纯噪音,我想把它们从场景中移除。我一直在理解我需要为每一个特性计算什么,以便对最差的特性进行排名。我找到了如何使用库在R上实现它,但我需要自己实现它的算法

inb4:我在维基上读到了关于功能选择的内容,但没有多大帮助。。。 谢谢

我的数据集如下所示:(3个类和一些特性)


使用功能划分集合的意义在于,它有助于计算最终分类。因此,最好的特性应该是一个单独就足以正确分类的特性,而最坏的特性应该是将数据集划分为不比原始数据集更容易分类的子集(实际上,最坏的特性甚至是不将其划分为子集的特性)

因此,您正在寻找基于特征得到的子集的“倾斜”程度;越歪斜越好


有一些公式可以量化这个想法(我记得类似于p(1-p)),但我必须留给您一些工作。

使用特征划分集合的意义在于,它有助于计算最终分类。因此,最好的特性应该是一个单独就足以正确分类的特性,而最坏的特性应该是将数据集划分为不比原始数据集更容易分类的子集(实际上,最坏的特性甚至是不将其划分为子集的特性)

因此,您正在寻找基于特征得到的子集的“倾斜”程度;越歪斜越好


有一些公式可以量化这个想法(我记得类似于p(1-p)),但我必须留给你们一些工作。

一些重要的特征选择技术

1) 带套索惩罚的线性回归。2) 随机森林(或 熵或基尼)。3) 正向逐步选择。4) 落后的 逐步选择。5) P值


还有更多的特性选择技术,如果您正在使用python,您可以开始阅读,在那里您可以找到使用特性选择技术的代码

一些重要的特征选择技术

1) 带套索惩罚的线性回归。2) 随机森林(或 熵或基尼)。3) 正向逐步选择。4) 落后的 逐步选择。5) P值


还有更多的特性选择技术,如果您正在使用python,您可以开始阅读,在那里您可以找到使用特性选择技术的代码

你的意思是,你有一个数据框,其中实体在行中,观察值在列中,或者“特征”在列中,你希望剔除那些无助于区分的列?我在文章中添加了一个例子,你还可以为特征选择实现xgboost算法:你的意思是,你有一个数据框,实体在行中,观察值在列中,或者“特征”在列中在列中,您希望剔除对区分没有帮助的列吗?我在帖子中添加了示例您还可以为特征选择实现xgboost算法:谢谢!所以我想我需要基尼指数。只需绘制数据,一个特征一个特征,一个标签一个标签。然后你可以观察哪些功能有用,哪些不有用。@MalcolmMcLean不能这样做。它应该在程序内部制作,因为特性可能不同。我不用R来做这个,谢谢!所以我想我需要基尼指数。只需绘制数据,一个特征一个特征,一个标签一个标签。然后你可以观察哪些功能有用,哪些不有用。@MalcolmMcLean不能这样做。它应该在程序内部制作,因为特性可能不同。我不使用R。非常感谢您将其标记为答案和向上投票。非常感谢您将其标记为答案和向上投票。