随机森林,用于训练集和测试集的auc

时间:2020-07-10 19:24:25

标签: python machine-learning scikit-learn random-forest

我正在尝试调整我的随机森林分类器。当我使用GridSearchCV时,最好的参数是min_samples_split = 2min_samples_leaf = 4max_depth = None,我认为这绝对是过拟合的。因此,我为训练和测试数据绘制了auc:

AUC vs depth

该图显示,随着我们增加max_depth,train_auc和test_auc都会增加;该图有意义吗?因为我认为随着深度的增加,测试数据的性能实际上会下降。

2 个答案:

答案 0 :(得分:0)

我认为您需要限制“ max_depth”以避免过度拟合。这是你的直觉。因此,我的建议是阅读此enter image description here。也许会对您有帮助

答案 1 :(得分:0)

您正确地期望较大的max_depth会导致过拟合并最终降低测试分数。但是,正如您的图所示,只有在深度14之后,数据才会发生这种情况。您说最优的max_depthNone,即全深度树,它< / em>令人惊讶,但是我们需要更多地了解您的数据,搜索空间等内容,才能提供更多信息。

现在,在某些情况下,测试分数不是唯一的考虑因素,您可能想要考虑使用比提供最佳测试分数小的max_depth。参见例如https://datascience.stackexchange.com/q/66350/55122。因此,查看您的绘图,也许您更喜欢10左右的深度,作为性能稍差一些的潜在稳定模型。