如何解释用于决策树的单热编码后的特征重要性

时间:2016-10-14 15:52:47

标签: machine-learning scikit-learn decision-tree

我知道决策树有由Gini计算的feature_importance属性,它可以用来检查哪些功能更重要。

但是,对于scikit-learn或Spark中的应用程序,它只接受数字属性,所以我必须将字符串属性传递给数字属性,然后对其执行单热编码器。当特征被放入决策树模型时,它是0-1编码而不是原始格式,我的问题是,如何解释原始属性的特征重要性?在尝试解释特征重要性时,我应该避免使用单热编码器吗?

感谢。

1 个答案:

答案 0 :(得分:1)

从概念上讲,您可能希望使用一些重要的排列方式。基本思想是,您获取原始数据集,并一次随机地随机排列每一列1的值。然后,您用模型对扰动的数据进行评分,并将性能与原始性能进行比较。如果一次完成1列,则可以通过销毁每个变量并将其索引到损失最大的变量(将变为1或100%)的方式来评估性能损失。如果您可以对1个热编码之前的原始数据集执行此操作,那么您将获得一项将它们整体分组的重要性度量。