Вторая часть серии посвящена метрикам классификации

В первом блоге мы обсудили некоторые важные метрики, используемые в регрессии, их плюсы и минусы, а также варианты использования. В этой части основное внимание будет уделено наиболее часто используемым метрикам в классификации, почему мы должны предпочесть одни другим с учетом контекста.

Определения

Прежде чем рассматривать плюсы и минусы каждого метода, давайте сначала разберемся с основной терминологией, используемой в задачах классификации. Вы можете пропустить этот раздел, если вы уже знакомы с терминологией.

  • Отзыв, или чувствительность, или TPR (истинно положительный показатель): количество элементов, правильно определенных как положительные, из общего количества истинно положительных результатов - TP / (TP + FN)
  • Специфичность или TNR (True Negative Rate): количество элементов, правильно определенных как отрицательные из общего числа отрицательных значений - TN / (TN + FP)
  • Точность: количество элементов, правильно определенных как положительные, из общего числа элементов, определенных как положительные - TP / (TP + FP)
  • Частота ложных положительных результатов или ошибка типа I: количество элементов, ошибочно определенных как положительные, из общего числа истинно отрицательных результатов - FP / (FP + TN)
  • Ложноотрицательная оценка или ошибка типа II: количество элементов, ошибочно определенных как отрицательные, из общего числа истинно положительных результатов - FN / (FN + TP)

  • Матрица неточностей

  • Оценка F1: это гармоническое среднее значение точности и отзыва, определяемое как -
    F1 = 2 * Precision * Recall / (Precision + Recall)
  • Точность: процент от общего количества правильно классифицированных элементов - (TP + TN) / (N + P)

Оценка ROC-AUC

Вероятностная интерпретация оценки ROC-AUC заключается в том, что если вы случайным образом выбираете положительный случай и отрицательный случай, вероятность того, что положительный случай превосходит отрицательный случай согласно классификатору, определяется AUC. Здесь ранг определяется в соответствии с порядком предсказанных значений.

Математически он рассчитывается по площади под кривой чувствительности (TPR) по сравнению с
FPR (1-специфичность). В идеале мы хотели бы иметь высокую чувствительность и высокую специфичность, но в реальных сценариях всегда существует компромисс между чувствительностью и специфичностью.

Некоторые важные характеристики ROC-AUC:

  • Значение может находиться в диапазоне от 0 до 1. Однако оценка AUC случайного классификатора для сбалансированных данных составляет 0,5.
  • Показатель ROC-AUC не зависит от порога, установленного для классификации, поскольку он учитывает только ранг каждого прогноза, а не его абсолютное значение. То же самое не относится к оценке F1, которая требует порогового значения в случае вывода вероятностей.

Log-Loss

Логарифмические потери - это мера точности, которая включает в себя идею вероятностной уверенности, заданную следующим выражением для двоичного класса:

Он учитывает неопределенность вашего прогноза в зависимости от того, насколько он отличается от фактического значения. В худшем случае, допустим, вы предсказали 0,5 для всех наблюдений. Таким образом, потеря журнала станет -log (0,5) = 0,69. Следовательно, мы можем сказать, что все, что выше 0,6, является очень плохой моделью с учетом фактических вероятностей.

Дело 1

Сравнение логарифма потерь с ROC и F1

Рассмотрим случай 1 (сбалансированные данные), похоже, что модель 1 лучше справляется с предсказанием абсолютных вероятностей, тогда как модель 2 лучше всего работает при ранжировании наблюдений в соответствии с их истинными метками. Давайте сверимся с фактической оценкой:

Если вы рассматриваете потери журнала, модель 2 хуже всего дает высокое значение потери журнала, потому что абсолютные вероятности сильно отличаются от фактических меток. Но это полностью расходится с оценкой F1 и AUC, согласно которой Модель 2 имеет 100% точность. Кроме того, вы хотели бы отметить, что с разными пороговыми значениями оценка F1 меняется, и предпочтение отдается модели 1 модели 2 для порога по умолчанию 0,5.

Выводы, сделанные из приведенного выше примера (сбалансированные):
- Если вам нужна абсолютная вероятностная разница, используйте лог-потерю
- Если вас интересует только окончательный прогноз класса и вы не хотите настраивать порог, выберите показатель AUC
-Счет F1 чувствителен к пороговому значению, и вы должны сначала настроить его, прежде чем сравнивать модели

Случай 2

Как каждый из них справляется с классовым дисбалансом?

Единственное различие между двумя моделями состоит в том, что они предсказывают наблюдения 13 и 14. Модель 1 лучше справляется с классификацией наблюдения 13 (метка 0), тогда как Модель 2 лучше справляется с классификацией наблюдения 14 (метка 1). Цель состоит в том, чтобы увидеть, какая модель лучше отражает разницу в классификации несбалансированного класса (класс с небольшим количеством наблюдений, здесь это метка 1). В таких задачах, как обнаружение мошенничества / обнаружение спама, где положительных меток мало, мы хотели бы, чтобы наша модель правильно предсказывала положительные классы, и, следовательно, мы когда-нибудь предпочтем ту модель, которая способна классифицировать эти положительные метки.

