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

11

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

Очевидное (для меня) решение состоит в том, чтобы использовать те же логистические потери, которые используются сейчас, но по-разному оценивать ошибки типа I и типа II, умножая потери в одном из двух случаев на некоторую константу, которую можно настроить. Это правильно?

PS С другой стороны, это эквивалентно взвешиванию некоторых тренировочных образцов больше, чем других. Я думаю, что добавление еще одного класса даст то же самое.

Dzugaru
источник
ты когда-нибудь разрешал это? У меня похожая цель. Я хотел бы оптимизировать для точности (тип 1) и меньше заботиться об ошибках типа 2, поэтому я обдумывал, что можно сделать в отношении функции потерь.
Джонатан Шор

Ответы:

6

Искусственно построение сбалансированного набора обучения является спорным, весьма спорно на самом деле. Если вы делаете это, вы должны эмпирически проверить, что он действительно работает лучше, чем оставить несбалансированный тренировочный набор. Искусственная балансировка тестового набора почти никогда не является хорошей идеей. Тестовый набор должен представлять новые точки данных, когда они входят без меток. Вы ожидаете, что они будут несбалансированными, поэтому вам нужно знать, может ли ваша модель справиться с несбалансированным набором тестов. (Если вы не ожидаете, что новые записи будут несбалансированными, почему все ваши существующие записи несбалансированы?)

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

Я считаю класс меньшинства положительным классом, это обычный способ присвоения им имен. Таким образом, точность и отзыв, как обсуждено ниже, являются точностью и отзывом класса меньшинства.

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

Вы делаете несколько предположений. Лучше всего думать о конечной цели в общих чертах, а затем сформулировать стратегию, которая соответствует этой цели. Например, действительно ли вам нужна классификация с принудительным выбором и достаточно ли велико соотношение сигнал / шум, чтобы это поддерживать (хорошие примеры: распознавание звука и изображения)? Или отношение сигнал / шум низкое или вас интересуют тенденции ? Для последнего оценка риска для вас. Выбор является ключевым и определяет прогнозируемую метрику точности, которую вы выберете. Для получения дополнительной информации обо всем этом см. Http://www.fharrell.com/2017/01/classification-vs-prediction.html и http://www.fharrell.com/2017/03/damage-caused-by-classification .html .

Большинство проблем касается принятия решений , а оптимальные решения основаны на оценке риска в сочетании с функцией потерь / затрат / полезности.

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

Фрэнк Харрелл
источник
1

ΣJзнак равно1Jжурнал{1+ехр[-е(ИксJ)]}+ΣКзнак равно1Кжурнал{1+ехр[е(ИксК)]}
JКе()Икс
ΣJзнак равно1Jжурнал{1+ехр[-е(ИксJ)]}+ΣКзнак равно1Квесжурнал{1+ехр[е(ИксК)]}
вес>1весвесзнак равно2
Трэвис Герке
источник
Но это больше не будет оценкой максимального правдоподобия - статистически нет-нет
Фрэнк Харрелл
1
Согласитесь, но я не уверен, что это имеет значение, если статистический вывод о параметрах в логистической регрессии не является желаемой целью (упоминание OP об использовании CNN также не основано на ML). В самом деле, большинство выводных выводов этого взвешенного подхода лучше всего игнорировать, но модель и итоговые оценки риска все же могут быть применены к набору валидации с желаемыми результатами, например, хорошей дискриминацией / калибровкой.
Трэвис Герке
1
Нет, вы нарушите калибровку модели и получите более шумные оценки параметров с помощью вышеуказанного подхода. MLE существует по очень веским причинам.
Фрэнк Харрелл
Рассмотрим тривиальный случай, когда мы очень обеспокоены ошибочной классификацией в одну сторону, а не в другую - то есть ноль потерь для одного из направлений. Лучшая модель для этой потери будет предсказывать только класс беспокойства. Хотя это была бы ужасная модель, цель достигнута. Важно понимать цель и не слепо верить в теоретическую концепцию (MLE) без понимания ее цели. Как отмечает ТрэвисГерке, если акцент делается на прогнозировании, а не на моделировании, то его подход весьма полезен. Это, безусловно, лучше, чем сокращение большинства классов.
Statseeker