我正在尝试使用GridSearchCv函数优化隔离林模型的参数。我有关于欺诈检测的数据集,其中目标变量的值为[0,1]。
当我尝试将精度用作得分手时,并运行以下功能:
clf = IsolationForest(n_jobs=-1)
param_grid = {'n_estimators' : range(20,230,30)}
scorers = {'precision_score': make_scorer(precision_score)}
skf = StratifiedKFold(n_splits=10)
grid_search = GridSearchCV(clf, param_grid, scoring=scorers, refit=refit_score,
cv=skf, return_train_score=True, n_jobs=-1)
grid_search.fit(X_train.values, y_train.values)
我总是得到,错误提示:
Target is multiclass but average='binary'. Please choose another average setting.
我不明白为什么,我尝试使用具有二进制目标变量的其他数据集来工作,并且有效。