2014-03-03 45 views
0

我已经建立了一个GridSearchCV并有一组参数,我会找到最佳的参数组合。我的GridSearch共有12个候选模型。如何打印Gridsearch中每个组合的准确性分数?

但是,我也有兴趣看到所有12的准确性分数,而不仅仅是最好的分数,因为我可以通过使用.best_score_方法清楚地看到。我对打开GridSearch有时候感觉的黑盒感到好奇。

我看到了GridSearch的一个scoring=参数,但我看不到任何方式来反复打印分数。

任何意见表示赞赏。提前致谢。

回答

3

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

谢谢,这正是我一直在寻找的。非常感激。 –