Добавить в корзинуПозвонить
Найти в Дзене
Порция DataScience

ТОП-10 наиболее распространенных функций потерь

Функции потерь являются ключевым компонентом алгоритмов Машинного Обучения. Они определяют цель, к которой должна стремиться модель, оптимизируя ее во время обучения. Другими словами, функции потерь сообщает модели, что она должна минимизировать или максимизировать, чтобы улучшить качество своих результатов. Поэтому знание функций потерь имеет чрезвычайно важное значение. В таблице ниже показаны наиболее часто используемые функции потерь для задач регрессии и классификации: Mean Bias Error (MBE) Mean Absolute Error (MAE) Термин «чувствительна» – значит сильно влияет на конечную величину функции потерь, а значит более круто будут перестраиваться веса модели, «не чувствительна» – наоборот, не вносит большой вклад в конечную величину функции потерь Mean Squared Error (MSE) Root Mean Squared Error (RMSE) Huber Loss Log Cosh Loss Binary cross entropy (BCE) or Log loss Hinge Loss Cross-Entropy Loss KL Divergence Для понимания сути работы функции потерь, читайте предыдущую статью «
Оглавление

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

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

-2

Регрессионные функции потерь

Mean Bias Error (MBE)

-3
  • Считает среднее отклонение в прогнозе
  • Отрицательные ошибки могут аннулировать положительные ошибки, что приведет к нулевым потерям, и как следствие к отсутствию обновлений весов
  • Редко используется в обучении ML-моделей, но является основополагающей математической конструкцией для более сложных регрессионных функций потерь, обсуждаемых ниже

Mean Absolute Error (MAE)

-4
  • Измеряет среднюю абсолютную разницу между прогнозируемым и фактическим значением
  • Положительные и отрицательные ошибки не отменяют друг друга (поскольку любое число по модулю всегда положительно)
  • Не чувствительна к выбросам, все ошибки будут взвешены по одной и той же линейной шкале, т.е. большие ошибки оказывают слабое влияние на конечную величину MAE.
Термин «чувствительна» – значит сильно влияет на конечную величину функции потерь, а значит более круто будут перестраиваться веса модели, «не чувствительна» – наоборот, не вносит большой вклад в конечную величину функции потерь

Mean Squared Error (MSE)

-5
  • Измеряет среднеквадратичное значение между прогнозируемым и фактическим значением
  • Чувствительна к выбросам, т.к. более крупные ошибки вносят более существенный вклад, в общую величину MSE (большое число, возведенное в квадрат, кратно больше малого числа в квадрате - 3² = 9, а 10² =100), поэтому MSE «страдает» от больших выбросов, в то время как MAE - их игнорирует
  • Одна из самых распространенных функций потерь для многих моделей регрессии

Root Mean Squared Error (RMSE)

-6
  • Функция потерь RMSE, по факту является MSE (среднеквадратичной ошибкой), но с квадратным корнем
  • Работая с функцией MSE, приходится оперировать очень большими значениями (поскольку все возведено в квадрат), RMSE аннулирует данную проблему
  • Наличие квадратного корня у RMSE, позволяет иметь одинаковые единицы измерения, как для значения потерь, так и для прогнозируемой величины. Например, у MSE, значение потерь имеет единицу измерения, возведенную в квадрат, а прогнозное значение нет (значение потерь MSE - руб², прогнозное значение – руб)

Huber Loss

-7
  • Huber Loss - комбинация средней абсолютной ошибки (MAE) и среднеквадратичной ошибки (MSE), поэтому она более устойчива к выбросам
  • Для небольших ошибок используется MSE, которая не чувствительна к ним
  • Для больших ошибок используется MAE, которая игнорирует их
  • Основная сложность заключается в том, что добавляется еще один параметр (δ), который требуется определить

Log Cosh Loss

-8
  • Обладает всеми свойствами Huber Loss. При небольших ошибках Log Cosh стремиться к X²/2, т.е. квадратична (работает, как MSE), а при больших ошибках Log Cosh стремиться |x| - Log(2), т.е. линейна (работает, как MAE)
  • Требовательна к вычислительным ресурсам

Классификационные функции потерь

Binary cross entropy (BCE) or Log loss

-9
  • Binary cross entropy - используется для задач бинарной классификации
  • Измеряет с помощью логарифмической потери разницу между прогнозируемыми вероятностями и истинными бинарными значениями

Hinge Loss

-10
  • В основе лежит концепция границы, чувствительна к прогнозам вблизи границы (прогнозы возможно верные, но неуверенные) и за пределами границ (неверные прогнозы)
  • Если классификация правильная и уверенная, то чувствительность низкая
  • Широко используется для обучения опорных векторных машин (SVM)

Cross-Entropy Loss

-11
  • Расширение Binary cross entropy для задач многоклассовой классификации

KL Divergence

-12
  • Измеряет потерю информации, когда одно распределение аппроксимируется другим распределением
  • Большие значения KL Divergence говорят о том, что распределения сильно отличаются друг от друга
  • Малые значения KL Divergence, говорят о том, что модель хорошо соответствует данным
  • Для задач классификации использование KL Divergance равносильно использованию минимизированной Cross-Entropy, поэтому, рекомендуется использовать Cross-Entropy напрямую / доказано ниже:
-13
  • При этом KL Divergence широко используется во многих других алгоритмах обучения, например - t-SNE

Для понимания сути работы функции потерь, читайте предыдущую статью «Функция потерь (Loss Function)»