Обеспечение интуитивного понимания метрики производительности Log Loss

Почему потеря журнала?

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

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

Вы также можете использовать метрику потерь, например потерю журнала. В конкурсе Kaggle один из руководителей телекоммуникационных компаний Австралии просит вас повысить надежность их сети. Они решили ранжировать модели участников с помощью Log Loss.

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

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

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

«Тупая» догадка зависит от двух факторов:

  1. количество занятий
  2. баланс классов: их преобладание в наблюдаемом наборе данных

В случае с метрикой Log Loss одна из обычных «хорошо известных» метрик заключается в том, что 0,693 является неинформативным значением. Эта цифра получается путем прогнозирования p = 0.5 для любого класса двоичной задачи. Это действительно только для сбалансированных двоичных задач. Потому что, когда распространенность одного класса составляет 10%, вы всегда будете прогнозировать p =0.1 для этого класса. Это будет ваш базовый уровень тупого, случайного предсказания, потому что предсказывать 0.5 будет глупее.

I. Количество классов увеличивает тупой LogLoss

В сбалансированном случае (каждый класс имеет одинаковую распространенность), когда вы прогнозируете p = prevalence = 1 / N для каждого наблюдения, уравнение становится простым:

Logloss = -log(1 / N)

N - количество классов; log является Ln, логарифм напериана для тех, кто использует это соглашение)

В двоичном случае N = 2: Logloss = - log(1/2) = 0.693

Итак, тупой лог-проигрыш следующие:

II. Преобладание классов снижает тупой LogLoss по мере того, как вы уходите от сбалансированного случая

а. Случай двоичной классификации

В этом случае мы всегда прогнозируем p(i) = prevalence(i) и получаем следующую таблицу:

Итак, когда классы очень несбалансированы (распространенность <2%), потеря журнала, равная 0,1, на самом деле может быть очень плохой! Точно так же, как в этом случае точность 98% была бы плохой. Так что, возможно, потеря журнала не будет лучшим показателем для использования в этом несбалансированном случае.

б. Трехклассное дело

Dumb-LogLoss в зависимости от распространенности - трехклассный случай:

Мы можем наблюдать в случае сбалансированного трех классов, когда каждый класс имеет распространенность 33%, что Log Loss = 1,10.

Любое другое распределение распространенности приведет к падению Dumb-LogLoss.

* * ЗАКЛЮЧЕНИЕ * *

Потери журнала трудно интерпретировать. Потеря журнала, равная 0,69, может быть хорошей для мультиклассовой задачи, но очень плохой для двоичной ошибки.

Вычислите свой глупый LogLoss

В зависимости от вашего случая вам лучше самостоятельно вычислить базовый уровень проблемы, чтобы проверить смысл вашего прогноза.

Используйте другие показатели для предвзятых случаев

В случае предвзятости, Log Loss имеет ту же проблему, что и Accuracy и другие функции потерь: он обеспечивает только глобальное измерение вашей производительности, и его труднее интерпретировать, чем Accuracy. Поэтому вам лучше использовать обычные метрики, чтобы учесть классы меньшинств: отзыв, точность, специфичность или лучше, F-балл.

использованная литература