Логистическая регрессия

Материал из MachineLearning.

(Различия между версиями)
Перейти к: навигация, поиск
 
(4 промежуточные версии не показаны)
Строка 1: Строка 1:
 +
{{well|Статья написана с использованием LLM '''GPT-5.3-mini''' и проверена участником ~~Dovlat Demin~~}} не закончена еще
= Логистическая регрессия =
= Логистическая регрессия =
-
Логистическая регрессия — это метод статистического обучения, используемый для решения задач классификации, в первую очередь бинарной. Метод относится к классу обобщённых линейных моделей (GLM) и основан на предположении, что логарифм отношения шансов (log-odds) является линейной функцией признаков.
+
'''Логистическая регрессия''' (''logistic regression'', ''logit model'') линейный [[классификатор]], предназначенный для решения задач [[бинарная классификация|бинарной классификации]]. В отличие от большинства линейных классификаторов, логистическая регрессия не только относит объект к одному из классов, но и оценивает условную вероятность принадлежности объекта каждому классу.
-
Логистическая регрессия широко применяется в задачах анализа данных, скоринга, медицины, обработки текста и других областях машинного обучения.
+
Метод относится к классу [[обобщённые линейные модели|обобщённых линейных моделей]] и является одним из наиболее распространённых алгоритмов машинного обучения благодаря простоте, интерпретируемости и высокой эффективности на широком круге задач.
-
== 1. Определения ==
+
Типичные области применения:
 +
 
 +
* фильтрация спама;
 +
* кредитный скоринг;
 +
* медицинская диагностика;
 +
* прогнозирование оттока клиентов;
 +
* анализ кликов в рекомендательных системах;
 +
* обнаружение мошеннических операций.
 +
 
 +
== Постановка задачи ==
Пусть задана обучающая выборка
Пусть задана обучающая выборка
-
<tex>X^m = \{(x_1,y_1),\dots,(x_m,y_m)\}</tex>, где
 
-
<tex>x_i \in \mathbb{R}^d</tex> — вектор признаков,
 
-
<tex>y_i \in \{0,1\}</tex> — метка класса.
 
-
Логистическая регрессия моделирует вероятность класса 1 как:
+
<tex>
 +
X^\ell=\{(x_i,y_i)\}_{i=1}^{\ell},
 +
</tex> где
<tex>
<tex>
-
P(y=1|x,w) = \sigma(w^T x) = \frac{1}{1 + \exp(-w^T x)}
+
x_i\in\mathbb{R}^d
 +
</tex> — вектор признаков объекта,
 +
 
 +
<tex>
 +
y_i\in\{0,1\}
 +
</tex> — метка класса.
 +
Требуется построить алгоритм, который по признаковому описанию нового объекта оценивает вероятность его принадлежности положительному классу
 +
<tex>
 +
P(y=1\mid x),
</tex>
</tex>
-
где <tex>\sigma(\cdot)</tex> — сигмоидная функция.
+
после чего принимает решение о классификации.
-
Функция правдоподобия выборки:
+
Наиболее часто используется правило
<tex>
<tex>
-
L(w) = \prod_{i=1}^m P(y_i|x_i,w)
+
a(x)=
 +
\begin{cases}
 +
1,&P(y=1\mid x)\ge0.5,\\
 +
0,&\text{иначе}.
 +
\end{cases}
</tex>
</tex>
-
Логарифмическая функция потерь (log-loss):
+
Однако на практике порог может изменяться в зависимости от стоимости ошибок первого и второго рода.
 +
 
 +
== Почему линейная регрессия не подходит для классификации ==
 +
 
 +
На первый взгляд задачу можно попытаться решить при помощи [[линейная регрессия|линейной регрессии]], рассматривая метки классов как числа 0 и 1. Тогда модель имеет вид
<tex>
<tex>
-
Q(w) = - \sum_{i=1}^m \left[y_i \log p_i + (1-y_i)\log(1-p_i)\right]
+
f(x)=w^\top x+b.
</tex>
</tex>
-
где <tex>p_i = P(y=1|x_i,w)</tex>.
+
Однако такой подход обладает несколькими принципиальными недостатками.
 +
 
 +
Во-первых, значения линейной функции не ограничены и могут принимать любые значения на всей числовой оси, тогда как вероятность должна принадлежать интервалу
 +
 
 +
<tex>
 +
[0,1].
 +
</tex>
 +
 
 +
Во-вторых, линейная регрессия минимизирует среднеквадратичную ошибку, предполагая нормальное распределение ошибок наблюдений. Для бинарной зависимой переменной такое предположение не выполняется.
 +
 
 +
Наконец, при использовании линейной регрессии одинаковое изменение выхода модели имеет различный смысл в разных областях. Например, изменение прогноза с 0.50 до 0.60 существенно влияет на принимаемое решение, тогда как изменение с 2.0 до 2.1 вообще не имеет вероятностной интерпретации.
 +
 
 +
Поэтому для задач классификации требуется модель, которая:
 +
 
 +
