Какие метрики качества классификации существуют
Что проверяют
Понимаете ли вы, что метрика выбирается под цену ошибки, а не по привычке. Accuracy на несбалансированных данных это первый капкан.
Как отвечать
Всё считается из матрицы ошибок: TP, FP, TN, FN.
- Accuracy, доля верных ответов. Бесполезна при дисбалансе: если мошеннических транзакций один процент, модель «всё честное» даёт 99%;
- Precision, доля верных среди предсказанных положительными. Отвечает на вопрос, сколько ложных тревог;
- Recall, доля найденных среди всех положительных. Отвечает, скольких пропустили;
- F1, гармоническое среднее precision и recall. Когда нужен баланс и положительный класс редкий;
- ROC-AUC, вероятность того, что случайный положительный получит больший скор, чем случайный отрицательный. От порога не зависит, но при сильном дисбалансе выглядит оптимистично;
- PR-AUC в этом случае честнее: он не учитывает истинно отрицательные, которых подавляющее большинство.
Выбор идёт от цены ошибки. Медицинский скрининг: пропустить больного дороже ложной тревоги, значит recall. Спам-фильтр: письмо от начальника в спаме дороже пропущенного спама, значит precision.
Где спотыкаются
Оптимизируют accuracy на данных с дисбалансом и получают бесполезную модель с красивой цифрой.
Не могут объяснить, что происходит при сдвиге порога, хотя precision и recall всегда обмениваются друг на друга.
Считают AUC по предсказанным классам вместо вероятностей.
Забывают, что при нескольких классах усреднение бывает macro и weighted, и на несбалансированных данных цифры расходятся в разы.