gpt4 book ai didi

scikit-learn - 如何可视化 sklearn GradientBoostingClassifier?

转载 作者:行者123 更新时间:2023-12-01 08:49:53 25 4
gpt4 key购买 nike

我训练了一个 gradient boost classifier ,我想使用所示的 graphviz_exporter 工具对其进行可视化 here .

当我尝试时,我得到:

AttributeError: 'GradientBoostingClassifier' object has no attribute 'tree_'

这是因为 graphviz_exporter 适用于 decision trees ,但我想仍然有一种方法可以将其可视化,因为梯度提升分类器必须具有底层决策树。

有人知道怎么做吗?

最佳答案

属性估计器包含底层决策树。以下代码显示了经过训练的 GradientBoostingClassifier 的树之一。请注意,尽管集成总体上是一个分类器,但每个单独的树都计算浮点值。

from sklearn.ensemble import GradientBoostingClassifier
from sklearn.tree import export_graphviz
import numpy as np

# Ficticuous data
np.random.seed(0)
X = np.random.normal(0,1,(1000, 3))
y = X[:,0]+X[:,1]*X[:,2] > 0

# Classifier
clf = GradientBoostingClassifier(max_depth=3, random_state=0)
clf.fit(X[:600], y[:600])

# Get the tree number 42
sub_tree_42 = clf.estimators_[42, 0]

# Visualization. Install graphviz in your system
from pydotplus import graph_from_dot_data
from IPython.display import Image
dot_data = export_graphviz(
sub_tree_42,
out_file=None, filled=True, rounded=True,
special_characters=True,
proportion=False, impurity=False, # enable them if you want
)
graph = graph_from_dot_data(dot_data)
Image(graph.create_png())
树号 42:
Code output (decision tree image)

关于scikit-learn - 如何可视化 sklearn GradientBoostingClassifier?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44974360/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com