* возвращает значения только из интервала <tex>[0,1]</tex>;
 +
* допускает вероятностную интерпретацию;
 +
* позволяет обучать параметры методом максимального правдоподобия.
 +
 
 +
Этим требованиям удовлетворяет логистическая регрессия.
-
=== 1.1 Случай двух классов ===
+
== Вероятностная модель ==
-
В бинарной классификации модель можно переписать через логарифм отношения шансов:
+
Основная идея логистической регрессии состоит в том, что линейная комбинация признаков моделирует не саму вероятность, а ''логарифм отношения шансов'' (log-odds):
<tex>
<tex>
-
\log \frac{P(y=1|x)}{P(y=0|x)} = w^T x
+
\log\frac{P(y=1\mid x)}{P(y=0\mid x)}
 +
=
 +
w^\top x+b.
</tex>
</tex>
-
Это ключевая интерпретация логистической регрессии как линейной модели в пространстве лог-оддсов.
+
Поскольку
-
== 2. Обоснования ==
+
<tex>
 +
P(y=0\mid x)=1-P(y=1\mid x),
 +
</tex>
-
=== 2.1 С точки зрения минимизации эмпирического риска ===
+
из предыдущего равенства получается выражение для вероятности положительного класса
-
Логистическая регрессия возникает как решение задачи минимизации эмпирического риска:
+
<tex>
 +
P(y=1\mid x)=
 +
\sigma(w^\top x+b),
 +
</tex>
 +
 
 +
где
<tex>
<tex>
-
\min_w \sum_{i=1}^m \ell(y_i, w^T x_i)
+
\sigma(z)=\frac{1}{1+e^{-z}}
</tex>
</tex>
-
где логистическая функция потерь:
+
— '''логистическая функция''' (сигмоида).
 +
 
 +
Соответственно,
<tex>
<tex>
-
\ell(y, z) = \log(1 + \exp(-y z)), \quad y \in \{-1,1\}
+
P(y=0\mid x)=1-\sigma(w^\top x+b).
</tex>
</tex>
-
Эта функция является гладкой верхней оценкой 0–1 потерь.
+
Таким образом, логистическая регрессия является линейной моделью в пространстве признаков, но нелинейной по отношению к вероятности.
-
=== 2.2 С точки зрения байесовской классификации ===
+
== Свойства сигмоидной функции ==
-
В байесовском подходе предполагается, что классы порождаются вероятностной моделью:
+
Сигмоидная функция обладает рядом свойств, делающих её естественным выбором для моделирования вероятностей.
 +
* принимает значения только в интервале <tex>(0,1)</tex>;
 +
* монотонно возрастает;
 +
* непрерывна и дифференцируема;
 +
* симметрична относительно точки
<tex>
<tex>
-
P(y|x) = \text{Bernoulli}(\sigma(w^T x))
+
(0,\frac12);
</tex>
</tex>
 +
* при больших положительных значениях аргумента вероятность стремится к единице, а при больших отрицательных — к нулю.
-
Оценка параметров получается методом максимального правдоподобия.
+
Производная сигмоиды имеет простой вид
-
Регуляризация соответствует априорному распределению на веса (например, гауссовскому), что приводит к MAP-оценке.
+
<tex>
 +
\sigma'(z)=
 +
\sigma(z)\left(1-\sigma(z)\right),
 +
</tex>
-
(см. также обобщённые линейные модели в учебных материалах Воронцова) :contentReference[oaicite:0]{index=0}
+
что существенно упрощает вычисление градиента при обучении модели.
-
== 3. Методы настройки весов ==
+
Величина
-
=== 3.1 Градиентный метод первого порядка ===
+
<tex>
 +
w^\top x+b
 +
</tex>
 +
 
 +
называется ''логитом'' (''logit''), поскольку представляет собой логарифм отношения шансов. Именно логит моделируется линейной функцией, а сама вероятность получается после применения сигмоиды.
 +
 
 +
== Интерпретация коэффициентов ==
 +
 
 +
Каждый коэффициент модели характеризует влияние соответствующего признака на логарифм отношения шансов.
-
Градиент функции потерь:
+
Если признак увеличивается на единицу, а остальные признаки остаются фиксированными, то логарифм отношения шансов изменяется на величину
<tex>
<tex>
-
\nabla Q(w) = \sum_{i=1}^m (p_i - y_i)x_i
+
w_j.
</tex>
</tex>
-
Обновление параметров:
+
После экспоненцирования коэффициент
<tex>
<tex>
-
w^{t+1} = w^t - \eta \nabla Q(w^t)
+
e^{w_j}
</tex>
</tex>
-
Используется стохастический градиентный спуск (SGD) для больших выборок.
+
показывает, во сколько раз изменяются шансы наступления события при увеличении данного признака на единицу.
-
=== 3.2 Метод второго порядка IRLS ===
+
Такая интерпретация широко используется в прикладной статистике, эконометрике, медицине и биостатистике, где важна не только точность прогноза, но и количественная оценка влияния факторов.
-
Метод IRLS (Iteratively Reweighted Least Squares) основан на приближении Ньютона:
+
== Обучение логистической регрессии ==
 +
 
 +
