如何解释集合方法的特征重要性?

时间:2017-04-26 14:53:18

标签: python scikit-learn feature-selection ensemble-learning

我正在使用整体方法(随机森林,xgbclassifier等)进行分类。

一个重要方面是特征重要性预测,如下所示:

           Importance
Feature-A   0.25
Feature-B   0.09
Feature-C   0.08
.......

该模型的准确度得分约为0.85;很明显,Feature-A非常重要,因此我决定删除Feature-A并重新计算。

然而,在删除Feature-A之后,我仍然发现了良好的性能,准确度大约为0.79。

这对我来说没有意义,因为Feature-A为模型贡献了25%,如果删除,为什么准确度得分几乎不受影响?

我知道集合方法有利于将“弱”特征组合成“强”特征,因此准确度分数主要依赖于聚合而对重要特征删除不太敏感?

由于

1 个答案:

答案 0 :(得分:0)

可能还有其他功能与功能A冗余。例如,假设功能G,H,I是功能A的冗余:如果你知道功能G,H,I的值,那么特征A的值几乎是确定的。

这与您的结果一致。如果我们包含特征A,模型将向我们学习它,因为使用特征A并忽略特征G,H,I非常简单以获得极好的准确性,因此它具有极好的准确性,高特征A的重要性,特征G,H,I的重要性低。如果我们排除特征A,通过使用特征G,H,I,模型仍然可以获得几乎一样好的精度,因此它仍然具有非常好的准确性(尽管模型可能变得更复杂,因为G之间的关系,H,I和类比A和类之间的关系更复杂。