Оценка в GridSearch CV
Я только что начал с GridSearchCV в Python,но я запутался, что это такое. Где-то я видел
scorers = {
'precision_score': make_scorer(precision_score),
'recall_score': make_scorer(recall_score),
'accuracy_score': make_scorer(accuracy_score)
}
grid_search = GridSearchCV(clf, param_grid, scoring=scorers, refit=refit_score,
cv=skf, return_train_score=True, n_jobs=-1)
Какова цель использования этих значений, то есть точности, отзыва, точности при подсчете очков?
Это используется gridsearch в предоставлении нам оптимизированных параметров, основанных на этих оценочных значениях.... например, для лучшей оценки точности он находит лучшие параметры или что-то в этом роде?
Он вычисляет точность, отзыв, точность для возможного параметры и дает результат, теперь вопрос в том, если это верно,то он выбирает лучшие параметры, основанные на точности, вспомнить или точность? Верно ли вышеприведенное утверждение?
2 ответа:
Вы в основном правы в своих предположениях. Этот словарь параметров позволяет gridsearch оптимизировать каждую метрику оценки и находить лучшие параметры для каждой оценки.
Однако, вы не можете затем иметь gridsearch автоматически соответствовать и возвращать
best_estimator_
, не выбирая, какой счет использовать дляrefit
, вместо этого он выдаст следующую ошибку:ValueError: For multi-metric scoring, the parameter refit must be set to a scorer key to refit an estimator with the best parameter setting on the whole data and make the best_* attributes available for that metric. If this is not needed, refit should be set to False explicitly. True was passed.
Какова цель использования этих значений, то есть точности, отзыва, точности при подсчете очков?
На всякий случай ваш вопрос также включает: "Что такое точность, отзыв и точность и почему они используются?"...
- точность = (число правильных предсказаний) / (общее число предсказаний)
- точность = (истинно положительные)/(истинно положительные + ложноположительные)
- помню = (истинно положительные)/(истинно положительные + ложно отрицательные)
Где истинный позитив - это предсказание истинного, которое верно, ложноположительное-это предсказание истинного, которое неверно, и ложноотрицательное-это предсказание ложного, которое неверно.
Отзыв и точность являются полезными метриками при работе с несбалансированными наборами данных (например, существует много выборок с меткой '0', но гораздо меньше выборок с меткой '1'.
Отзыв и точность также приводят к немного более сложным показателям оценки, таким как F1_score (и Fbeta_score), которые также очень полезный.
Вототличная статья , объясняющая, как работают память и точность.