Модели логистической регрессии обучаются с использованием того же процесса, что и модели линейной регрессии , с двумя ключевыми отличиями:
- Модели логистической регрессии используют Log Loss в качестве функции потерь вместо квадрата потерь .
- Применение регуляризации имеет решающее значение для предотвращения переобучения .
В следующих разделах эти два соображения обсуждаются более подробно.
Потеря журнала
В модуле «Линейная регрессия» в качестве функции потерь вы использовали квадрат потерь (также называемых потерями 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')\)