Очевидно, что в этом случае потеря журнала не выполняется, потому что в соответствии с потерями журнала обе модели работают одинаково. Это связано с тем, что функция логарифмических потерь симметрична и не различает классы.

И оценка F1, и оценка ROC-AUC лучше подходят для предпочтения модели 2 модели 1. Таким образом, мы можем использовать оба этих метода для определения дисбаланса классов. Но нам придется копать дальше, чтобы увидеть, как по-разному они относятся к классовой диспропорции.

В предыдущем примере мы видели, что положительных ярлыков было немного. Во втором примере было несколько негативных ярлыков. Давайте посмотрим, как оценка F1 и ROC-AUC различаются между этими двумя случаями.

Оценка ROC-AUC учитывала случай нескольких отрицательных меток так же, как и случай нескольких положительных меток. Здесь интересно отметить, что оценка F1 практически одинакова как для Model 3, так и для Model 4, потому что количество положительных меток велико, и он учитывает только неправильную классификацию положительных меток.

Выводы, сделанные из приведенного выше примера:
- Если вас интересует меньший по численности класс, независимо от того, положительный он или отрицательный, выберите показатель ROC-AUC.

Когда вы предпочтете F1 перед ROC-AUC?

Если у вас небольшой положительный класс, то оценка F1 имеет больше смысла. Это обычная проблема при обнаружении мошенничества, когда положительных ярлыков мало. Мы можем понять это утверждение на следующем примере.

Мы можем видеть, что модель (1) предсказывает 5 положительных результатов из 100 истинных положительных результатов в наборе данных размером 10 000 наблюдений, в то время как другая модель (2) предсказывает 90 положительных результатов из 100 истинных положительных результатов. Ясно, что в этом случае модель (2) работает намного лучше, чем модель (1). Давайте посмотрим, смогут ли и оценка F1, и оценка ROC-AUC уловить эту разницу.

Оценка F1 для модели (1) = 2 * (1) * (0,1) / 1,1 = 0,095

Оценка F1 для модели (2) = 2 * (1) * (0,9) / 1,9 = 0,947

Да, разница в баллах F1 отражает производительность модели.

ROC-AUC для модели (1) = 0,5

ROC-AUC для модели (2) = 0,93

ROC-AUC также дает достойную оценку модели 1, что не является хорошим показателем ее производительности. Следовательно, мы должны быть осторожны при выборе roc-auc для несбалансированных наборов данных.

Какую метрику следует использовать для множественной классификации?

У нас есть еще три типа небинарной классификации:

  • Мультикласс: задача классификации с более чем двумя классами, при которой входные данные должны быть классифицированы в один и только один из этих классов. Пример: классифицируйте набор изображений фруктов по любой из этих категорий - яблоки, бананы и апельсины.
  • Несколько ярлыков: классификация образца по набору целевых ярлыков. Пример: тегирование блога по одной или нескольким темам, таким как технологии, религия, политика и т. Д. Ярлыки изолированы, и их отношения не считаются важными.
  • Иерархический: каждую категорию можно сгруппировать вместе с аналогичными категориями, создав метаклассы, которые, в свою очередь, можно снова сгруппировать, пока мы не достигнем корневого уровня (набора, содержащего все данные). Примеры включают классификацию текста и классификацию видов. Подробнее читайте в этом блоге.

В этом блоге мы рассмотрим только первую категорию.

Как вы можете видеть в приведенной выше таблице, в целом у нас есть два типа показателей - микро-среднее и макро-среднее, мы обсудим плюсы и минусы каждого из них. Наиболее часто используемые метрики для мультиклассов - это оценка F1, средняя точность, лог-потери. Пока еще нет хорошо разработанной оценки ROC-AUC для мультиклассов.

Лог-потеря для мультикласса определяется как:

- В методе микро-среднего вы суммируете отдельные истинные положительные, ложные и ложные отрицательные результаты системы для различных наборов, а затем применяете их для получения статистики.
- В макросреднем вы берете среднее точности и отзывчивости системы на разных наборах

Микро-среднее значение предпочтительнее, если существует проблема несбалансированности классов.

В третьей части я сосредоточусь на показателях, используемых в задачах неконтролируемого обучения, где еще труднее количественно оценить правильность модели без наличия целевых переменных. Будьте на связи! А пока читайте другие мои блоги здесь!

Обо мне: кандидат наук о данных в USF. Заинтересован в работе с межфункциональными группами для извлечения информации из данных и применения знаний машинного обучения для решения сложных задач науки о данных.
LinkedIn: www.linkedin.com/in/alvira-swalin

использованная литература

  1. Https://classeval.wordpress.com/simulation-analysis/roc-and-precision-recall-with-imbalanced-datasets/
  2. Https://en.wikipedia.org/wiki/Precision_and_recall
  3. Https://www.sciencedirect.com/science/article/pii/S0306457309000259
  4. Https://stats.stackexchange.com/questions/11859/what-is-the-difference-between-multiclass-and-multilabel-problem
  5. Https://datascience.stackexchange.com/questions/15989/micro-average-vs-macro-average-performance-in-a-multiclass-classification-settin/16001