Как интерпретировать и когда использовать кривые рабочих характеристик приемника

Кривые ROC являются важными помощниками в оценке и настройке классификационных моделей. Но некоторым из нас их может быть очень сложно понять. Я перечислю все причины, по которым эти кривые трудно понять новичкам, и одну за другой раскрою их тайну. Если вы безуспешно пытались интерпретировать кривые ROC ранее, эта статья поможет вам окончательно понять их.
Если вы не знакомы с матрицей путаницы, чувствительностью, специфичностью, истинным положительным уровнем и т. Д., Обратитесь к моей предыдущей статье. .

Причины, по которым кривые ROC кажутся немного сложными:

1. Их устрашающее название Receiver Operating Characteristic не дает буквального объяснения его значения

2. Ось X, показывающая специфичность 1, немного дезориентирует, когда мы пытаемся визуально изучить кривую.

3. Кривая ROC показывает эффективность одной модели классификации при всех порогах классификации. Его можно использовать для оценки прочности модели. Кривые ROC также можно использовать для сравнения двух моделей. Это сбивает с толку, когда мы пытаемся понять / применить все эти концепции одновременно.

4. Что именно представляет собой случайная модель, которую представляет диагональ? Это худшая из возможных моделей?

Давайте попробуем разгадать каждую из этих загадок одну за другой, чтобы понять кривые ROC.

1. Название - кривая рабочих характеристик приемника.

Кривая ROC была впервые использована во время Второй мировой войны для анализа радиолокационных сигналов. После нападения на Перл-Харбор армия США начала новое исследование, направленное на повышение скорости обнаружения японских самолетов по сигналам их радаров. Излишне говорить, что они не хотели пропустить ни одного из них. Они также не хотели тратить свои ресурсы на ложные тревоги. Они измерили способность оператора радиолокационного приемника делать такие прогнозы, которые называются рабочими характеристиками приемника. Это происхождение имени. Назначение кривой было похоже на то, как мы сейчас используем ее для улучшения наших моделей машинного обучения. Цель состояла в том, чтобы проанализировать предсказательную силу предсказателя в обеспечении обнаружения как можно большего количества истинных положительных результатов при минимизации ложных срабатываний.

2. Сюжет - Чувствительность против (1-Специфичность)

Кривая ROC представляет собой график истинно положительной скорости (TPR) на оси Y против ложноположительной скорости (FPR) на оси x.

TPR = чувствительность
FPR = 1-специфичность

Лучше понимать кривую ROC в их первоначальном виде, TPR Vs FPR. Как только вы их поймете, сделать замены с использованием приведенных выше уравнений будет легко.

Почему мы сравниваем TPR и FPR?

Скажем, у нас есть модель бинарной классификации, которая предсказывает вероятность принадлежности наблюдений к классам ДА и НЕТ. Выбираем порог вероятности = 0,5. Наблюдения с вероятностью ›= 0,5 относятся к классу Да, а вероятность‹ 0,5 относятся к классу NO. Получаем следующую матрицу неточностей.

Обратите внимание на рисунке ниже, что TPR и FPR получены из двух отдельных строк матрицы неточностей. Это гарантирует, что распределение классов в данных (распространенность) не повлияет на кривую. ДА и НЕТ рассматриваются отдельно.

Показатель истинных положительных результатов учитывает фактические значения ДА, а показатель ложных положительных результатов - фактические отрицательные значения.
Таким образом, даже если график ROC содержит информацию об обоих классах (ДА и НЕТ), эти группы не взаимодействуют. Каждое значение и, следовательно, сама кривая не изменяется, даже если распространенность / распределение классов в тестовых данных меняется. (Не путайте это с распределением классов в данных поезда, которое (может) повлиять на силу модели. Здесь мы говорим о построении модели, а затем ее оценке на тестовых данных. Распределение классов тестовых данных не влияет на кривую ROC.)

Мы собираемся обсудить кривую ROC более подробно, а пока отметим, что ось x на кривой ROC - это ложноположительный показатель. Мы можем легко заменить его на 1-Чувствительность, если поймем кривую и ее назначение.

3. Назначение кривой ROC

а) Цель 1. Анализ силы / предсказательной силы классификатора

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

Кривая ROC хорошего классификатора находится ближе к левому верхнему углу графика. ПОЧЕМУ? Потому что в хорошем классификаторе мы можем достичь высокого TPR при низком FPR (при оптимальном пороге. FPR и TPR при разных порогах будут обсуждаться в пункте b).

Зеленая кривая показывает распределение класса ДА, а красная кривая показывает распределение класса NO по вероятности, присвоенной каждому наблюдению классификатором. Используя порог 0,5, мы можем правильно классифицировать большинство наблюдений. Есть небольшое перекрытие распределений. Перекрывающиеся случаи - это те, которые ошибочно классифицируются на 0,5. Если мы переместим порог на 0,6, мы сможем правильно классифицировать почти 85% истинных срабатываний и 0 ложных срабатываний. По мере того, как мы понижаем порог с 0,6 до 0,5, TPR будет увеличиваться, но также и FPR. (Обратите внимание, что на приведенной ниже кривой ROC мы не видим пороговые значения.)

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