Параметры логистической регрессии выбираются таким образом, чтобы модель максимально точно описывала наблюдаемые данные. В отличие от [[линейная регрессия|линейной регрессии]], где обычно минимизируется сумма квадратов ошибок, здесь естественным критерием является '''метод максимального правдоподобия'''. Такой подход непосредственно следует из вероятностной интерпретации модели и является стандартным для [[обобщённые линейные модели|обобщённых линейных моделей]]. :contentReference[oaicite:0]{index=0}
 +
 
 +
=== Метод максимального правдоподобия ===
 +
 
 +
Пусть
<tex>
<tex>
-
w^{t+1} = w^t - H^{-1} \nabla Q(w)
+
p_i=P(y_i=1\mid x_i)=\sigma(w^\top x_i+b).
</tex>
</tex>
-
где H — гессиан функции потерь.
+
Тогда вероятность наблюдать правильную метку объекта равна
-
IRLS интерпретируется как последовательность взвешенных задач наименьших квадратов.
+
<tex>
 +
P(y_i\mid x_i)=
 +
p_i^{y_i}(1-p_i)^{1-y_i}.
 +
</tex>
-
== 4. Геометрическая интерпретация ==
+
Предполагая независимость объектов обучающей выборки, получаем функцию правдоподобия
 +
 
 +
<tex>
 +
L(w,b)=
 +
\prod_{i=1}^{\ell}
 +
p_i^{y_i}(1-p_i)^{1-y_i}.
 +
</tex>
-
Логистическая регрессия строит **линейную разделяющую гиперплоскость**:
+
Максимизация произведения неудобна вычислительно, поэтому переходят к логарифму правдоподобия
<tex>
<tex>
-
w^T x = 0
+
\ell(w,b)=
 +
\sum_{i=1}^{\ell}
 +
\left(
 +
y_i\log p_i+
 +
(1-y_i)\log(1-p_i)
 +
\right).
</tex>
</tex>
-
- расстояние до гиперплоскости определяет уверенность классификации
+
Поскольку логарифм является монотонной функцией, максимум логарифма достигается при тех же значениях параметров, что и максимум исходного правдоподобия.
-
- знак <tex>w^T x</tex> определяет класс
+
-
- модуль значения связан с вероятностью
+
-
Вероятность:
+
=== Логистическая функция потерь ===
 +
 
 +
В задачах оптимизации обычно минимизируют отрицательное логарифмическое правдоподобие
<tex>
<tex>
-
P(y=1|x) \approx 1 \text{ при } w^T x \gg 0,\quad
+
Q(w,b)=
-
P(y=1|x) \approx 0 \text{ при } w^T x \ll 0
+
-\ell(w,b),
</tex>
</tex>
-
Таким образом модель является **линейным классификатором с вероятностной интерпретацией**.
+
которое имеет вид
-
== 5. Многоклассовая логистическая регрессия (добавлено) ==
+
 
 +
<tex>
 +
Q(w,b)=
 +
-\sum_{i=1}^{\ell}
 +
\left(
 +
y_i\log p_i+
 +
(1-y_i)\log(1-p_i)
 +
\right).
 +
</tex>
 +
 
 +
Этот функционал известен как '''логистическая функция потерь''', '''логарифмическая потеря''' (''log-loss'') или '''бинарная кросс-энтропия''' (''binary cross-entropy''). Она обладает рядом важных свойств:
 +
 
 +
* штрафует уверенные ошибочные прогнозы значительно сильнее, чем неуверенные;
 +
* является выпуклой по параметрам модели;
 +
* непосредственно соответствует принципу максимального правдоподобия.
 +
 
 +
Если модель предсказывает вероятность, близкую к единице для истинного класса, вклад соответствующего объекта в функцию потерь оказывается малым. Напротив, уверенный неправильный прогноз приводит к очень большому значению ошибки.
 +
 
 +
=== Градиент функции потерь ===
-
Для <tex>K</tex> классов используется softmax-модель:
+
Благодаря простой производной сигмоиды
<tex>
<tex>
-
P(y=k|x) = \frac{\exp(w_k^T x)}{\sum_{j=1}^K \exp(w_j^T x)}
+
\sigma'(z)=
 +
\sigma(z)(1-\sigma(z))
</tex>
</tex>
-
Функция потерь:
+
градиент функции потерь также имеет простой аналитический вид.
 +
 
 +
Для весового вектора
<tex>
<tex>
-
Q(W) = - \sum_{i=1}^m \log P(y_i|x_i)
+
w
</tex>
</tex>
-
Многоклассовая логистическая регрессия эквивалентна:
+
получается
-
- обобщению бинарной модели
+
-
- частному случаю multinomial GLM
+
-
== 6. Связь с другими методами обучения ==
+
-
Логистическая регрессия связана с:
+
<tex>
 +
\nabla_w Q=
 +
\sum_{i=1}^{\ell}
 +
(p_i-y_i)x_i,
 +
