Шарнирная функция потерь

Материал из MachineLearning.

Версия от 16:20, 18 июля 2026; Aleksandr Pochtarev (Обсуждение | вклад)
(разн.) ← Предыдущая | Текущая версия (разн.) | Следующая → (разн.)
Перейти к: навигация, поиск
Статья написана с использованием LLM ChatGPT 5.6 Terra и проверена участником А.Ю.Почтарев 18 июля 2026

Промпт приводится полностью в Обсуждение:Шарнирная функция потерь


Содержание

Шарнирная функция потерь (англ. hinge loss) — функция потерь для задач бинарной классификации. Она штрафует не только ошибочные ответы классификатора, но и верные ответы с недостаточным запасом. Шарнирная потеря наиболее известна как критерий обучения метода опорных векторов (SVM) с мягкой границей (англ. soft-margin SVM).[1]

Название связано с графиком функции: он состоит из двух лучей, соединённых изломом в точке единичного запаса. В отличие от ошибки классификации «ноль—один», шарнирная потеря выпукла. Поэтому её можно эффективно минимизировать методами выпуклой оптимизации.

Определение

Пусть истинная метка объекта y принимает одно из значений -1 или +1, а классификатор возвращает вещественный балл f(x). Знак балла задаёт предсказанный класс: положительный соответствует классу +1, отрицательный — классу -1. Запас (англ. margin) объекта равен

s=y f(x)

Шарнирная потеря определяется формулой

L(y,f(x))=\max(0,1-y f(x))

или, через запас,

L(s)=\max(0,1-s)

Из этого определения следуют три важных случая:

  • если s \geq 1, объект классифицирован верно и находится за границей запаса; его потеря равна нулю;
  • если 0 < s < 1, объект классифицирован верно, но расположен внутри полосы запаса; потеря положительна;
  • если s \leq 0, знак предсказания неверен, а потеря не меньше единицы.

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

Интуиция и геометрическая интерпретация

Для линейного классификатора

f(x)=w^T x+b

граница между классами задаётся уравнением w^T x+b=0. Величина

y(w^T x+b)/||w||

равна знаковому расстоянию от объекта до этой границы. Условие нулевой шарнирной потери y(w^T x+b) \geq 1 означает, что расстояние до границы не меньше 1/||w||.

Таким образом, потеря поощряет не просто правильный знак, а уверенное разделение классов с полосой запаса. При этом точка далеко за границей запаса не улучшает критерий: её вклад уже равен нулю. Точки на границе запаса, внутри неё или по другую сторону границы влияют на решение; в SVM часть таких объектов становится опорными векторами.

Связь с методом опорных векторов

Мягкограничный линейный SVM можно записать через шарнирную потерю как задачу

\min_{w,b} \frac{1}{2} ||w||^2 + C \sum_{i=1}^{n} \max(0,1-y_i(w^T x_i+b))

Первое слагаемое является регуляризатором: уменьшение ||w|| увеличивает геометрическую ширину полосы запаса. Второе слагаемое суммирует нарушения запаса. Параметр C > 0 задаёт компромисс между простотой границы и штрафом за ошибки на обучающей выборке.

Эквивалентная запись вводит неотрицательные переменные нарушения \xi_i. Минимизируется

\min_{w,b,\xi} \frac{1}{2} ||w||^2+C\sum_{i=1}^{n}\xi_i

при условиях

y_i(w^T x_i+b) \geq 1-\xi_i

\xi_i \geq 0

Если исключить \xi_i, для каждого объекта получается ровно шарнирная потеря. При использовании ядрового метода линейная функция строится в признаковом пространстве, но смысл потери и запаса сохраняется.[1]

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

Математические свойства

Выпуклость и субградиент

Шарнирная потеря выпукла по запасу s, но не дифференцируема в точке s=1. Слева от излома её производная равна

dL(s)/ds=-1, \quad s<1

справа —

dL(s)/ds=0, \quad s>1

В точке s=1 используют субградиент: любое число от -1 до 0. Недифференцируемость не препятствует обучению линейных SVM: применяются методы квадратичного программирования, координатного спуска и субградиентные методы. Для моделей, обучаемых обычным градиентным спуском, нередко выбирают гладкие приближения или другие потери.

Связь с ошибкой классификации

