【问题标题】:Visualizing a decision tree from a sklearn random forest regressor从 sklearn 随机森林回归器可视化决策树
【发布时间】:2021-12-25 10:26:32
【问题描述】:
嗨,我有一个名为 rf 的随机森林。
documentation 告诉我rf.estimators 给出了树木的列表。我有兴趣可视化一个,或者如果我至少无法找出树有多少个节点。
我的直觉是 plot_tree 函数,显示 here 将能够在树上使用,但是当我运行时
rf.estimators_[0].plot_tree()
我明白了
AttributeError: 'DecisionTreeRegressor' object has no attribute 'plot_tree'
【问题讨论】:
标签:
python
scikit-learn
random-forest
【解决方案1】:
从 Sklearn 导入 tree 并将所需的估算器传递给 plot_tree 函数。
设置:
from sklearn.ensemble import RandomForestRegressor
from sklearn.datasets import make_regression
X, y = make_regression(n_features=4, n_informative=2,
random_state=0, shuffle=False)
regr = RandomForestRegressor(max_depth=2, random_state=0)
regr.fit(X, y)
print(regr.predict([[0, 0, 0, 0]]))
#[-8.32987858]
使用plot_tree
from sklearn import tree
tree.plot_tree(regr.estimators_[0])