Ответ 1
Введение
Как правило, каждый раз, когда вы хотите сравнить ROC AUC с баллом F1, думайте об этом так, как будто вы сравниваете производительность своей модели на основе:
[Sensitivity vs (1-Specificity)] VS [Precision vs Recall]
Теперь нам нужно понять, что такое: Чувствительность, Специфичность, Точность и Вспомнить интуитивно!
Фон
Чувствительность: определяется по следующей формуле:
Говоря интуитивно, если у нас есть модель, чувствительная на 100%, это означает, что она НЕ пропустила Истинный Позитив, другими словами, было НЕТ Ложных Отрицательных (т.е. положительный результат, который помечен как отрицательный). Но есть риск иметь много ложных срабатываний!
Специфичность: определяется по следующей формуле:
Говоря интуитивно, если у нас есть 100% конкретная модель, это означает, что она НЕ пропустила ни одного истинного отрицания, другими словами, было НЕТ ложных положительных результатов (то есть отрицательный результат, который помечен как положительны). Но есть риск иметь много ложных негативов!
Точность: определяется по следующей формуле:
Говоря интуитивно, если у нас есть 100% точная модель, это означает, что она могла бы отловить все истинно положительные результаты, но было НЕТ ложно положительных результатов.
Напомним: задается по следующей формуле:
Говоря интуитивно, если у нас есть модель 100% отзыва, это означает, что она НЕ пропустила Истинный Позитив, другими словами, было НЕТ Ложных Отрицательных (т.е. положительный результат, который помечены как отрицательные).
Как видите, четыре понятия очень близки друг к другу!
Как правило,, если цена ложного отрицательного результата высока, мы хотим повысить чувствительность модели и вспомнить (что в точности соответствует их формуле) !.
Например, при обнаружении мошенничества или обнаружении больного пациента мы не хотим маркировать/прогнозировать мошенническую транзакцию (True Positive) как не мошенническую (False Negative). Кроме того, мы не хотим маркировать/предсказывать заразного больного пациента (истинный положительный) как нездорового (ложный отрицательный).
Это связано с тем, что последствия будут хуже, чем у ложного положительного результата (неправильная маркировка безвредной транзакции как мошеннической или незаразной - как заразной).
С другой стороны, если цена ложного срабатывания высока, мы хотим повысить специфичность и точность модели !.
Например, при обнаружении спама в электронной почте мы не хотим помечать/прогнозировать не спам (True Negative) как спам (False Positive). С другой стороны, неспособность пометить спам-сообщение как спам (False Negative) обходится дешевле.
Счет F1
Это дается по следующей формуле:
Счет F1 сохраняет баланс между точностью и отзывом. Мы используем его при неравномерном распределении классов, так как точность и отзыв могут дать неверные результаты!
Таким образом, мы используем показатель F1 в качестве индикатора сравнения между Точностью и Числами отзыва!
Площадь под кривой рабочих характеристик приемника (AUROC)
Он сравнивает чувствительность с (1-специфичность), другими словами, сравнивает реальный положительный уровень с ложным положительным уровнем.
Таким образом, чем больше AUROC, тем больше различие между истинными позитивами и истинными негативами!
AUROC vs F1 Score (заключение)
Как правило, ROC для многих различных уровней пороговых значений и, таким образом, имеет много значений F-баллов. Оценка F1 применима для любой конкретной точки на кривой ROC.
Вы можете думать об этом как о мере точности и вспоминать при определенном пороговом значении, тогда как AUC - это область под кривой ROC. Чтобы оценка F была высокой, точность и отзыв должны быть высокими.
Следовательно,, когда у вас есть дисбаланс данных между положительными и отрицательными выборками, вы всегда должны использовать F1-показатель, потому что ROC в среднем превышает все возможные пороги!
Далее читайте:
EDIT
Я намеренно использовал оба термина Sensitivity
и Recall
, хотя они абсолютно одинаковы, просто чтобы подчеркнуть тот факт, что по соглашению в качестве инженеров ML мы, скорее всего, будем использовать термин Recall
, тогда как статистики, скорее всего, будут использовать этот термин. Sensitivity
, чтобы сослаться на ту же самую меру.