scikit-learn 默认使用哪种决策树算法?

Posted

技术标签:

【中文标题】scikit-learn 默认使用哪种决策树算法?【英文标题】:Which decision tree algorithm does scikit-learn use by default? 【发布时间】:2019-12-26 09:55:04 【问题描述】:

有几种算法可以构建决策树,例如 CART(分类和回归树)、ID3(迭代二分法 3)等

当我查看一些决策树 python 脚本时,它会神奇地使用 fitpredict 函数生成结果。

scikit-learn 会根据数据巧妙地选择最佳决策树算法吗?

【问题讨论】:

【参考方案1】:

他们实际上使用 CART,但拆分标准是 gini 和 entropy。您可以查看 How to tune a Decision Tree? 以了解幕后发生的事情。

【讨论】:

【参考方案2】:

它不会自动这样做。

如果我们查看sklearn.tree.DecisionTreeClassifier 页面,我们可以看到默认标准是基尼杂质。

还有一个选项可以使用熵代替标准。

请注意,CART 使用 gini 杂质,而 ID3 使用熵作为拆分标准。

【讨论】:

以上是关于scikit-learn 默认使用哪种决策树算法?的主要内容,如果未能解决你的问题,请参考以下文章

scikit-learn决策树算法类库使用小结

如何控制scikit-learn决策树算法的精度

python中使用scikit-learn的决策树算法运行错误

[机器学习与scikit-learn-15]:算法-决策树-分类问题代码详解

转载:scikit-learn学习之决策树算法

[机器学习与scikit-learn-14]:算法-决策树-工作原理图解