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

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

Введение

Прежде чем мы углубимся в функции затрат, давайте представим два наиболее распространенных типа моделей: регрессию и классификацию. Регрессия — это контролируемый метод машинного обучения, используемый для аппроксимации функции отображения от одной (простая линейная регрессия) или нескольких (множественная линейная регрессия) независимых переменных к зависимой переменной. Если между независимыми и зависимыми переменными существует нелинейная связь, вместо этого можно использовать полиномиальную регрессию. Хотя непрерывные числовые переменные являются наиболее распространенными типами зависимых переменных, регрессионные модели также могут использоваться для прогнозирования количества (пуассона, квасси-пуассона и отрицательной биномиальной регрессии). Если зависимая переменная представляет собой дискретную двоичную метку («0» и «1» или «спам» и «не спам»), множественные метки («дом», «таунхаус», «квартира» и «пентхаус») или порядковый номер метки (метки, которые следуют определенному порядку, например, «наименее вероятно», «вероятно» и «наиболее вероятно»), прогноз становится методом классификации и может быть решен с использованием бинарной логистической регрессии, полиномиальной логистической регрессии или порядковой логистической регрессии соответственно. . Эти методы классификации по-прежнему являются моделями регрессии, поскольку они основаны на вероятности, что означает, что они обеспечивают вероятность появления каждого класса или метки, а не только прогнозируемый результат. «Реальные» или фактические модели классификации не основаны на вероятности и в основном предоставляют только предсказанные метки, такие как K-ближайшие соседи (KNN), машина опорных векторов (SVM) и деревья решений.

Функции затрат

Функции потерь — это функции, которые вычисляют расстояние между прогнозируемым выходом и наблюдаемым выходом и являются методом определения того, насколько хорошо модель соответствует набору данных. Наилучшие функции потерь — это те, чьи прогнозы очень близки к наблюдаемому результату, поэтому они имеют низкое значение «потери» и наоборот. Хотя функции потерь и функции затрат часто используются взаимозаменяемо, термин функция потерь используется для одного обучающего примера/входных данных, а функция затрат используется для средних потерь за период. весь обучающий набор данных. В моделях машинного обучения мы хотим минимизировать функцию затрат, что можнодостичь только за счет уменьшения потерь, связанных с каждым обучающим примером, чтобы теперь вы могли видеть, как все они связаны.Тип функции потерь зависит от используемой модели (регрессия или классификация) и рассматриваемой проблемы прогнозирования. Давайте изучим различные функции потерь!

Функции регрессии:

  • Функция потерь №1:Квадрат/L2

  • Функция стоимости №1:среднеквадратичная ошибка (MSE) / квадратичная стоимость

L2 Loss — это квадрат разницы между наблюдаемым и прогнозируемым результатом для одного обучающего примера, а MSE — это среднее значение квадрата разницы между наблюдаемым и прогнозируемым результатом для всех обучающих примеров. Это обычная метрика регрессии, и линия, которая лучше всего подходит для нашего набора данных, — это линия с наименьшим значением MSE. MSE чувствительна к выбросам, поскольку она экспоненциально наказывает предсказанные результаты, которые далеки от ожидаемых результатов, как можно увидеть на рисунке 3. Это делает MSE менее надежной функцией затрат.

  • Функция потерь №2:Абсолютная ошибка/L1

  • Функция стоимости №2:средняя абсолютная ошибка (MAE) / квадратичная стоимость

Потеря L1 — это абсолютная разница между наблюдаемым и прогнозируемым результатом для одного обучающего примера, а MAE — это среднее значение абсолютной разницы между наблюдаемым и прогнозируемым результатом для всех обучающих примеров. MAE является более надежной функцией стоимости, поскольку она равномерно наказывает все ошибки на линейной шкале. Следовательно, MAE не так чувствителен к выбросам, поскольку он не придает слишком большого значения нашим большим выбросам, как это делает MSE.

  • Функция потерь №3:Потери Хьюбера/Абсолютная погрешность сглаженного среднего

  • Функция стоимости №3:MSE при δ ~ 0 и MAE при δ ~ ∞

Поскольку потери L2 более стабильны, когда разница между прогнозируемым и ожидаемым выходом мала, а L2 более стабильна, когда разница между прогнозируемым и ожидаемым выходом велика (как в случае с выбросами), потеря Хубера дает лучшее из обоих миров. в том, что он наказывает ошибки экспоненциально (квадратично) для небольших ошибок и линейно для больших ошибок, поэтому общая модель находится где-то между MSE и MAE. Отсечка, которая определяет, насколько мала ошибка для применения потерь L2, контролируется гиперпараметром δчьезначение очень критично. Следовательно, мы должны итеративно настраивать гиперпараметр δ, что требует обучения модели и увеличивает сложность модели.

Функции классификации:

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

  • Функция стоимости №1:бинарная перекрестная энтропия/логарифмическая потеря

Это функция стоимости, используемая в бинарной логистической регрессии, которая представляет собой отрицательное среднее логарифма скорректированных предсказанных вероятностей,где y – метка ("1" для положительного класса и "0" для отрицательного класса), а p(y) — скорректированная прогнозируемая вероятность получения положительного класса для всех N точек. Логистическая регрессия соответствует сигмовидной кривой для данных и получает прогнозируемые вероятности точки, относящейся к положительному классу. Затем бинарная перекрестная энтропия получает скорректированную прогнозируемуювероятность, которая является вероятностью принадлежности точки к исходному классу. Если прогнозируемая вероятность = скорректированная прогнозируемая вероятность, то потери равны нулю. Поскольку вероятность всегда находится между 0 и 1, логарифм этого отрицателен, и поэтому мы получаем отрицательный логарифм скорректированных вероятностей. Если скорректированная прогнозируемая вероятность, связанная с истинным классом, равна 1,0, соответствующие потери будут равны нулю, и чем ближе вероятность, связанная с истинным классом, приближается к нулю, потери увеличиваются экспоненциально.

  • Функция стоимости №2:мультиномиальная перекрестная энтропия/логистические потери

Это функция стоимости, используемая в полиномиальной логистической регрессии, когда у нас есть метка с несколькими классами, например. «красный», «зеленый» и синий». Целевые значения по-прежнему двоичные, но представлены в виде вектора y (y = 1, если метка «красная», и y = 0 в противном случае). Как и в случае с бинарной перекрестной энтропией, мы рассчитываем отдельные потери для каждой метки класса для каждого наблюдения и суммируем результат.

  • Функция затрат №3:потери шарнира

Тип потери, связанный с классификацией «максимум-минимум», также известной как модель классификации SVM, когда вы хотите отделить группу точек данных от другой группы. Когда прогноз выборки имеет тот же знак, что и истинная метка, потери равны нулю. Это означает, что правильные и уверенные классификации, которые превышают маржу (> 1 на приведенном выше графике), не влекут за собой никаких потерь. Однако правильные, но ненадежные прогнозы (между 0 и l на приведенном выше графике) по-прежнему наказываются, чтобы модель не давала неопределенные прогнозы. Если вычисленное значение дает неверный прогноз, всегда будет потеря шарнира, и эта потеря линейна, как показано на графике.

Заключительные слова:

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

Ссылки: