【问题标题】:DecisionTreeClassifier vs ExtraTreeClassifierDecisionTreeClassifier vs ExtraTreeClassifier
【发布时间】:2013-12-09 06:54:15
【问题描述】:
我正在尝试从 scikit-learn 包中找出哪种决策树方法更适合我执行分类任务的需要。
但是,我发现那里有两个可用的决策树模型:
- 标准 DecisionTreeClassifier 基于 scikit.tree 包中优化的 CART 算法。
- 来自 scikit.ensemble 包的集成方法 ExtraTreeClassifier。
谁能具体说明使用这些模型的优缺点?
【问题讨论】:
标签:
scikit-learn
decision-tree
【解决方案1】:
ExtraTreeClassifier 是 DecisionTreeClassifier 的一个极其随机的版本,意在作为 ExtraTreesClassifier 整体的一部分在内部使用。
Averaging ensembles 例如RandomForestClassifier 和ExtraTreesClassifier 旨在解决单个DecisionTreeClassifier 实例的方差问题(对于训练集中的微小变化缺乏稳健性)。
如果您的主要目标是最大限度地提高预测准确性,您几乎应该始终使用决策树集合,例如 ExtraTreesClassifier(或 boosting ensemble),而不是训练单个决策树。
查看原文Extra Trees paper 了解更多详情。