Модели логистической регрессии обучаются с использованием того же процесса, что и модели линейной регрессии , с двумя ключевыми отличиями:
- В моделях логистической регрессии в качестве функции потерь используется логарифмическая функция потерь (Log Loss) вместо квадратичной функции потерь (Square 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 возвращает логарифм величины изменения, а не просто расстояние от данных до прогноза. Log Loss рассчитывается следующим образом:
$\text{Log Loss} = -\frac{1}{N}\sum_{i=1}^{N} [y_i\log(y_i') + (1 - y_i)\log(1 - y_i')]$