如何打印 Gridsearch 中每个组合的准确度分数?

Mat*_*ien 2 python performance machine-learning scikit-learn

我已经设置了 GridSearchCV 并拥有一组参数,我将找到最佳的参数组合。我的 GridSearch 总共包含 12 个候选模型。

然而,我也有兴趣查看所有 12 个分数的准确度分数,而不仅仅是最佳分数,因为我可以通过使用该.best_score_方法清楚地看到这一点。我很好奇打开 GridSearch 有时感觉的黑匣子。

我看到scoring=GridSearch 的一个参数,但我看不到任何迭代打印分数的方法。

任何建议表示赞赏。提前致谢。

Fre*_*Foo 5

使用grid_scores_属性:

>>> clf = GridSearchCV(LogisticRegression(), {'C': [1, 2, 3]})
>>> clf.fit(np.random.randn(10, 4), np.random.randint(0, 2, 10))
GridSearchCV(cv=None,
       estimator=LogisticRegression(C=1.0, class_weight=None, dual=False, fit_intercept=True,
          intercept_scaling=1, penalty='l2', random_state=None, tol=0.0001),
       fit_params={}, iid=True, loss_func=None, n_jobs=1,
       param_grid={'C': [1, 2, 3]}, pre_dispatch='2*n_jobs', refit=True,
       score_func=None, scoring=None, verbose=0)
>>> from pprint import pprint
>>> pprint(clf.grid_scores_)
[mean: 0.40000, std: 0.11785, params: {'C': 1},
 mean: 0.40000, std: 0.11785, params: {'C': 2},
 mean: 0.40000, std: 0.11785, params: {'C': 3}]
Run Code Online (Sandbox Code Playgroud)