Преимущества кривых ROC


15

В чем преимущества кривых ROC?

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

В моем случае, какова цель создания кривой ROC?


2
«Введение в анализ ROC» Тома Фосетта помогло мне лучше понять кривые ROC. Возможно, вам понравится, если вы ищете дополнительную литературу по этой теме.
Александр

Хорошо, но что бы вы сделали, чтобы сравнить два классификатора? Если они используют пороги так, чтобы ни специфичность, ни чувствительность очень близко не совпадали, я не думаю, что будет легко сравнивать, не глядя на большее количество poitns на ROC.
Майкл Р. Черник

Редко уместно разрабатывать классификаторы, а ошибка классификации является неправильным правилом оценки. Существует много мощных методов для сравнения качества истинных предсказаний, и они более интуитивны, чем кривые ROC. Смотрите, например, это .
Фрэнк Харрелл

Ответы:


13

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


Спасибо за ваш ответ. Это действительно полезно. На основании кривой ROC есть ли вообще определить порог? И в моем случае, как я могу получить точку в пространстве ROC для чувствительности = 100% или специфичности = 100%. потому что я меняю порог алгоритма выбора функции.
user570593

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

Есть ли какой-либо автоматический способ выбора правильного компромисса или я должен выбрать компромисс самостоятельно? И в моем случае, как я могу получить точку в пространстве ROC для чувствительности = 100% или специфичности = 100%. потому что я меняю порог алгоритма выбора функции.
user570593

2
Если у вас есть четко определенный критерий (например, максимальная точность), то это можно автоматизировать. Но хороший компромисс для одной проблемы может быть паршивым для другой.
Майкл МакГоуэн

2
Чувствительность или специфичность в 100% можно легко получить, установив пороговое значение на минимальное или максимальное значение ... это действительно то, что вы хотите?
Майкл МакГоуэн

11

Кривые ROC не информативны в 99% случаев, которые я видел за последние несколько лет. Похоже, что они считаются обязательными для многих статистиков и даже больше специалистов по машинному обучению. И убедитесь, что ваша проблема действительно является проблемой классификации, а не проблемой оценки риска. В основе проблем с кривыми ROC лежит то, что они предлагают пользователям использовать контрольные точки для непрерывных переменных, и они используют обратные вероятности, то есть вероятности событий в обратном временном порядке (чувствительность и специфичность). Кривые ROC не могут быть использованы для нахождения оптимального компромисса, кроме как в очень особых случаях, когда пользователи правила принятия решений отказываются от своей функции потерь (затрат; полезности) для аналитика.


Я не полностью согласен с Фрэнком. Я думаю, что использование AUC ROC часто является проблемой. Но я думаю, что качественно полезно сравнить алгоритмы. Просто смотреть на специфику и чувствительность в одной точке не так информативно. Также я не уверен, что его ответ действительно касается вопроса, потому что ОП действительно хочет знать в его случае, почему он попадает в 99% неинформативных случаев или в 1%, которые являются инфомативными.
Майкл Р. Черник

R2

R2

1
@FrankHarrell Но как вы сравниваете два алгоритма, когда они не очень близко соответствуют ни по специфичности, ни по чувствительности?
Майкл Р. Черник

7
R2χ2R2

1

После создания кривой ROC можно рассчитать AUC (площадь под кривой). AUC - это точность теста во многих порогах. AUC = 1 означает, что тест идеален. AUC = .5 означает, что выполняет в случае бинарной классификации.

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


1
YсDИксY

0

AUC не сравнивает классы реальные и предсказанные друг с другом. Это не смотрит на прогнозируемый класс, а на оценку прогноза или вероятность. Вы можете сделать прогнозирование класса, применяя отсечение к этому баллу, скажем, каждый образец, который получил оценку ниже 0,5, классифицируется как отрицательный. Но РПЦ приходит до того, как это произойдет. Это работает с оценками / классом вероятностей.

Он берет эти оценки и сортирует все образцы в соответствии с этой оценкой. Теперь, когда вы найдете положительный образец, ROC-кривая делает шаг вверх (вдоль оси Y). Всякий раз, когда вы найдете отрицательный образец, вы двигаетесь вправо (вдоль оси X). Если этот балл отличается для двух классов, положительные образцы идут первыми (обычно). Это означает, что вы делаете больше шагов, чем вправо. Далее по списку появятся отрицательные образцы, поэтому вы двигаетесь влево. Когда вы просматриваете весь список образцов, вы достигаете координаты (1,1), что соответствует 100% положительных и 100% отрицательных образцов.

Если результат отлично отделяет положительные от отрицательных образцов, вы перемещаетесь от (x = 0, y = 0) до (1,0), а затем оттуда к (1, 1). Итак, площадь под кривой равна 1.

Если ваша оценка имеет одинаковое распределение для положительной и отрицательной выборок, вероятности найти положительную или отрицательную выборку в отсортированном списке равны, и, следовательно, вероятности для перемещения вверх или влево на ROC-кривой равны. Вот почему вы двигаетесь по диагонали, потому что вы двигаетесь вверх и влево, вверх и влево и т. Д., Что дает значение AROC около 0,5.

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

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

введите описание изображения здесь

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


Эти графики не дают никакой информации и имеют исключительно высокое соотношение цены и информации: ИМХО. Придерживайтесь правильных оценок точности: fharrell.com/post/class-damage fharrell.com/post/addvalue
Фрэнк Харрелл

На этих графиках гораздо больше информации, чем в одном одномерном балле точности. Один и тот же результат может быть получен из разных дистрибутивов. У вас есть раннее признание? У вас есть несколько классов положительных образцов, которые ведут себя по-разному? Является ли ваш результат статистически значимым? Ответы на все эти вопросы могут быть очевидны, если смотреть на эти графики, и на них невозможно ответить с единой оценкой точности.
Сёрен

Я серьезно сомневаюсь, что потребители и аналитики могут получить представление об этих кривых, которые настолько же интуитивны, как и калибровочная кривая, наложенная на гистограмму высокого разрешения, показывающую прогнозируемые значения. И каждая точка на кривой ROC является неправильной оценкой точности.
Фрэнк Харрелл

Новичкам часто трудно понять эти кривые. Поэтому я бы не рекомендовал показывать это потребителям для рекламы вашего продукта. Я думаю, что вы хотите что-то более простое. Кривая больше, чем отдельные точки, хотя.
Сёрен
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.