【问题标题】:Tree details in random forest随机森林中的树细节
【发布时间】:2016-10-08 01:16:56
【问题描述】:

我正在寻找一个 python 或 R 中的随机森林包,它可以让我获得关于最终构建的森林的一些细粒度的细节。特别是,我想:

  1. 获取创建的树的一些表示;
  2. 对于森林中的每棵树,获取其与数据拟合程度的总体度量(如熵);
  3. 对于训练集中的每条记录和森林中的每棵树,记录它最终位于哪个终端叶;和
  4. 对于新记录,对于森林中的每棵树,记录它最终位于哪个末端叶子中。

我意识到 (4) 的解决方案也可以作为 (3) 的解决方案,但我猜测 (3) 应该相对容易通过在森林生长时密切关注结果来实现。

我非常努力地研究了 R 和 python 中的可用选项,但我找不到满足所有这四个要求的现成例程。 (很难找到一个满足条件(1)的,让你直接看到森林。)

如果有人知道我错过了什么,或者自己构建了这样的例程,我非常想要一个链接/参考。

【问题讨论】:

    标签: python r machine-learning random-forest


    【解决方案1】:

    另一个解决方案是lime,它会解释预测的特征权重,并有一个使用matplotlib的可视化解释,它可以很容易地与jupyter(ipython) notebook集成。

    【讨论】:

      【解决方案2】:

      试试这个:

      用于解释 scikit-learn 的决策树和随机数的包 森林预测。允许将每个预测分解为偏差和 特征贡献组件,如中所述 http://blog.datadive.net/interpreting-random-forests/。对于数据集 具有 n 个特征,数据集上的每个预测被分解为 预测 = 偏差 + feature_1_contribution + ... + feature_n_contribution。

      pip install treeinterpreter
      

      http://blog.datadive.net/random-forest-interpretation-with-scikit-learn/

      【讨论】:

      • 嗯——以前从未见过这个。感谢您的提示;我去看看。
      • 如果那里缺少某些东西,可以通过查看生成的树来自己添加分析。见stackoverflow.com/questions/50600290/…
      猜你喜欢
      • 2019-10-23
      • 2017-11-28
      • 2017-12-24
      • 2016-07-05
      • 2020-08-16
      • 2019-12-20
      • 2017-09-03
      • 2015-10-26
      • 2021-03-24
      相关资源
      最近更新 更多