Python 检查sklearn车型中的过盈和过盈

Python 检查sklearn车型中的过盈和过盈,python,scikit-learn,random-forest,Python,Scikit Learn,Random Forest,我使用sklearnRandomForestClassifier作为分类。我不知道如何评估sklearn模型的过拟合和欠拟合 model = RandomForestClassifier(n_estimators=1000, random_state=1, criterion='entropy', bootstrap=True, oob_score=True, verbose=1) model.fit(X_train, y_train) 目前,我正在使用其他指标来评估我的模型,如交叉评分、混淆

我使用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)

目前,我正在使用其他指标来评估我的模型,如交叉评分、混淆矩阵、分类报告、排列重要性。有人能帮我做这个吗

有多种方法可以测试过盈和欠盈。如果你想特别关注训练和考试成绩并进行比较,你可以用sklearns来做。如果您阅读了文档,它将返回一本字典,其中包含您提供的指标中的训练分数(如果提供为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)


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

有多种方法可以测试过拟合和欠拟合。如果你想特别关注训练和考试成绩并进行比较,你可以用sklearns来做。如果您阅读了文档,它将返回一本字典,其中包含您提供的指标中的训练分数(如果提供为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)


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

这实际上更多的是一个关于统计学习的问题,而不是关于sklearn的问题:如果您理解
交叉验证分数
,那么您也很可能理解交叉验证为什么有用,特别是如何给你一个关于泛化误差的有用估计。如果没有,你可以从交叉验证开始(这将在任何学习入门中讨论),然后再看看相关方法在sklearn中是如何自然出现的。你清楚过拟合和欠拟合的概念吗?有任何测试数据或验证数据吗?是的,我清楚。我想知道,在使用sklearn模型时,你是否能发现训练错误和测试错误。这实际上更多的是一个关于统计学习的问题,而不是关于sklearn的问题:如果你了解交叉验证分数,那么你很有可能也了解交叉验证为什么有用,特别是如何给你一个关于泛化误差的有用估计。如果没有,你可以从交叉验证开始(这将在任何学习入门中讨论),然后再看看相关方法在sklearn中是如何自然出现的。你清楚过拟合和欠拟合的概念吗?有任何测试数据或验证数据吗?是的,我清楚。我想知道,在使用sklearn模型时,您是否可以发现培训错误和测试错误。