При проведении перекрестной проверки с помощью двоичного классификатора я получил «Классификационные метрики не могут обрабатывать смесь двоичных и непрерывных целей»
Я знаю, почему отображается ошибка, вопрос в том, как я могу дать команду sklearn превратить необработанные вероятности в 0 и 1?
Если я изменю счет на roc_au c, он отлично работает.
Это код:
from sklearn.model_selection import RepeatedStratifiedKFold
#model = XGBClassifier()
model = xgb.XGBRegressor(
objective = 'binary:logistic',
nthread = -1
)
# define grid
weights = [1, 10, 20, 27, 50, 75, 100, 500]
param_grid = dict(scale_pos_weight=weights)
# define evaluation procedure
cv = RepeatedStratifiedKFold(n_splits=10, n_repeats=3, random_state=1)
# define grid search
grid = GridSearchCV(estimator=model, param_grid=param_grid, n_jobs=-1, cv=cv, scoring='recall')
grid_result = grid.fit(X_train, y_train)
Спасибо