</tex>
-
* [[Линейные модели]]
+
а для свободного коэффициента
-
* [[Метод максимального правдоподобия]]
+
-
* [[Обобщённые линейные модели]]
+
-
* [[SVM]] (через различие функций потерь: log-loss vs hinge loss)
+
-
* [[Нейронные сети]] (один слой softmax = логистическая регрессия)
+
-
Также существует связь с регуляризацией:
+
<tex>
-
- L2-регуляризация ↔ гауссовский приор
+
\frac{\partial Q}{\partial b}=
-
- L1-регуляризация ↔ разреженность (аналог Lasso)
+
\sum_{i=1}^{\ell}
-
== 7. Литература ==
+
(p_i-y_i).
 +
</tex>
 +
 
 +
Заметим, что выражение
 +
 
 +
<tex>
 +
p_i-y_i
 +
</tex>
 +
 
 +
представляет собой разность между предсказанной вероятностью и истинной меткой объекта. Именно поэтому вычисление градиента логистической регрессии существенно проще, чем может показаться из определения функции правдоподобия.
 +
 
 +
=== Методы оптимизации ===
 +
 
 +
В отличие от линейной регрессии, аналитическое решение задачи оптимизации отсутствует. Причина заключается в нелинейности сигмоидной функции.
 +
 
 +
Поэтому параметры модели находятся численными методами. Наиболее распространены:
 +
 
 +
* [[градиентный спуск]];
 +
* стохастический и мини-пакетный градиентный спуск;
 +
* метод Ньютона;
 +
* алгоритм IRLS (''Iteratively Reweighted Least Squares'');
 +
* квазиньютоновские методы BFGS и L-BFGS.
 +
 
 +
Поскольку функция потерь выпукла, любая локальная точка минимума одновременно является глобальной. Это существенно упрощает обучение по сравнению со многими современными нелинейными моделями, например [[нейронная сеть|нейронными сетями]]. :contentReference[oaicite:1]{index=1}
 +
 
 +
=== Регуляризация ===
 +
 
 +
При большом числе признаков модель может переобучаться. Для уменьшения сложности модели в функцию потерь добавляют штраф за большие значения коэффициентов.
 +
 
 +
Наиболее распространена <tex>L_2</tex>-регуляризация:
 +
 
 +
<tex>
 +
Q_{\lambda}(w)=
 +
Q(w)+
 +
\frac{\lambda}{2}\|w\|_2^2,
 +
</tex>
 +
 
 +
где
 +
 
 +
<tex>
 +
\lambda\ge0
 +
</tex>
 +
 
 +
— коэффициент регуляризации.
 +
 
 +
Такой штраф уменьшает величину коэффициентов, делает решение более устойчивым и снижает дисперсию модели.
 +
 
 +
Другой популярный вариант — <tex>L_1</tex>-регуляризация
 +
 
 +
<tex>
 +
Q_{\lambda}(w)=
 +
Q(w)+
 +
\lambda\|w\|_1,
 +
</tex>
 +
 
 +
которая способствует появлению разреженных решений, зануляя часть коэффициентов. Благодаря этому логистическая регрессия одновременно выполняет классификацию и отбор наиболее информативных признаков.
 +
 
 +
== Геометрическая интерпретация ==
 +
 
 +
Как и любой линейный классификатор, логистическая регрессия строит в пространстве признаков разделяющую гиперплоскость
 +
 
 +
<tex>
 +
w^\top x+b=0.
 +
</tex>
 +
 
 +
Все объекты, лежащие по одну сторону гиперплоскости, относятся к одному классу, по другую — к другому.
 +
 
 +
В отличие от [[метод опорных векторов|метода опорных векторов]], логистическая регрессия не максимизирует ширину разделяющей полосы. Вместо этого она подбирает параметры таким образом, чтобы максимизировать вероятность наблюдаемых данных.
 +
 
 +
Удалённость точки от разделяющей гиперплоскости определяется значением
 +
 
 +
<tex>
 +
w^\top x+b.
 +
</tex>
 +
 
 +
После применения сигмоиды это расстояние преобразуется в вероятность принадлежности положительному классу.
 +
 
 +
Следовательно, логистическая регрессия является одновременно линейным классификатором и вероятностной моделью: геометрическое положение объекта относительно разделяющей гиперплоскости определяет степень уверенности классификации.
 +
 
 +
=== Схема «один против всех» ===
 +
 
 +
Наиболее простым способом является обучение
 +
 
 +
<tex>
 +
K
 +
</tex>
 +
 
 +
независимых бинарных классификаторов. Для каждого класса строится собственная модель, отличающая данный класс от всех остальных.
 +
 
 +
Для нового объекта вычисляются вероятности
 +
 
 +
<tex>
 +
P(y=k\mid x),
 +
\quad
 +
k=1,\ldots,K,
 +
</tex>
 +
 
 +
после чего выбирается класс с максимальной оценкой.
 +
 
 +
Достоинствами подхода являются простота реализации и возможность использовать любой алгоритм бинарной классификации. Недостаток состоит в том, что вероятности различных моделей обучаются независимо и поэтому могут быть плохо согласованы между собой.
 +
 
 +
=== Мультиномиальная логистическая регрессия ===
 +
 
 +
Более естественным обобщением является '''мультиномиальная логистическая регрессия''' (''multinomial logistic regression'', ''softmax regression''), в которой вероятности всех классов моделируются одновременно. :contentReference[oaicite:0]{index=0}
 +
 
 +
Каждому классу соответствует собственный вектор параметров
 +
 
 +
<tex>
 +
w_k.
 +
</tex>
 +
 
 +
Для объекта вычисляются линейные оценки
 +
 
 +
<tex>
 +
a_k(x)=w_k^\top x+b_k,
 +
</tex>
 +
 
 +
которые преобразуются в вероятности с помощью функции softmax:
 +
 
 +
<tex>
 +
P(y=k\mid x)=
 +
\frac{\exp(a_k(x))}
 +
{\sum\limits_{j=1}^{K}\exp(a_j(x))}.
 +
</tex>
 +
 
 +
Полученные вероятности обладают двумя важными свойствами:
 +
 
 +
* принадлежат интервалу <tex>[0,1]</tex>;
 +
* их сумма равна единице.
 +
 
 +
Как и в бинарном случае, параметры модели оцениваются методом максимального правдоподобия, а функция потерь представляет собой многоклассовую кросс-энтропию. :contentReference[oaicite:1]{index=1}
 +
 
 +
== Достоинства ==
 +
 
 +
Логистическая регрессия остаётся одним из наиболее популярных методов классификации благодаря сочетанию простоты и высокой практической эффективности.
 +
 
 +
Основные достоинства метода:
 +
 
 +
* вероятностная интерпретация результатов;
 +
* выпуклая задача оптимизации с единственным глобальным минимумом;
 +
* высокая скорость обучения и предсказания;
 +
* небольшое число настраиваемых гиперпараметров;
 +
* интерпретируемость коэффициентов модели;
 +
* возможность использования регуляризации и отбора признаков;
 +
* хорошая работа на выборках большого объёма и высокой размерности.
 +
 
 +
По этим причинам логистическая регрессия часто используется как базовый алгоритм при сравнении методов машинного обучения и как отправная точка при решении новых прикладных задач.
 +
 
 +
== Ограничения ==
 +
 
 +
Несмотря на широкую область применения, логистическая регрессия имеет ряд ограничений.
 +
 
 +
Прежде всего, модель предполагает линейную зависимость логарифма отношения шансов от признаков. Если истинная граница между классами существенно нелинейна, качество классификации может оказаться недостаточным.
 +
 
 +
Кроме того:
 +
 
 +
* модель чувствительна к сильной мультиколлинеарности признаков;
 +
* качество зависит от выбора информативного признакового описания;
 +
* при наличии большого числа выбросов возможна деградация качества;
 +
* без построения новых признаков модель не способна описывать сложные нелинейные зависимости.
 +
 
 +
Для повышения качества нередко используют полиномиальные признаки, взаимодействия признаков или предварительные нелинейные преобразования данных.
 +
 
 +
== Связь с другими методами ==
 +
 
 +
Логистическая регрессия занимает промежуточное положение между классическими статистическими моделями и современными алгоритмами машинного обучения.
 +
 
 +
По сравнению с [[линейная регрессия|линейной регрессией]] она использует вероятностную модель бинарной случайной величины и оптимизирует логарифмическое правдоподобие вместо среднеквадратичной ошибки.
 +
 
 +
По сравнению с [[метод опорных векторов|методом опорных векторов]] логистическая регрессия непосредственно оценивает условные вероятности классов, тогда как SVM ориентирован на максимизацию разделяющего зазора и требует дополнительной калибровки для получения вероятностных оценок.
 +
 
 +
С точки зрения статистики логистическая регрессия является частным случаем [[обобщённые линейные модели|обобщённых линейных моделей]] с биномиальным распределением отклика и логит-функцией связи.
 +
 
 +
Наконец, функция потерь логистической регрессии — кросс-энтропия — широко используется при обучении [[нейронная сеть|нейронных сетей]]. В этом смысле логистическая регрессия может рассматриваться как однослойная нейронная сеть без скрытых слоёв, использующая сигмоидную (или softmax) функцию активации на выходе.
 +
 
 +
== См. также ==
 +
 
 +
* [[Линейная регрессия]]
 +
* [[Линейный классификатор]]
 +
* [[Обобщённые линейные модели]]
 +
* [[Метод максимального правдоподобия]]
 +
* [[Градиентный спуск]]
 +
* [[Метод опорных векторов]]
 +
* [[Кросс-энтропия]]
-
1. Hastie T., Tibshirani R., Friedman J. — The Elements of Statistical Learning, 2009
+
== Литература ==
-
2. Bishop C. — Pattern Recognition and Machine Learning, 2006
+
-
3. Murphy K. — Machine Learning: A Probabilistic Perspective, 2012
+
-
4. McCullagh P., Nelder J. — Generalized Linear Models, 1989
+
-
5. Воронцов К.В. — Курс лекций по машинному обучению :contentReference[oaicite:1]{index=1}
+
-
== 8. Ссылки ==
+
-
* https://www.machinelearning.ru/wiki/ — образовательный портал MachineLearning.ru
+
# Bishop C. M. ''Pattern Recognition and Machine Learning.'' Springer, 2006.
-
* https://en.wikipedia.org/wiki/Logistic_regression — обзор метода
+
# Hastie T., Tibshirani R., Friedman J. ''The Elements of Statistical Learning.'' 2nd ed. Springer, 2009.
-
* https://www.cs.cmu.edu/~tom/mlbook.html — Mitchell, Machine Learning
+
# Murphy K. P. ''Machine Learning: A Probabilistic Perspective.'' MIT Press, 2012.
 +
# McCullagh P., Nelder J. A. ''Generalized Linear Models.'' 2nd ed. Chapman & Hall, 1989.
 +
# Hosmer D. W., Lemeshow S., Sturdivant R. X. ''Applied Logistic Regression.'' 3rd ed. Wiley, 2013.
 +
# Cox D. R. ''The Regression Analysis of Binary Sequences.'' Journal of the Royal Statistical Society, Series B, 1958.

Текущая версия

Статья написана с использованием LLM GPT-5.3-mini и проверена участником ~~Dovlat Demin~~
не закончена еще

Содержание

Логистическая регрессия

Логистическая регрессия (logistic regression, logit model) — линейный классификатор, предназначенный для решения задач бинарной классификации. В отличие от большинства линейных классификаторов, логистическая регрессия не только относит объект к одному из классов, но и оценивает условную вероятность принадлежности объекта каждому классу.

Метод относится к классу обобщённых линейных моделей и является одним из наиболее распространённых алгоритмов машинного обучения благодаря простоте, интерпретируемости и высокой эффективности на широком круге задач.

Типичные области применения:

  • фильтрация спама;
  • кредитный скоринг;
  • медицинская диагностика;
  • прогнозирование оттока клиентов;
  • анализ кликов в рекомендательных системах;
  • обнаружение мошеннических операций.

Постановка задачи

Пусть задана обучающая выборка


X^\ell=\{(x_i,y_i)\}_{i=1}^{\ell},
где


x_i\in\mathbb{R}^d
— вектор признаков объекта,


y_i\in\{0,1\}
— метка класса. Требуется построить алгоритм, который по признаковому описанию нового объекта оценивает вероятность его принадлежности положительному классу 
P(y=1\mid x),

после чего принимает решение о классификации.

Наиболее часто используется правило


a(x)=
\begin{cases}
1,&P(y=1\mid x)\ge0.5,\\
0,&\text{иначе}.
\end{cases}

Однако на практике порог может изменяться в зависимости от стоимости ошибок первого и второго рода.

Почему линейная регрессия не подходит для классификации

На первый взгляд задачу можно попытаться решить при помощи линейной регрессии, рассматривая метки классов как числа 0 и 1. Тогда модель имеет вид


f(x)=w^\top x+b.

Однако такой подход обладает несколькими принципиальными недостатками.

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


[0,1].

Во-вторых, линейная регрессия минимизирует среднеквадратичную ошибку, предполагая нормальное распределение ошибок наблюдений. Для бинарной зависимой переменной такое предположение не выполняется.

Наконец, при использовании линейной регрессии одинаковое изменение выхода модели имеет различный смысл в разных областях. Например, изменение прогноза с 0.50 до 0.60 существенно влияет на принимаемое решение, тогда как изменение с 2.0 до 2.1 вообще не имеет вероятностной интерпретации.

Поэтому для задач классификации требуется модель, которая:

  • возвращает значения только из интервала [0,1];
  • допускает вероятностную интерпретацию;
  • позволяет обучать параметры методом максимального правдоподобия.

Этим требованиям удовлетворяет логистическая регрессия.

Вероятностная модель

Основная идея логистической регрессии состоит в том, что линейная комбинация признаков моделирует не саму вероятность, а логарифм отношения шансов (log-odds):


\log\frac{P(y=1\mid x)}{P(y=0\mid x)}
=
w^\top x+b.

Поскольку


P(y=0\mid x)=1-P(y=1\mid x),

из предыдущего равенства получается выражение для вероятности положительного класса


P(y=1\mid x)=
\sigma(w^\top x+b),

где


\sigma(z)=\frac{1}{1+e^{-z}}

логистическая функция (сигмоида).

Соответственно,


P(y=0\mid x)=1-\sigma(w^\top x+b).

Таким образом, логистическая регрессия является линейной моделью в пространстве признаков, но нелинейной по отношению к вероятности.

Свойства сигмоидной функции

Сигмоидная функция обладает рядом свойств, делающих её естественным выбором для моделирования вероятностей.

  • принимает значения только в интервале (0,1);
  • монотонно возрастает;
  • непрерывна и дифференцируема;
  • симметрична относительно точки


(0,\frac12);

  • при больших положительных значениях аргумента вероятность стремится к единице, а при больших отрицательных — к нулю.

Производная сигмоиды имеет простой вид


\sigma'(z)=
\sigma(z)\left(1-\sigma(z)\right),

что существенно упрощает вычисление градиента при обучении модели.

Величина


w^\top x+b

называется логитом (logit), поскольку представляет собой логарифм отношения шансов. Именно логит моделируется линейной функцией, а сама вероятность получается после применения сигмоиды.

Интерпретация коэффициентов

Каждый коэффициент модели характеризует влияние соответствующего признака на логарифм отношения шансов.

Если признак увеличивается на единицу, а остальные признаки остаются фиксированными, то логарифм отношения шансов изменяется на величину


w_j.

После экспоненцирования коэффициент


e^{w_j}

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

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

Обучение логистической регрессии

Параметры логистической регрессии выбираются таким образом, чтобы модель максимально точно описывала наблюдаемые данные. В отличие от линейной регрессии, где обычно минимизируется сумма квадратов ошибок, здесь естественным критерием является метод максимального правдоподобия. Такой подход непосредственно следует из вероятностной интерпретации модели и является стандартным для обобщённых линейных моделей. :contentReference[oaicite:0]{index=0}

Метод максимального правдоподобия

Пусть


p_i=P(y_i=1\mid x_i)=\sigma(w^\top x_i+b).

Тогда вероятность наблюдать правильную метку объекта равна


P(y_i\mid x_i)=
p_i^{y_i}(1-p_i)^{1-y_i}.

Предполагая независимость объектов обучающей выборки, получаем функцию правдоподобия


L(w,b)=
\prod_{i=1}^{\ell}
p_i^{y_i}(1-p_i)^{1-y_i}.

Максимизация произведения неудобна вычислительно, поэтому переходят к логарифму правдоподобия


\ell(w,b)=
\sum_{i=1}^{\ell}
\left(
y_i\log p_i+
(1-y_i)\log(1-p_i)
\right).

Поскольку логарифм является монотонной функцией, максимум логарифма достигается при тех же значениях параметров, что и максимум исходного правдоподобия.

Логистическая функция потерь

В задачах оптимизации обычно минимизируют отрицательное логарифмическое правдоподобие


Q(w,b)=
-\ell(w,b),

которое имеет вид


Q(w,b)=
-\sum_{i=1}^{\ell}
\left(
y_i\log p_i+
(1-y_i)\log(1-p_i)
\right).

Этот функционал известен как логистическая функция потерь, логарифмическая потеря (log-loss) или бинарная кросс-энтропия (binary cross-entropy). Она обладает рядом важных свойств:

  • штрафует уверенные ошибочные прогнозы значительно сильнее, чем неуверенные;
  • является выпуклой по параметрам модели;
  • непосредственно соответствует принципу максимального правдоподобия.

Если модель предсказывает вероятность, близкую к единице для истинного класса, вклад соответствующего объекта в функцию потерь оказывается малым. Напротив, уверенный неправильный прогноз приводит к очень большому значению ошибки.

Градиент функции потерь

Благодаря простой производной сигмоиды


\sigma'(z)=
\sigma(z)(1-\sigma(z))

градиент функции потерь также имеет простой аналитический вид.

Для весового вектора


w

получается


\nabla_w Q=
\sum_{i=1}^{\ell}
(p_i-y_i)x_i,

а для свободного коэффициента


\frac{\partial Q}{\partial b}=
\sum_{i=1}^{\ell}
(p_i-y_i).

Заметим, что выражение


p_i-y_i

представляет собой разность между предсказанной вероятностью и истинной меткой объекта. Именно поэтому вычисление градиента логистической регрессии существенно проще, чем может показаться из определения функции правдоподобия.

Методы оптимизации

В отличие от линейной регрессии, аналитическое решение задачи оптимизации отсутствует. Причина заключается в нелинейности сигмоидной функции.

Поэтому параметры модели находятся численными методами. Наиболее распространены:

  • градиентный спуск;
  • стохастический и мини-пакетный градиентный спуск;
  • метод Ньютона;
  • алгоритм IRLS (Iteratively Reweighted Least Squares);
  • квазиньютоновские методы BFGS и L-BFGS.

Поскольку функция потерь выпукла, любая локальная точка минимума одновременно является глобальной. Это существенно упрощает обучение по сравнению со многими современными нелинейными моделями, например нейронными сетями. :contentReference[oaicite:1]{index=1}

Регуляризация

При большом числе признаков модель может переобучаться. Для уменьшения сложности модели в функцию потерь добавляют штраф за большие значения коэффициентов.

Наиболее распространена L_2-регуляризация:


Q_{\lambda}(w)=
Q(w)+
\frac{\lambda}{2}\|w\|_2^2,

где


\lambda\ge0

— коэффициент регуляризации.

Такой штраф уменьшает величину коэффициентов, делает решение более устойчивым и снижает дисперсию модели.

Другой популярный вариант — L_1-регуляризация


Q_{\lambda}(w)=
Q(w)+
\lambda\|w\|_1,

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

Геометрическая интерпретация

Как и любой линейный классификатор, логистическая регрессия строит в пространстве признаков разделяющую гиперплоскость


w^\top x+b=0.

Все объекты, лежащие по одну сторону гиперплоскости, относятся к одному классу, по другую — к другому.

В отличие от метода опорных векторов, логистическая регрессия не максимизирует ширину разделяющей полосы. Вместо этого она подбирает параметры таким образом, чтобы максимизировать вероятность наблюдаемых данных.

Удалённость точки от разделяющей гиперплоскости определяется значением


w^\top x+b.

После применения сигмоиды это расстояние преобразуется в вероятность принадлежности положительному классу.

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

Схема «один против всех»

Наиболее простым способом является обучение


K

независимых бинарных классификаторов. Для каждого класса строится собственная модель, отличающая данный класс от всех остальных.

Для нового объекта вычисляются вероятности


P(y=k\mid x),
\quad
k=1,\ldots,K,

после чего выбирается класс с максимальной оценкой.

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

Мультиномиальная логистическая регрессия

Более естественным обобщением является мультиномиальная логистическая регрессия (multinomial logistic regression, softmax regression), в которой вероятности всех классов моделируются одновременно. :contentReference[oaicite:0]{index=0}

Каждому классу соответствует собственный вектор параметров


w_k.

Для объекта вычисляются линейные оценки


a_k(x)=w_k^\top x+b_k,

которые преобразуются в вероятности с помощью функции softmax:


P(y=k\mid x)=
\frac{\exp(a_k(x))}
{\sum\limits_{j=1}^{K}\exp(a_j(x))}.

Полученные вероятности обладают двумя важными свойствами:

  • принадлежат интервалу [0,1];
  • их сумма равна единице.

Как и в бинарном случае, параметры модели оцениваются методом максимального правдоподобия, а функция потерь представляет собой многоклассовую кросс-энтропию. :contentReference[oaicite:1]{index=1}

Достоинства

Логистическая регрессия остаётся одним из наиболее популярных методов классификации благодаря сочетанию простоты и высокой практической эффективности.

Основные достоинства метода:

  • вероятностная интерпретация результатов;
  • выпуклая задача оптимизации с единственным глобальным минимумом;
  • высокая скорость обучения и предсказания;
  • небольшое число настраиваемых гиперпараметров;
  • интерпретируемость коэффициентов модели;
  • возможность использования регуляризации и отбора признаков;
  • хорошая работа на выборках большого объёма и высокой размерности.

По этим причинам логистическая регрессия часто используется как базовый алгоритм при сравнении методов машинного обучения и как отправная точка при решении новых прикладных задач.

Ограничения

Несмотря на широкую область применения, логистическая регрессия имеет ряд ограничений.

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

Кроме того:

  • модель чувствительна к сильной мультиколлинеарности признаков;
  • качество зависит от выбора информативного признакового описания;
  • при наличии большого числа выбросов возможна деградация качества;
  • без построения новых признаков модель не способна описывать сложные нелинейные зависимости.

Для повышения качества нередко используют полиномиальные признаки, взаимодействия признаков или предварительные нелинейные преобразования данных.

Связь с другими методами

Логистическая регрессия занимает промежуточное положение между классическими статистическими моделями и современными алгоритмами машинного обучения.

По сравнению с линейной регрессией она использует вероятностную модель бинарной случайной величины и оптимизирует логарифмическое правдоподобие вместо среднеквадратичной ошибки.

По сравнению с методом опорных векторов логистическая регрессия непосредственно оценивает условные вероятности классов, тогда как SVM ориентирован на максимизацию разделяющего зазора и требует дополнительной калибровки для получения вероятностных оценок.

С точки зрения статистики логистическая регрессия является частным случаем обобщённых линейных моделей с биномиальным распределением отклика и логит-функцией связи.

Наконец, функция потерь логистической регрессии — кросс-энтропия — широко используется при обучении нейронных сетей. В этом смысле логистическая регрессия может рассматриваться как однослойная нейронная сеть без скрытых слоёв, использующая сигмоидную (или softmax) функцию активации на выходе.

См. также

Литература

  1. Bishop C. M. Pattern Recognition and Machine Learning. Springer, 2006.
  2. Hastie T., Tibshirani R., Friedman J. The Elements of Statistical Learning. 2nd ed. Springer, 2009.
  3. Murphy K. P. Machine Learning: A Probabilistic Perspective. MIT Press, 2012.
  4. McCullagh P., Nelder J. A. Generalized Linear Models. 2nd ed. Chapman & Hall, 1989.
  5. Hosmer D. W., Lemeshow S., Sturdivant R. X. Applied Logistic Regression. 3rd ed. Wiley, 2013.
  6. Cox D. R. The Regression Analysis of Binary Sequences. Journal of the Royal Statistical Society, Series B, 1958.
Личные инструменты