首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >有没有办法从随机森林模型中提取树的深度?

有没有办法从随机森林模型中提取树的深度?
EN

Stack Overflow用户
提问于 2019-05-21 13:20:58
回答 1查看 346关注 0票数 1

我创建了一个随机森林分类器,我是,试图生成我的随机森林模型的树的深度直方图。我只是不能提取森林里每棵树的深度。

我的RF模型被称为'RF_optimised‘,我已经尝试了下面的代码来迭代我的树并可视化它已经工作了。我已经看过了estimators_export_graphviz文档,但是似乎没有一种方法可以提取树的实际深度。

代码语言:javascript
复制
from sklearn import tree
from sklearn.tree import export_graphviz
from sklearn.externals.six import StringIO

# Create a string buffer to write to (a fake text file)
f = StringIO()

i_tree = 0
for tree_in_forest in RF_optimised.estimators_:

    export_graphviz(tree_in_forest,out_file=f,
    #feature_names=col,
    filled=True,
    rounded=True,
    proportion=True)

    graph = pydotplus.graph_from_dot_data(f.getvalue())
    display(Image(graph.create_png()))

我需要一个函数来迭代我的随机森林中的树,并将树的深度存储在一个列表或数据帧中,以便稍后生成一个直方图。有人能帮忙吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-21 23:45:11

解释器中的一些研究表明,每个Tree实例都有一个max_depth参数,这似乎是我要寻找的--同样,它没有文档化。

代码语言:javascript
复制
[estimator.tree_.max_depth for estimator in RF_optimised.estimators_]

为我做了个诀窍:)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56239265

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档