machine-learning - grid.cv_results_中mean_validation_score对应的函数是什么?
问题描述
在旧版本的 scikit-learn 中,我们获得了交叉验证分数的平均值列表[result.mean_validation_score for result in grid.grid_scores_]
。但是从 20.0 scikit-learn 开始,我们不再能够使用grid.grid_scores_
. 相反,有grid.cv_results_
. 这是我的问题。以下哪个方法grid.cv_results_
对应于我们从中得到的 mean_validaton_score grid.grid_scores_
?
- mean_train_score
- mean_test_score
解决方案
根据 GridSearchCV 文档(https://scikit-learn.org/stable/modules/generated/sklearn.model_selection.GridSearchCV.html),您必须将您的grid.cv_results_
转换为 Pandas DataFrame,然后您可以自由访问mean_train_score和mean_test_score数据:
import pandas as pd
cv_results = pd.DataFrame(grid.cv_results_)
print(cv_results['mean_train_score'])
print(cv_results['mean_test_score'])
第一个,mean_train_score
是您从训练折叠(in-fold)mean_test_score
中获得的平均分数,是您从验证折叠(out-of-fold)中获得的平均分数。
基本上,您只mean_test_score
对严格评估超参数的性能感兴趣,但mean_train_score
可以帮助您确定模型使用某些参数拟合数据的程度以及与测试数据相关的程度(例如,通过构建验证曲线图,请参见:https ://scikit-learn.org/stable/modules/learning_curve.html )。
推荐阅读
- mysql - 无法在 MacOS 10.15 Catalina 下使用 launchd plist 启动 mysqld
- arrays - 在 Matlab 中找到最接近的较小值
- excel - 用于 3 列查找的 Excel 索引公式
- java - Android Studio 中的 webview 出现错误““网页无法加载,因为 net::ERR_ACCESS_DENIED”
- tensorflow - 使用 torch.utils.tensorboard 看不到图表
- python - 关于使用 python 进行并行处理的建议
- mobile - setState() 回调参数返回了一个未来颤振
- javascript - 如何修复无法在 JavaScript 中读取 null 的属性“样式”?
- php - 如何通过 PHP 禁用输入
- python - P4Python:AttributeError:类型对象'P4'没有属性'Map'