我们可以选择在 sklearn 中使用啥决策树算法吗?

Posted

技术标签:

【中文标题】我们可以选择在 sklearn 中使用啥决策树算法吗?【英文标题】:Can we choose what Decision Tree algorithm to use in sklearn?我们可以选择在 sklearn 中使用什么决策树算法吗? 【发布时间】:2016-03-17 18:02:09 【问题描述】:

我的问题是我们可以选择在 sklearn 中使用什么决策树算法吗?

在 sklearn 的用户指南中,提到使用了 CART 算法的优化版本。

我们可以换成其他算法,比如 C4.5 吗?

【问题讨论】:

这到底是什么意思?目前不处理缺失值和分类变量,也没有后剪枝,只有预剪枝。 C4.5 并不是真正的算法,它是一个程序,对吧? 【参考方案1】:

没有。见documentation

scikit-learn uses an optimised version of the CART algorithm.

【讨论】:

【参考方案2】:

但是有一个参数标准,我们可以选择使用“gini”或“entropy”:

clf = tree.DecisionTreeClassifier(criterion="entropy")

criterion : string, optional (default=”gini”) 要测量的函数 分裂的质量。支持的标准是 Gini 的“gini” 信息增益的杂质和“熵”。

见Docs

【讨论】:

以上是关于我们可以选择在 sklearn 中使用啥决策树算法吗?的主要内容,如果未能解决你的问题,请参考以下文章

机器学习-------sklearn决策树分析

机器学习:决策树——sklearn决策树调参

sklearn实现决策树算法

sklearn-分类决策树

如何返回在 sklearn 中由 DecisionTreeClassifier 创建的决策树中使用的特征

sklearn决策树plot_tree中节点中的“值”是啥意思