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

时间:2014-03-03 19:49:20

标签: python performance machine-learning scikit-learn

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

然而,我也有兴趣看到所有12个的准确性得分,而不仅仅是最佳得分,我可以通过.best_score_方法清楚地看到。我很好奇打开GridSearch有时会感觉到的黑盒子。

我看到了GridSearch的{​​{1}}参数,但是我看不到任何迭代打印分数的方法。

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

1 个答案:

答案 0 :(得分:4)

使用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}]