sklearn извлекает «знак бомбардира» из объекта GridSearch

У меня есть ситуация, когда я могу динамически передавать некоторые бомбардиры объекту поиска сетки либо в виде строк (= accuracy), а также пользовательские счетчики, созданные с помощью make_scorer где параметр greater_is_better возможно True или False. другими словами, мои счетчики лучше не всегда, когда они являются «наибольшей» ценностью.

Что я хочу сделать, так это динамически извлечь «знак» моего бомбардира из объекта, чтобы, когда я знаю, как ранжировать баллы (я знаю, что это тривиально, если вы делаете это «статически»), будь то предварительно настроена уже определенная метрика («точность») или заданная скоринговая метрика.

Я попытался заглянуть внутрь «основного» кода grid search objectно безрезультатно. есть ли какой-то атрибут или свойство, которое я могу использовать?

Пример:

      from sklearn.model_selection import GridSearchCV

def build_grid_1():
    cls_1 = GridSearchCV(estimator, param_grid, scoring='accuracy')
    cls_1.fit(X, y)
    return cls_1

def build_grid_2():
    cls_1 = GridSearchCV(estimator, param_grid, scoring=make_scorer(func, greater_is_better=False))
    cls_1.fit(X, y)
    return cls_1

def build_grid_3():
    cls_1 = GridSearchCV(estimator, param_grid, scoring=make_scorer(func, greater_is_better=True))
    cls_1.fit(X, y)
    return cls_1

def gauge_scoring_sign(grid_search_class):
        return scorer_sign
gauge_scoring_sign(build_grid_1()) # 1
gauge_scoring_sign(build_grid_2()) # -1
gauge_scoring_sign(build_grid_3()) # 1

0 ответов

Другие вопросы по тегам