Помните, мы обсуждали, как распределение распространенности / класса не влияет на кривые ROC. Классификатор 1, рассмотренный ранее, будет разделять классы в несбалансированном наборе данных так же, как он это делает для сбалансированного набора данных выше. Кривая ROC для этого классификатора останется прежней.

Даже при классификации несбалансированных наборов данных кривая ROC для нашего классификатора остается прежней.

Плохой классификатор (например, классификатор 2 ниже) не сможет хорошо различить два класса, и поэтому его кривая ROC будет ближе к диагонали. Подразумевая более низкие показатели TPR (больше ложных отрицательных результатов) и более высокие показатели FPR (больше ложных срабатываний). Это приводит нас к концепции AUC или площади под кривой, обсуждаемой в пункте c.

Случайная модель, представленная синей диагональю на кривой ROC, является случайным классификатором, который не имеет возможности различать два класса, т.е. прогнозируемые вероятности двух классов перекрываются (Классификатор 3).
И, следовательно, TPR = FPR при любом пороге.

б) Цель 2 - Определение оптимального порога

У нас есть модель классификации, которая предсказывает вероятность того, что наблюдение принадлежит классу YES. Эта вероятность может варьироваться от 0 до 1. Порог по умолчанию 0,5, который используется для определения класса этого наблюдения, не всегда является лучшим порогом. Кривая ROC помогает нам найти порог, при котором TPR высокий, а FPR низкий, то есть ошибочные классификации низкие. Следовательно, кривые ROC должны использоваться для определения оптимального порога вероятности для модели классификации.

Более того, во многих сценариях стоимость ложных срабатываний и ложных отрицаний не одинакова. Это когда кривые ROC чрезвычайно полезны.

Кривая ROC показывает компромисс между TPR и FPR (или ложноотрицательными и ложноположительными). Он отображает TPR против FPR при разных пороговых значениях. Если мы снизим порог классификации, мы будем классифицировать больше наблюдений как положительных, увеличивая истинно положительные. Но это приведет к увеличению количества ложных срабатываний. Производительность нашей системы будет меняться, если мы изменим этот порог. Его можно настроить, чтобы настроить поведение модели для уменьшения большего количества ошибок того или иного типа (FP / FN).

1. На приведенной выше кривой, если вам нужна модель с очень низким уровнем ложных срабатываний, вы можете выбрать 0,8 в качестве порога выбора. Если вы предпочитаете низкий FPR, но не хотите ужасающего TPR, вы можете выбрать 0,5 - точку, в которой кривая начинает резко поворачиваться вправо.

Если вы предпочитаете низкий уровень ложноотрицательных результатов / высокий TPR, вы можете решить, что где-то между 0,2 и 0,1 - это область, в которой вы начинаете получать сильно убывающую отдачу для дальнейшего улучшения TPR.

2. Обратите внимание на график при пороге 0,5 и 0,4. TPR на обоих порогах составляет ~ 0,6, но FPR выше на пороге 0,4. Понятно, что если нас устраивает TPR = 0,6, мы должны выбрать порог = 0,5.

c) Цель 3 - Сравнение двух моделей (с использованием области под кривой)

На кривой ROC диагональ представляет базовую модель / случайный классификатор. Чем ближе кривая ROC к 45-градусной диагонали пространства ROC, тем менее мощная модель.

AUC - ОБЛАСТЬ ПОД КРИВОЙ

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

AUC представляет собой степень или меру отделимости. Он говорит нам, насколько модель способна различать классы. Чем выше AUC, тем лучше модель предсказывает вероятность класса ДА выше, чем вероятность класса НЕТ.

Значение AUC варьируется от 0 до 1. Модель, прогнозы которой верны на 100%, имеет AUC, равную 1,0; тот, чьи прогнозы ошибочны на 100%, имеет AUC 0,0.

AUC желательна по двум причинам:

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

Чем больше AUC, тем лучше классификатор / модель.

4. Является ли случайная модель наихудшей из возможных?

Не совсем. Случайная модель - это классификатор, который случайным образом предсказывает наблюдение как класс ДА или НЕТ. В этом случае у нас будет 50% правильных прогнозов. AUC будет 0,5, а TPR равно FPR на всех порогах. Но очевидно, что такая модель не имела бы для нас особой ценности.

Наихудшей из возможных моделей была бы модель, которая предсказывает все наблюдения класса YES как класс NO и наблюдения класса NO как класс YES. AUC такой модели будет 0.

В заключение

• Каждый раз, когда вы строите классификационную модель, которая прогнозирует вероятность принадлежности наблюдения к классу, постройте ее кривую ROC, чтобы визуализировать ее эффективность. Не используйте порог по умолчанию 0,5. Используйте кривую ROC и знания предметной области, чтобы определить лучший порог для модели.

• Когда распределение классов в данных несбалансировано или стоимость ложных срабатываний и ложных отрицаний различна, очень полезны кривые ROC. Они помогают нам визуализировать компромисс между TPR и FPR и, таким образом, помогают нам достичь порога, который минимизирует стоимость неправильной классификации.

• Форма кривых ROC содержит много информации о предсказательной способности модели.

• Кривые ROC различных моделей можно сравнивать напрямую в целом или для разных пороговых значений.

• Площадь под кривой (AUC) может использоваться как сводка навыков модели и может использоваться для сравнения двух моделей.

Я надеюсь, что теперь вы сможете лучше использовать кривые ROC. Будем рады услышать от вас :)