繁体   English   中英

检查 sklearn 模型中的过拟合和欠拟合

[英]Checking for Overfitting and Underfitting in sklearn models

我使用 sklearn RandomForestClassifier作为我的分类。 我不知道如何评估 sklearn 模型的过度拟合和欠拟合。

model = RandomForestClassifier(n_estimators=1000, random_state=1, criterion='entropy', bootstrap=True, oob_score=True, verbose=1)
model.fit(X_train, y_train)

目前,我正在使用其他指标来评估我的模型,例如 - cross_val_score、confusion_matrix、classification_report、PermutationImportance。 有人可以帮我解决这个问题。

有多种方法可以测试过拟合和欠拟合。 如果您想专门查看训练和测试分数并进行比较,您可以使用 sklearns cross_validate来执行此操作 如果您阅读文档,它将返回一个字典,其中包含火车分数(如果以 train_score=True 形式提供)和您提供的指标中的测试分数。

示例代码

model = RandomForestClassifier(n_estimators=1000, random_state=1, criterion='entropy', bootstrap=True, oob_score=True, verbose=1)
cv_dict = cross_validate(model, X, y, return_train_score=True)

您还可以简单地使用训练测试拆分创建一个保持测试集,并使用测试数据集比较您的训练和测试分数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM