Функции потерь
Задача оценки вероятностей
Хотим, чтобы модель выдавала не просто класс, а уверенность в своём ответе. Например, \(a(x) = +1\) с уверенностью 80% означает: среди всех объектов, которым модель даёт 80%, реально положительных должно быть 80%.
Зачем это нужно:
- Гибкий выбор порога. Если \(b(x) \geq 90\%\) — звоним клиенту, иначе нет.
- Ранжирование объектов по уверенности (например, в задаче баннерной рекламы).
Формализуем: \(b(x) = \sigma(\langle w, x \rangle) \in (0; 1)\), где \(\sigma(z) = \frac{1}{1 + e^{-z}}\).
Требование к функции потерь
При \(n \to \infty\) на группе одинаковых объектов получаем:
\[\mathop{\text{argmin}}_{b \in [0;1]} \mathbb{E}_y(L(y, b) \mid x) = P(y = +1 \mid x) \quad \forall x \in \mathbb{X}\]
То есть минимум ожидаемой потери должен достигаться именно в истинной вероятности положительного класса.
MSE
\[L(y, z) = (b - [y = +1])^2\]
Берём производную по \(b\) и приравниваем к нулю:
\[\frac{\partial}{\partial b} \mathbb{E}_y(b - [y=+1])^2 = 2p(b-1) + 2b(1-p) = 0 \implies b = P(y=+1 \mid x)\]
MSE формально удовлетворяет требованию. Однако на практике это плохой выбор: из-за горизонтальных асимптот сигмоиды производная в крайних точках очень мала, хотя ошибка может быть большой.
MAE
Для MAE требование к корректной оценке вероятностей не выполняется.
Log-loss (Binary Cross Entropy)
Выведем функцию потерь из вероятностных соображений. Каждый ответ \(y_i\) — случайная величина из распределения Бернулли. Запишем функцию максимального правдоподобия:
\[L = \prod_{i=1}^\ell b(x_i)^{[y_i=+1]} (1 - b(x_i))^{[y_i=-1]} \to \max\]
Логарифмируем и берём с минусом (минимизируем):
\[\text{log-loss} = \sum_{i=1}^\ell \left( -[y_i=+1] \log b(x_i) - [y_i=-1] \log(1 - b(x_i)) \right) \to \min\]
Для сигмоиды \(b(x) = \sigma(\langle w, x \rangle)\) это сводится к логистической функции потерь:
\[L(y, z) = \log(1 + e^{-yz})\]
Hinge loss и SVM
Кусочно-линейная функция потерь:
\[\bar{L}(\mu) = \max(0, 1 - \mu)\]
Линейно-разделимый случай
Введём требование нормировки: \(\min_{x_i \in \mathbb{X}} |\langle w, x_i \rangle + w_0| = 1\). Тогда расстояние от гиперплоскости до ближайшего объекта равно \(\frac{1}{\|w\|}\). Максимизация отступа приводит к задаче:
\[\begin{cases} \|w\|^2 \to \min_{w, w_0} \\ y_i (\langle w, x_i \rangle + w_0) \geq 1 \quad \forall i \end{cases}\]
Линейно-неразделимый случай
Вводим переменные ослабления \(\xi_i \geq 0\):
\[\begin{cases} \frac{1}{2}\|w\|^2 + C \sum_{i=1}^n \xi_i \to \min_{w, w_0, \xi_i} \\ y_i(\langle w, x_i \rangle + w_0) \geq 1 - \xi_i \end{cases}\]
Здесь \(C\) — штраф за ошибки, \(\frac{1}{2}\|w\|^2\) — штраф за малый отступ. После подстановки оптимального \(\xi_i = \max(0, 1 - y_i(\langle w, x \rangle + w_0))\) получаем безусловную задачу оптимизации — SVM в общем виде.
Сравнение SVM и логистической регрессии
| Свойство | SVM (hinge) | Логистическая регрессия (log-loss) |
|---|---|---|
| При \(\mu < 0\) | Одинаковое поведение | Одинаковое поведение |
| При \(\mu > 0\) | Достаточно \(\mu \geq 1\) | Стремится \(\mu \to +\infty\) |
| Цель | Максимизация отступа, лучшие метрики классификации | Предсказание вероятностей |