Логистическая регрессия: потери и регуляризация

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

В следующих разделах эти два соображения обсуждаются более подробно.

Потеря журнала

В модуле «Линейная регрессия» в качестве функции потерь вы использовали квадрат потерь (также называемых потерями L2 ). Квадратные потери хорошо работают для линейной модели, где скорость изменения выходных значений постоянна. Например, для линейной модели $y' = b + 3x_1$ каждый раз, когда вы увеличиваете входное значение $x_1$ на 1, выходное значение $y'$ увеличивается на 3.

Однако скорость изменения модели логистической регрессии не является постоянной. Как вы видели в разделе «Вычисление вероятности» , сигмовидная кривая имеет s-образную форму, а не линейную. Когда значение логарифма шансов ($z$) ближе к 0, небольшое увеличение $z$ приводит к гораздо большим изменениям $y$, чем когда $z$ является большим положительным или отрицательным числом. В следующей таблице показаны выходные данные сигмовидной функции для входных значений от 5 до 10, а также соответствующая точность, необходимая для учета различий в результатах.

вход логистический выход требуемые цифры точности
5 0,993 3
6 0,997 3
7 0,999 3
8 0,9997 4
9 0,9999 4
10 0,99998 5

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

Вместо этого функция потерь для логистической регрессии — Log Loss . Уравнение Log Loss возвращает логарифм величины изменения, а не просто расстояние от данных до прогноза. Потери журнала рассчитываются следующим образом:

\(\text{Log Loss} = \sum_{(x,y)\in D} -y\log(y') - (1 - y)\log(1 - y')\)

где:

  • \((x,y)\in D\) — это набор данных, содержащий множество помеченных примеров, которые представляют собой пары \((x,y)\) .
  • \(y\) — это метка в помеченном примере. Поскольку это логистическая регрессия, каждое значение \(y\) должно быть либо 0, либо 1.
  • \(y'\) — это прогноз вашей модели (где-то между 0 и 1), учитывая набор функций в \(x\).

Регуляризация в логистической регрессии

Регуляризация — механизм снижения сложности модели во время обучения — чрезвычайно важен в моделировании логистической регрессии. Без регуляризации асимптотическая природа логистической регрессии будет продолжать приближать потери к 0 в тех случаях, когда модель имеет большое количество функций. Следовательно, большинство моделей логистической регрессии используют одну из следующих двух стратегий для уменьшения сложности модели: