Синтаксис make_scorer библиотеки sklearn

Пытаюсь запустить поиск по сетке на собственной метрике оценки для бинарной классификации 0-1. Не понимаю как правильно настроить api make_scorer, в документации от не нашла

Метрика оценки = сумма R, при условии, что предсказан класс 1. где R заранее посчитанные данные

Метрика:

def summa_pos(y, y_pred, res):
    return res[y_pred==1][res>=0].sum()

Модель:

HPOXGB = xgboost.XGBClassifier()

Сетка оптимизации:

param_grid = {'n_estimators': [20,30,50,80,100],
              'max_depth'   : [3,5]}

Настройка параметров модели на метрике:

XGBgs = GridSearchCV(HPOXGB, param_grid, scoring = make_scorer(summa_pos(train_labels, y_pred, R))) 
XGBgs.fit(train_data,  train_labels)

И разумеется получаю ошибку:

----> 9 XGBgs = GridSearchCV(HPOXGB, param_grid, scoring = make_scorer(summa_pos(train_labels, y_pred, res = TradeResult))) 10 XGBgs.fit(train_data, train_labels)

NameError: name 'y_pred' is not defined

т.к. y_pred нет. Как передать y_pred? Какие ошибки у меня при использовании api make_scorer?


Ответы (0 шт):