Порог вероятности классификации


49

У меня есть вопрос относительно классификации в целом. Пусть f - классификатор, который выводит набор вероятностей с учетом некоторых данных D. Обычно можно сказать: хорошо, если P (c | D)> 0,5, мы назначим класс 1, в противном случае 0 (пусть это будет двоичный файл классификация).

Мой вопрос заключается в том, что если я узнаю, что если я классифицирую как 1 также и вероятности, большие чем: т.е. 0,2, классификатор работает лучше. Законно ли тогда использовать этот новый порог при выполнении классификации?

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

Я понимаю, что это один из способов сделать это, но если это не правильное мышление, какие будут некоторые преобразования данных, которые подчеркивают отдельные особенности аналогичным образом, так что порог может оставаться на уровне 0,5?


8
У вас уже есть какой-то отличный ответ, поэтому позвольте мне сказать следующее: ваше «нормально» не является нормальным, которое должно быть нормальным. Я не уверен, где «порог в 0,5» стал стандартным, и я знаю, что есть какое-то отличное программное обеспечение, которое поддерживает эту идею, но в целом это очень плохая практика.
Мэтью Друри

1
@MatthewDrury: если, конечно, оценка не является хорошо откалиброванной релевантной апостериорной вероятностью не допустить существенной ошибки (последняя позаботится о различных издержках неправильной классификации).
cbeleites поддерживает Монику

Ответы:


68

Фрэнк Харрелл написал об этом в своем блоге: Классификация против прогноза , с чем я искренне согласен.

По сути, его аргумент заключается в том, что статистический компонент вашего упражнения заканчивается, когда вы выводите вероятность для каждого класса новой выборки. Выбор порога, по которому вы классифицируете новое наблюдение как 1 против 0, больше не является частью статистики . Это часть компонента решения . И здесь вам нужен вероятностный вывод вашей модели - но также такие соображения, как:

  • Каковы последствия решения рассматривать новое наблюдение как класс 1 против 0? Затем я рассылаю дешевую маркетинговую почту всем 1? Или я применяю инвазивное лечение рака с большими побочными эффектами?
  • Каковы последствия обработки «истинного» 0 как 1 и наоборот? Буду ли я ставить галочку на клиенте? Подвергать ли кого-либо ненужному лечению?
  • Мои "классы" действительно дискретны? Или на самом деле существует континуум (например, артериальное давление), где клинические пороги в действительности являются просто когнитивными сокращениями? Если да, то насколько далеко за порогом находится дело, которое я сейчас "классифицирую"?
  • Или низкая, но положительная вероятность того, что это будет класс 1, на самом деле означает «получить больше данных», «запустить еще один тест»?

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


1
Большое спасибо за этот проницательный ответ. Я буду дальше изучать саму проблему - я уверен, что смогу каким-то образом преобразовать это свойство в статистическую часть обучения.
sdgaw erzswer

Вау, хотелось бы что-нибудь добавить к этому, но ничего не получил, выдающийся ответ!
the_SJC

4
Очень хороший ответ: вопросы на месте! Тем не менее, моя профессия на стороне приложения, независимо от того, называется ли определение порога принятия решения статистикой или нет - это полностью входит в мои профессиональные обязанности ... И для меня это является частью модели, так же как «предварительная обработка» является частью модель - также по той причине, что все эти решения должны быть учтены в процессе валидации.
cbeleites поддерживает Монику

11

Ответ Стефана великолепен. Это в основном зависит от того, что вы хотите сделать с классификатором.

Просто добавлю несколько примеров.

Способ найти лучший порог - определить целевую функцию. Для бинарной классификации это может быть, например, точность или оценка F1. В зависимости от того, что вы выберете, лучший порог будет отличаться. Для F1-баллов здесь есть интересный ответ: что такое F1-оптимальный порог? Как рассчитать это? , Но, говоря «Я хочу использовать счет Ф1», вы действительно делаете выбор. Хороший этот выбор или нет, зависит от конечной цели.

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

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


Спасибо за еще один отличный ответ. Если я правильно понимаю, если я имею дело с последним шагом в конвейере, то вполне законно напрямую оптимизировать порог.
sdgaw erzswer

@sdgawerzswer: да. А) убедитесь, что вы оптимизируете ответ на правильный вопрос, и б) убедитесь, что вы подтвердили это решение (и определение порога) вместе с остальной частью модели.
cbeleites поддерживает Монику

3

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

Это вызывает путаницу в реальном мире людей, которые не взяли линейную алгебру, я думаю. Их беспокоит тот факт, что существуют оценки вероятности для элементов, которые, по их мнению, должны иметь 0. Другими словами, они путают статистические данные с решения, основанного на этих данных. Как люди, мы могли бы сказать, что что-то с вероятностью 0,0002234 равно 0, в большинстве «практических» случаев использования. В обсуждениях высшей когнитивной науки, возможно, есть интересная дискуссия о том, почему вектор смещения делает это, или, скорее, это справедливо для когнитивных приложений.


2

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

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.