从 xgboost 中提取权重和树结构 - 绘图树

Posted

技术标签:

【中文标题】从 xgboost 中提取权重和树结构 - 绘图树【英文标题】:Extracting weights and tree structures from xgboost - plot trees 【发布时间】:2017-09-26 01:41:38 【问题描述】:

我在 python 中使用 xgboost 包,我将在训练后提取树结构。例如,我将了解在每个节点上选择的特征和阈值,以将树结构导出到函数。 此外,我需要知道训练后每棵树的权重。 (我们知道,树的结果会像 w1*h1+w2h2+...+wn*hn 一样组合,其中 wi 是权重,hi 是第 i 棵树在 boosting 中的答案)。实际上,我需要访问权重和内部树。我在做分类。 我的另一个问题是,当我使用“from xgboost import plot_tree”时,我收到这个错误“包没有这个功能”。如何绘制我的树?

谢谢

【问题讨论】:

【参考方案1】:

您可以将 xgboost 模型转储到文本文件中,然后自行解析。该文件如下所示:

助推器[0(

最后是所有叶子的加权和。这是在二元分类和回归的情况下。

【讨论】:

非常感谢您的回答。我正在做你提到的。如果我在转储文件中有 Booster[0] 到 Booster[7],是否意味着我有 8 棵树?

以上是关于从 xgboost 中提取权重和树结构 - 绘图树的主要内容,如果未能解决你的问题,请参考以下文章

Xgboost

搜索自然语言句子结构

Html5主要标签和树结构有关

数据结构树的定义和树的三种存储结构

从python中的xgboost中提取决策规则

在 XML 树中搜索特定文本并在下一个节点中提取文本