Машинное обучение: должен ли я использовать категориальную кросс-энтропию или двоичную кросс-энтропийную потерю для бинарных предсказаний?


36

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

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


1
Пример бинарной классификации: machinelearningmastery.com/… и мультиклассовой классификации: machinelearningmastery.com/…
user1367204

@ user1367204: ссылка на мультиклассовую классификацию перенаправляет на двоичную классификацию. Это должен быть этот .
user3389669

Ответы:


51

Биноминальная кросс-энтропийная потеря является частным случаем полиномиальной кросс-энтропийной потери при .мзнак равно2

L(θ)знак равно-1NΣязнак равно1N[Yяжурнал(пя)+(1-Yя)журнал(1-пя)]знак равно-1NΣязнак равно1NΣJзнак равно1мYяJжурнал(пяJ)

Где индексирует выборки / наблюдения и индексирует классы, а - метка выборки (двоичная для LSH, горячий вектор на RHS) и - прогноз для выборки.яJYпяJ(0,1):ΣJпяJзнак равно1я,J


3
Означает ли это сказать, что пока я использую 2 класса в полиномиальной кросс-энтропийной потере, я по сути использую бинарную кросс-энтропийную потерю?
infomin101


17

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


3
Чем обосновано ваше утверждение? Почему бы вам не использовать категориальную перекрестную энтропию для классификации по нескольким меткам?
Михал

Что делать, если существует несколько меток, каждая из которых содержит несколько классов?
Slizb

1
Это именно то, что я хотел услышать, но не то, что хочет услышать мой босс. Немного объяснения было бы так здорово.
Адитья

2

Я думаю, что есть три вида задач классификации:

  1. Бинарная классификация: два эксклюзивных класса
  2. Мультиклассовая классификация: более двух эксклюзивных классов
  3. Мультимарочная классификация: просто неисключительные классы

Из них можно сказать

  • В случае (1) вам необходимо использовать двоичную перекрестную энтропию.
  • В случае (2) вам необходимо использовать категориальную кросс-энтропию.
  • В случае (3) вам нужно использовать двоичную перекрестную энтропию. Вы можете просто рассмотреть классификатор с несколькими метками как отдельный отдельный двоичный классификатор. Если у вас есть 10 классов здесь, у вас есть 10 двоичных классификаторов отдельно. Каждый двоичный классификатор обучается независимо. Таким образом, мы можем изготовить мульти-этикетки для каждого образца. Если вы хотите убедиться, что должна быть получена хотя бы одна метка, вы можете выбрать ту, которая имеет наименьшую классификационную потерю, или использовать другие метрики.

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

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