python - 如何找出 sklearn 决策树的大小?

标签 python machine-learning scikit-learn decision-tree

我正在对决策树进行一些特征归纳,并且想知道树的大小(以节点数表示)。我该如何在 python 中做到这一点?

使用 sklearn 网站上的股票示例,

x = [[0,0],[0,1]]
y = [0,1] 

from sklearn.ensemble import RandomForestClassifier
clf = RandomForestClassifer(n_estimators = 10)
clf = clf.fit(x,y)

我可以通过 clf[1]、clf[...] 等方式获取各个树,但是如何根据总节点数确定每棵树的大小?

最佳答案

sklearn.tree._tree.Tree 对象具有 node_count 属性:

from sklearn import tree
X = [[0, 0], [1, 1]]
Y = [0, 1]
clf = tree.DecisionTreeClassifier()
clf = clf.fit(X, Y)
treeObj = clf.tree_
print treeObj.node_count

关于python - 如何找出 sklearn 决策树的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26602369/

相关文章:

python - 修复将数据从 csv 传递到 SQL 时的类型错误

python - 使用 auth.views 进行 django 身份验证

machine-learning - 将单个大型 Google Drive 存档导入到共享的 Google Colab 项目中

machine-learning - 为什么高斯径向基函数将示例映射到无限维空间?

machine-learning - 如何使用 cosine_similarity 运行 KNN?

python - 如何获得不区分大小写的 Python SET

python - 从文本文件中解析电子邮件信息

python - Tensorboard 不显示自定义对象检测的准确度图

python - Scikit-Learn .fit() 方法如何将数据传递给 .predict()?

python - 将分类数据(多列)转换为二进制数据