Потеря «ноль—один» равна единице при ошибке и нулю в противном случае. Обозначив её индикатором I, получаем

L_{01}(y,f(x))=I(y f(x) \leq 0)

Для любого объекта она не превосходит шарнирную потерю:

L_{01}(y,f(x)) \leq L(y,f(x))

Поэтому шарнирная потеря является выпуклой суррогатной функцией потерь (англ. convex surrogate loss) для ошибки классификации. Минимизировать исходную ошибку напрямую трудно: она разрывна и невыпукла. Теория суррогатных потерь связывает уменьшение ожидаемого шарнирного риска с уменьшением ошибки классификации; однако это утверждение относится к корректно заданной статистической задаче и не отменяет необходимость регуляризации, достаточной выборки и честной проверки качества.[1][1]

При фиксированном объекте x оптимальный знак балла минимизирует байесовскую ошибку классификации: он положителен, если вероятность класса +1 больше половины, и отрицателен, если она меньше половины. Это свойство называют классификационной согласованностью (англ. classification calibration). Само значение f(x) при этом не следует трактовать как вероятность класса: шарнирная потеря специально насыщается при запасе 1. Для вероятностного вывода требуются отдельная калибровка или вероятностная модель.

Варианты и обобщения

Квадратичная шарнирная потеря (англ. squared hinge loss) сильнее штрафует большие нарушения:

L_{sq}(y,f(x))=[\max(0,1-y f(x))]^2

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

В многоклассовой классификации используют несколько оценок f_k(x), по одной на класс. Один из вариантов многоклассовой шарнирной потери для истинного класса y имеет вид

L(x,y)=\max_{k \ne y}(0,1+f_k(x)-f_y(x))

Она требует, чтобы оценка правильного класса превосходила каждую конкурирующую оценку хотя бы на единицу. Прямая многоклассовая постановка SVM была разработана Коби Краммером и Йорамом Зингером.[1]

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

L_{log}(y,f(x))=\log(1+\exp(-y f(x)))

Логистическая потеря гладкая и не имеет участка с нулевым штрафом; при подходящих предпосылках её оптимальный балл связан с логарифмом отношения вероятностей классов. Выбор между этими потерями — свойство всей модели и прикладной цели, а не только вопрос удобства оптимизации.[1]

Применение и выбор модели

Шарнирная потеря применяется прежде всего в линейных и ядерных SVM для распознавания двух классов. Она также встречается в методах ранжирования и структурного предсказания, где запас задают для пары объектов или для конкурирующих структур. Во всех случаях критерий обучения не заменяет внешнюю метрику качества: для несбалансированных классов, медицинского скрининга или обнаружения мошенничества могут быть важнее точность, полнота, PR-AUC либо стоимость ошибок конкретного типа.

На практике параметры регуляризации и, при необходимости, ядра выбирают по перекрёстной проверке (англ. cross-validation) или на отложенной выборке (англ. hold-out validation). Числовые признаки обычно масштабируют до обучения SVM. При дисбалансе классов применяют веса наблюдений или классов: штраф за нарушение запаса становится различным для разных меток. Тестовую выборку нельзя использовать для выбора этих параметров, иначе оценка обобщающей способности будет смещена.

Ограничения

  • Шарнирная потеря не даёт вероятности класса и не различает по значению функции объекты, уже вышедшие за границу запаса.
  • Излом в точке s=1 требует субградиентных или специализированных методов оптимизации; это не проблема для SVM, но может быть неудобно в некоторых дифференцируемых конвейерах.
  • Потеря растёт линейно и не ограничена сверху. Ошибочные метки и сильные выбросы могут существенно менять решение, особенно при большом C.
  • Единичный запас не освобождает от настройки регуляризации. Без неё масштаб функции и сложность модели не определены должным образом.

История

Шарнирная потеря получила широкое распространение вместе с мягкограничным SVM. В статье Коринны Кортес и Владимира Вапника, опубликованной в 1995 году, метод опорных векторов был распространён с линейно разделимых данных на неразделимые выборки для задач распознавания двух групп.[1] Позднее шарнирная потеря стала важным примером выпуклой суррогатной функции при изучении классификации с максимальным запасом и обобщающей способности.[1]

См. также

Примечания

Литература

Личные инструменты