我正在寻找的选择方法是基于子集评估的方法(即不简单地对各个特征进行排名)。我更喜欢Matlab中的实现或基于WEKA的实现,但是使用任何其他语言的实现仍然有用。
我知道WEKA中存在CsfSubsetEval和ConsistencySubsetEval,但它们没有带来良好的分类性能,可能是因为它们受到以下限制:
CsfSubsetEval偏向于小特征子集,这可能会阻止局部预测特征包含在所选子集中,如[1]中所述。
ConsistencySubsetEval使用min-features bias [2],与CsfSubsetEval类似,导致选择的特征太少。
我知道这是"太少"因为我已经建立了具有更大子集的分类模型,并且它们的分类性能相对更好。
[1] M. A. Hall,机器学习的基于相关的特征子集选择,1999。
[2] Liu,Huan和Lei Yu,关于整合特征选择算法的分类和聚类,2005年。
答案 0 :(得分:0)
查看python scikit learn简单有效的数据挖掘和数据分析工具。 feature selection有各种实现的方法,分类,评估和许多文档和教程。
答案 1 :(得分:0)
我的搜索引导我进行以下实施:
FEAST工具箱:它是一个有趣的工具箱,由曼彻斯特大学开发,提供香农信息论功能的实现。这些实现可以从THIS网页下载,它们可用于评估各个功能以及功能的子集。
我还发现了THIS matlab代码,它是基于交互信息的选择算法的实现。
答案 2 :(得分:0)
PY_FS:用于特征选择的 Python 包
我偶然发现了这个刚刚发布(2021 年)的包 [1],其中包含许多方法,参考了他们的原始论文。