lightgbm.create_tree_digraph
- lightgbm.create_tree_digraph(booster, tree_index=0, show_info=None, precision=3, orientation='horizontal', example_case=None, max_category_values=10, **kwargs)[源代码]
- 创建指定树的有向图表示。 - 图中的每个节点表示树中的一个节点。 - 非叶子节点具有 - Column_10 <= 875.9这样的标签,这意味着“此节点在名为“Column_10”的特征上进行分裂,阈值为 875.9”。- 叶子节点具有 - leaf 2: 0.422这样的标签,这意味着“此节点是一个叶子节点,落入此节点的记录的预测值为 0.422”。数字 (- 2) 是一个内部唯一标识符,没有特殊含义。- 注意 - 欲了解更多信息,请访问 https://graphviz.readthedocs.io/en/stable/api.html#digraph。 - 参数:
- booster (Booster 或 LGBMModel) – 要转换的 Booster 或 LGBMModel 实例。 
- tree_index (int, 可选 (默认值=0)) – 要转换的目标树的索引。 
- show_info (list of str, 或 None, 可选 (默认值=None)) – - 节点中应显示哪些信息。 - 'split_gain': 添加此分裂带来的增益(gain)
- 'internal_value': 如果此节点是叶子节点,它将产生的原始预测值
- 'internal_count': 落入此非叶子节点的训练数据记录数
- 'internal_weight': 落入此非叶子节点的所有节点的总权重
- 'leaf_count': 落入此叶子节点的训练数据记录数
- 'leaf_weight': 落入此叶子节点的所有观测值的总权重(Hessian 之和)
- 'data_percentage': 落入此节点的训练数据百分比
 
- precision (int 或 None, 可选 (默认值=3)) – 用于限制浮点值显示的精度。 
- orientation (str, 可选 (默认值='horizontal')) – 树的方向。可以是 'horizontal'(水平)或 'vertical'(垂直)。 
- example_case (numpy 2-D array, pandas DataFrame 或 None, 可选 (默认值=None)) – - 与训练数据结构相同的单行数据。如果不是 None,绘图将突出显示此样本通过树的路径。 - 在 4.0.0 版本中新增。 
- max_category_values (int, 可选 (默认值=10)) – - 在树节点中显示的最大类别值数量,如果阈值数量大于此值,阈值将折叠并改为在标签工具提示中显示。 - 警告 - 在 JupyterLab 中运行时,请考虑使用 - IPython.display.HTML包装树图的 SVG 字符串,以使 工具提示 正常工作。- 示例 - from IPython.display import HTML graph = lgb.create_tree_digraph(clf, max_category_values=5) HTML(graph._repr_image_svg_xml()) - 在 4.0.0 版本中新增。 
- **kwargs – 传递给 - Digraph构造函数的其他参数。查看 https://graphviz.readthedocs.io/en/stable/api.html#digraph 获取支持参数的完整列表。
 
- 返回:
- graph – 指定树的有向图表示。 
- 返回类型:
- graphviz.Digraph