Я пытаюсь получить среднее значение точности и вспомнить ОБА положительный и отрицательный класс в 10-кратной перекрестной проверке. Моя модель является двоичным классификатором.
Я запустил приведенные ниже коды и, к сожалению, он вернул только среднюю точность и отзыв для положительного класса. Как я могу сказать алгоритму возвращать среднюю точность и отзывать оценки для отрицательного класса?
from sklearn.metrics import make_scorer, accuracy_score, precision_score, recall_score, f1_score
from sklearn.model_selection import cross_validate
scoring = {'accuracy' : make_scorer(accuracy_score),
'precision' : make_scorer(precision_score),
'recall' : make_scorer(recall_score),
'f1_score' : make_scorer(f1_score)}
results = cross_validate(model_unbalanced_data_10_times_weight, X, Y, cv=10, scoring=scoring)
np.mean(results['test_precision'])
np.mean(results['test_recall'])
Я также попытался распечатать отчет о классификации, используя команду "classification_report(y_test, predictions)
", которая привела к распечатка на скриншоте ниже. Однако я считаю, что оценки точности / отзыва из отчета о классификации основаны только на 1 прогоне, а не на среднем за 10 раз (поправьте меня, если я ошибаюсь).