在sklearn中确定DecisionTreeClassifier的max_depth

时间:2017-08-14 03:23:52

标签: python-3.x scikit-learn decision-tree grid-search

当我在skelarn中使用GridSearchCV调整决策树时,我有一个问题。当我确定max_depth的范围时,我认为所需的max_depth具体情况不同。因为,样本或要素的数量会影响决定max_depth。那么,是否有适当的标准来确定max_depth的范围,或者它只是由直觉决定的?

2 个答案:

答案 0 :(得分:0)

您可以尝试根据具体情况更改max_depth并记录性能。

这可能有助于您获得表现。

http://scikit-learn.org/stable/modules/generated/sklearn.metrics.log_loss.html

您可以通过测试确定最大深度。 但是,如果要从树中调整max_depth,可以尝试使用足够的数据训练另一个学习算法以找出它。 (或简单地用线性回归)

答案 1 :(得分:0)

通常the recommendationmax_depth=3开始,然后从那里开始工作,Decision Tree (DT)文档更深入地介绍了这些内容。

具体使用Ensemble MethodsRandomForestClassifierDT Regression也有助于确定max_depth是否设置为高和/或过度拟合。