Функция потерь — договор между задачей и алгоритмом. Иногда она выводится из вероятностной модели наблюдений, иногда кодирует цену будущего действия. Минимизировать удобную формулу можно только после ответа: какую ошибку она считает дорогой?
Две ошибки пожарной сигнализации
Система решает, эвакуировать ли здание. Ложная тревога останавливает работу, но пропуск пожара угрожает людям. Accuracy считает обе ошибки одинаковыми:
Матрица потерь различает действия:
Здесь — эвакуация, — пожар, числа — условные единицы ущерба. Если модель оценивает , ожидаемые потери двух действий:
Эвакуация выгоднее уже при . Порог возник из цены решений, а не из симметричного числа 0,5.
По оси — прогноз , по оси — условный риск. Красная линия пропуска растёт как , синяя линия эвакуации падает как . Нижняя огибающая выбирает действие; вертикаль в точке пересечения показывает порог.
Loss из вероятностной модели
Пусть модель задаёт условную плотность . Максимизация правдоподобия эквивалентна минимизации log-loss:
Для нормального ответа с постоянной дисперсией отрицательный логарифм даёт квадрат остатка — так была выведена линейная регрессия. Для Бернулли получается binary cross-entropy:
Log-loss жёстко штрафует уверенную ошибку: при прогноз стоит , а — лишь .
Вероятность и действие нужно разделять
Одна калиброванная модель вероятности может обслуживать разные решения. Врач использует низкий порог для дешёвого анализа и высокий — для рискованного лечения. Если обучать отдельный классификатор под каждый текущий порог, изменение цены потребует нового обучения и затруднит аудит.
Сначала оценивается и проверяется калибровка, затем минимизируется условный риск по актуальной матрице цен. Эта архитектура продолжает разделение score и порога из урока 53.
Почему 0/1-loss неудобен обучению
Для линейного score функция
ступенчата и почти всюду имеет нулевую производную. Малое улучшение неверного score не меняет loss до пересечения границы. Градиентный метод не получает направления.
Используют суррогаты: logistic , hinge или exponential . Они непрерывны, верхне ограничивают или приближают классификационную ошибку и поощряют margin.
По оси — правильный margin : отрицательные значения ошибочны. Ступенька 0/1 не даёт градиента. Logistic плавно убывает, hinge становится нулём после margin 1, exponential особенно сильно наказывает уверенные ошибки.
Лаборатория риска
Сначала оставьте вероятности фиксированными и меняйте матрицу цен: оптимальный порог двигается без изменения модели. Затем сравните log-loss и accuracy для двух классификаторов с одинаковыми классами, но разной уверенностью. Наконец испортите калибровку монотонным преобразованием score: ranking сохранится, решение по стоимости — нет.
Квадрат, модуль и квантили
В регрессии loss определяет, какую характеристику условного распределения оценивает модель. Минимум
достигается в условном среднем. Минимум — в медиане. А pinball loss
оценивает условный квантиль уровня . Для прогноза высокого спроса может быть важен , а не среднее.
В длиннохвостом распределении среднее лежит правее медианы, а 90-й квантиль ещё дальше. Квадрат, модуль и pinball касаются соответствующих оптимальных точек. Выбор loss меняет смысл прогноза, даже если модельный класс одинаков.
Несбалансированные классы
Если мошенничество составляет 0,1%, классификатор «всегда честно» получает 99,9% accuracy. Взвешенный loss усиливает редкий класс, focal loss уменьшает вклад уже лёгких примеров, а resampling меняет частоты обучения.
Но изменение весов влияет на калибровку. Модель, обученная на искусственно сбалансированных данных, видит другой prior. После обучения нужно вернуть реальную базовую долю или калибровать на репрезентативной выборке, как обсуждалось в порождающей классификации.
PR-AUC часто информативнее ROC-AUC для редкого класса, потому что precision непосредственно реагирует на число ложных тревог. Итоговая метрика всё равно должна быть переведена в поток решений: сколько проверок в день и сколько пропусков.
Loss для ранжирования
Иногда системе не нужна абсолютная вероятность: важно поставить релевантный документ выше нерелевантного. Pairwise loss сравнивает пару и штрафует случай, когда score хорошего объекта не выше:
Такой loss ближе к порядку выдачи, но не гарантирует калиброванные числа. Listwise методы учитывают целый список и позиции. Для поиска полезность первых трёх мест обычно выше полезности сотого, поэтому NDCG дисконтирует низкие позиции. Обучающий surrogate, offline ranking-метрика и online действие пользователя образуют три разных слоя, которые нельзя выдавать за одну цель.
Пары тоже собираются не нейтрально. Если выбирать только клики как положительные, позиция прежней системы влияет на метку: документы ниже почти не имели шанса быть замеченными. Для ranking loss нужен экспериментальный показ, propensity correction или осторожная модель наблюдения, иначе оптимизируется воспроизведение старого порядка.
CIFAR-10 и значение ошибки
В CIFAR-10 десять классов маленьких изображений. Cross-entropy обучает распределение по классам, top-1 error проверяет победителя. Но прикладная цена «кошка вместо собаки» может отличаться от «грузовик вместо самолёта». Стандартный benchmark намеренно упрощает матрицу потерь.
Улучшение средней cross-entropy может происходить за счёт калибровки без изменения accuracy. Это полезно для последующего решения и ансамблирования. Напротив, модель может иметь хорошую accuracy и катастрофический log-loss из-за нескольких уверенных ошибок.
Общий риск
Для правила истинный риск
усредняет loss по будущему распределению. Мы не знаем и заменяем ожидание выборочным средним. Почему выбор функции по той же выборке создаёт оптимизм, разберёт урок 58.
Loss должен быть вычислимым, согласованным с целью и устойчивым к неизбежному шуму. Иногда прикладная цена недифференцируема — тогда используют суррогат для обучения, но оценивают систему по настоящему риску.
Один прогноз спроса, три разумных ответа
За пять сопоставимых дней спрос составил единиц. Если цена ошибки квадратична, лучшая константа — среднее : большие промахи штрафуются особенно сильно. При абсолютной ошибке оптимальна медиана . Оба ответа корректны для своих losses, хотя используют одну таблицу.
Теперь нехватка одной единицы стоит девять рублей упущенной прибыли, а лишняя единица — один рубль хранения. Для pinball loss нужен квантиль уровня
Эмпирический -й квантиль маленькой выборки лежит у значения . Решение кажется чрезмерным, но оно прямо следует из асимметричной цены. Спорить нужно не с оптимизатором, а с оценками стоимости и устойчивостью хвоста. Один необычный день при пяти наблюдениях делает высокий квантиль крайне неопределённым.
Практический анализ покажет кривую ожидаемой стоимости для запасов от до , bootstrap-разброс оптимума и сценарии других отношений цен. Такой отчёт связывает loss с рублями и показывает, где новая информация ценнее тонкой настройки модели.