Мы знаем, что некоторые объективные функции легче оптимизировать, а некоторые - сложные. И есть много функций потерь, которые мы хотим использовать, но трудно использовать, например, потеря 0-1. Таким образом, мы находим некоторые функции потери прокси для выполнения этой работы. Например, мы используем потерю петли или логистическую потерю, чтобы «приблизить» потерю 0-1.
Следующий сюжет взят из книги Криса Бишопа PRML . Потеря шарнира изображена синим цветом, потеря бревна - красным, потеря квадрата - зеленым, а ошибка 0/1 - черным.
Я понимаю, почему у нас такой дизайн (для шарнира и логистических потерь) в том, что мы хотим, чтобы целевая функция была выпуклой.
Рассматривая потери в шарнирах и логистические потери, они в большей степени штрафуют за сильно ошибочно классифицированные экземпляры и, что интересно, также штрафуют за правильно классифицированные экземпляры, если они слабо классифицированы . Это действительно странный дизайн.
Мой вопрос заключается в том, какие цены мы должны заплатить, используя различные «функции потери прокси», такие как потеря шарнира и логистическая потеря?
Ответы:
Некоторые из моих мыслей, возможно, не верны.
Выпуклость, безусловно, является хорошим свойством, но я думаю, что наиболее важной причиной является то, что мы хотим, чтобы целевая функция имела ненулевые производные , чтобы мы могли использовать производные для ее решения. Целевая функция может быть невыпуклой, и в этом случае мы часто просто останавливаемся в некоторых локальных оптимальных или седловых точках.
Я думаю, что такой дизайн советует модели не только делать правильные прогнозы, но и быть уверенным в прогнозах. Если мы не хотим, чтобы правильно классифицированные случаи были наказаны, мы можем, например, переместить потерю шарнира (синего цвета) влево на 1, чтобы они больше не получали никакой потери. Но я считаю, что это часто приводит к худшему результату на практике.
ИМО, выбирая разные функции потерь, мы вносим в модель различные допущения. Например, потеря логистической регрессии (красный) предполагает распределение Бернулли, потеря MSE (зеленый) предполагает гауссов шум.
Следуя примеру наименьших квадратов и логистической регрессии в PRML, я добавил потерю шарнира для сравнения.
Как показано на рисунке, потеря шарнира и логистическая регрессия / перекрестная энтропия / логарифмическая вероятность / softplus имеют очень близкие результаты, потому что их целевые функции близки (рисунок ниже), в то время как MSE обычно более чувствительны к выбросам. Потеря шарнира не всегда имеет единственное решение, потому что оно не является строго выпуклым.
Однако одно важное свойство потери шарнира состоит в том, что точки данных, находящиеся далеко от границы решения, ничего не вносят в потерю, решение будет таким же, как и удаленные точки.
Остальные точки называются опорными векторами в контексте SVM. Принимая во внимание, что SVM использует термин регуляризатор для обеспечения максимальной маржинальности и уникального решения.
источник
Отправка позднего ответа, так как есть очень простой ответ, который еще не был упомянут.
Когда вы заменяете невыпуклую функцию потерь 0-1 на выпуклый суррогат (например, потеря шарнира), вы фактически решаете проблему, отличную от той, которую вы намеревались решить (которая сводит к минимуму количество ошибок классификации). Таким образом, вы получаете вычислительную управляемость (проблема становится выпуклой, что означает, что вы можете решить ее эффективно, используя инструменты выпуклой оптимизации), но в общем случае на самом деле нет способа связать ошибку классификатора, которая минимизирует потери «прокси» и ошибка классификатора, минимизирующая потери 0-1 . Если то, о чем вы действительно заботились, сводило к минимуму количество неправильных классификаций, я утверждаю, что это действительно большая цена.
источник
В идеале ваша функция потерь должна отражать фактические убытки, понесенные бизнесом. Например, если вы классифицируете поврежденные товары, тогда потеря неправильной классификации может быть такой:
источник