【问题标题】:How is feature importance calculated for GradientBoostingClassifierGradientBoostingClassifier 如何计算特征重要性
【发布时间】:2017-10-25 02:22:46
【问题描述】:

我正在使用 scikit-learn 的梯度增强树分类器 GradientBoostingClassifier。它使特征重要性分数在feature_importances_ 中可用。这些特征重要性是如何计算的?

我想了解 scikit-learn 使用的是什么算法,以帮助我了解如何解释这些数字。该算法未在文档中列出。

【问题讨论】:

  • 谢谢,@EdChum!事实证明,这不是正确的链接(您提供的链接是 RandomForests 和 ExtraTrees 的文档),但它帮助我找到了 GradientBoostingClassifier 的答案。我写了一个解释的答案。感谢您的帮助!

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


【解决方案1】:

这在 scikit-learn 文档中记录在 elsewhere 中。具体来说,它的工作原理如下:

对于每棵树,我们将特征 F 的特征重要性计算为将遍历基于特征 F 分裂的节点的样本分数(请参阅here)。然后,我们在所有树中平均这些数字(如 here 所述)。

没有准确描述 scikit-learn 如何估计将遍历在特征 F 上分裂的树节点的节点比例。

解释:分数将在 [0,1] 范围内。更高的分数意味着该功能更重要。这是一个形状为 (n_features,) 的数组,其值为正且总和为 1.0

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-09-07
    • 2021-08-22
    • 2021-02-04
    • 2016-11-26
    • 2021-09-09
    • 2016-03-17
    • 2019-01-08
    • 2018-08-16
    相关资源
    最近更新 更多