Scikit learn 在GridSearchCV中将精度用作评分时如何指定正标签

Scikit learn 在GridSearchCV中将精度用作评分时如何指定正标签,scikit-learn,grid-search,scoring,Scikit Learn,Grid Search,Scoring,在sklearn.metrics.precision\u score(y,y\u pred,pos\u label=[0])中,我可以指定正标签,如何在GridSearchCV中也指定它 如果在使用自定义评分时无法指定,如何定义 我试过这个: model = sklearn.model_selection.GridSearchCV( estimator = est, param_grid = param_grid, scoring = 'prec

sklearn.metrics.precision\u score(y,y\u pred,pos\u label=[0])
中,我可以指定正标签,如何在GridSearchCV中也指定它

如果在使用自定义评分时无法指定,如何定义

我试过这个:

model = sklearn.model_selection.GridSearchCV(
        estimator = est, 
        param_grid = param_grid,
        scoring = 'precision',
        verbose = 1,
        n_jobs = 1,
        iid = True,
        cv = 3)
但我有一个错误:

custom_score = make_scorer(precision_score(y, y_pred,pos_label=[0]),  
                          greater_is_better=True)  
阅读,您可以将任何
kwargs
传递到
make_scorer
中,它们将自动传递到
score_func
可调用中

NameError: name 'y_pred' is not defined
然后将此
自定义记分器
传递给
GridSearchCV

from sklearn.metrics import precision_score, make_scorer
custom_scorer = make_scorer(precision_score, greater_is_better=True,  pos_label=0)
gs = GridSearchCV(est, ..., scoring=custom_scorer)