Обсуждение:Логистическая регрессия

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

(Различия между версиями)
Перейти к: навигация, поиск
(Изначальная версия статьи: Новая тема)
Строка 1: Строка 1:
-
Возможно стоит так же описать функционал для оптимизации, который возникает при использовании метода наибольшего правдоподобия?
+
= Логистическая регрессия =
-
: Михаил, да, согласен, был вы Вам признателен. --[[Участник:Strijov|Strijov]] 00:39, 2 марта 2015 (MSK)
+
-
== Изначальная версия статьи ==
+
Логистическая регрессия — это метод статистического обучения, используемый для решения задач классификации, в первую очередь бинарной. Метод относится к классу обобщённых линейных моделей (GLM) и основан на предположении, что логарифм отношения шансов (log-odds) является линейной функцией признаков.
-
{{TOCright}}
+
Логистическая регрессия широко применяется в задачах анализа данных, скоринга, медицины, обработки текста и других областях машинного обучения.
-
'''Логистическая регрессия''' (Logistic regression) — метод построения [[Линейный классификатор|линейного классификатора]], позволяющий оценивать апостериорные вероятности принадлежности объектов классам.
+
-
== Определения ==
+
== 1. Определения ==
-
Пусть объекты описываются ''n'' числовыми признаками
+
Пусть задана обучающая выборка
-
<tex>f_j:\: X\to\mathbb{R},\; j=1,\ldots,n</tex>.
+
<tex>X^m = \{(x_1,y_1),\dots,(x_m,y_m)\}</tex>, где
-
Тогда пространство признаковых описаний объектов есть <tex>X=\mathbb{R}^n</tex>.
+
<tex>x_i \in \mathbb{R}^d</tex> — вектор признаков,
-
Пусть <tex>Y</tex> — конечное множество номеров (имён, меток) классов.
+
<tex>y_i \in \{0,1\}</tex> — метка класса.
-
Пусть задана [[обучающая выборка]] пар «объект, ответ»
+
Логистическая регрессия моделирует вероятность класса 1 как:
-
<tex>X^m = \{(x_1,y_1),\dots,(x_m,y_m)\}</tex>.
+
-
=== Случай двух классов ===
+
<tex>
-
Положим <tex>Y=\{-1,+1\}</tex>.
+
P(y=1|x,w) = \sigma(w^T x) = \frac{1}{1 + \exp(-w^T x)}
-
В&nbsp;логистической регрессии строится линейный алгоритм классификации <tex>a:\; X\to Y</tex> вида
+
</tex>
-
::<tex>a(x,w) = \mathrm{sign}\left( \sum_{j=1}^n w_j f_j(x) - w_0 \right) = \mathrm{sign}\langle x,w \rangle,</tex>
+
-
где
+
-
<tex>w_j</tex> — вес <tex>j</tex>-го признака,
+
-
<tex>w_0</tex> — порог принятия решения,
+
-
<tex>w=(w_0,w_1,\ldots,w_n)</tex> — вектор весов,
+
-
<tex>\langle x,w \rangle</tex> — скалярное произведение признакового описания объекта на вектор весов.
+
-
Предполагается, что искусственно введён «константный» нулевой признак: <tex>f_{0}(x)=-1</tex>.
+
-
Задача обучения линейного классификатора заключается в том, чтобы по выборке
+
где <tex>\sigma(\cdot)</tex> — сигмоидная функция.
-
<tex>X^m</tex>
+
-
настроить вектор весов <tex>w</tex>.
+
-
В&nbsp;логистической регрессии для этого решается задача [[минимизация эмпирического риска|минимизации эмпирического риска]] с&nbsp;функцией потерь специального вида:
+
-
{{eqno|1}}
+
-
::<tex>Q(w) = \sum_{i=1}^m \ln\left( 1 + \exp( -y_i \langle x_i,w \rangle ) \right) \to \min_{w}.</tex>
+
-
После того, как решение <tex>w</tex> найдено,
+
Функция правдоподобия выборки:
-
становится возможным не только вычислять классификацию <tex>a(x) = \mathrm{sign}\langle x,w \rangle</tex>
+
-
для произвольного объекта <tex>x</tex>,
+
-
но и оценивать апостериорные вероятности его принадлежности классам:
+
-
{{eqno|2}}
+
-
::<tex>\mathbb{P}\{y|x\} = \sigma\left( y \langle x,w \rangle\right),\;\; y\in Y,</tex>
+
-
где <tex>\sigma(z) = \frac1{1+e^{-z}}</tex> — [[сигмоидная функция]].
+
-
Во многих приложениях апостериорные вероятности необходимы для оценивания рисков,
+
-
связанных с возможными ошибками классификации.
+
-
== Обоснования ==
+
<tex>
 +
L(w) = \prod_{i=1}^m P(y_i|x_i,w)
 +
</tex>
-
=== С точки зрения минимизации эмпирического риска ===
+
Логарифмическая функция потерь (log-loss):
-
Введём понятие ''[[отступ]]а'' (margin) объекта
+
-
::<tex>M(x_i) = y_i \langle x_i,w \rangle.</tex>
+
-
Отступ можно понимать как «степень погруженности» объекта в свой класс.
+
-
Чем меньше значение отступа <tex>M(x_i)</tex>, тем ближе объект подходит к границе классов.
+
-
Отступ <tex>M(x_i)</tex> отрицателен тогда и только тогда, когда
+
-
алгоритм <tex>a(x,w)</tex> допускает ошибку на объекте&nbsp;<tex>x_i</tex>.
+
-
Число ошибок классификации можно записать через отступы:
+
-
::<tex>Q_0(w) = \sum_{i=1}^m \bigl[ M(x_i) < 0 \bigr].</tex>
+
-
Под знаком суммы стоит пороговая функция потерь,
+
-
поэтому данный функционал не является ни выпуклым, ни даже непрерывным,
+
-
и минимизировать его неудобно.
+
-
Идея заключается в том, чтобы заменить пороговую функцию потерь непрерывной оценкой сверху:
+
-
::<tex>[M<0] \leq \log_2 \left( 1 + e^{-M} \right).</tex>
+
-
В результате такой замены и получается функционал {{eqref|1}}.
+
-
=== С точки зрения байесовской классификации ===
+
<tex>
-
Наиболее строгое обоснование логистической регрессии опирается на следующую теорему.
+
Q(w) = - \sum_{i=1}^m \left[y_i \log p_i + (1-y_i)\log(1-p_i)\right]
 +
</tex>
-
'''Теорема.'''
+
где <tex>p_i = P(y=1|x_i,w)</tex>.
-
Пусть:
+
-
* функции правдоподобия (плотности распределения) классов <tex>p_y(x)</tex> принадлежат [[экспонентное семейство плотностей|экспонентному семейству плотностей]] <tex>p_y(x) = \exp \left( \langle\theta,x\rangle \cdot a(\delta) + b(\delta,\theta) + d(x,\delta) \right),</tex> где <tex>a,\, b\, d</tex> — произвольные функции;
+
-
* функции правдоподобия имеют равные знаения ''параметра разброса'' <tex>\delta</tex> и отличаются только значениями ''параметра сдвига'' <tex>\theta_y</tex>;
+
-
* среди признаков есть константа, скажем, <tex>f_0(x) = -1</tex>.
+
-
Тогда
+
---
-
* линейный классификатор является [[байесовский классификатор|оптимальным байесовским классификатором]];
+
-
* апостериорные вероятности классов оценивается по формуле {{eqref|2}};
+
-
* минимизация функционала {{eqref|1}} эквивалентна [[принцип максимума правдоподобия|максимизации правдоподобия]] выборки.
+
-
Таким образом, оценки апостериорных вероятностей {{eqref|2}} являются точными
+
=== 1.1 Случай двух классов ===
-
только при довольно сильных теоретико-вероятностных предположениях.
+
-
На&nbsp;практике гарантировать выполнение этих условий вряд&nbsp;ли возможно.
+
-
Поэтому трактовать выходы сигмоидных функций как вероятности следует с&nbsp;большой осторожностью.
+
-
На&nbsp;самом деле они дают лишь оценку удалённости объекта от&nbsp;границы классов,
+
-
нормированную так, чтобы она принимала значения из&nbsp;отрезка&nbsp;<tex>[0,1]</tex>.
+
-
== Методы настройки весов ==
+
В бинарной классификации модель можно переписать через логарифм отношения шансов:
-
=== Градиентный метод первого порядка ===
+
<tex>
 +
\log \frac{P(y=1|x)}{P(y=0|x)} = w^T x
 +
</tex>
-
=== Метод второго порядка IRLS ===
+
Это ключевая интерпретация логистической регрессии как линейной модели в пространстве лог-оддсов.
-
Метод Ньютона-Раффсона является градиентным методом оптимизации второго порядка.
+
-
Его применение для минимизации {{eqref|1}} приводит к [[Метод наименьших квадратов с итеративным пересчетом весов|методу наименьших квадратов с итеративным пересчетом весов]] IRLS.
+
-
== Связь с другими методами обучения ==
+
---
-
* Логистическая регрессия является частным случаем [[Обобщённая линейная модель|обобщённой линейной модели]] регрессии.
+
-
* На каждом шаге метода IRLS решается стандартная задача наименьших квадратов для многомерной линейной регрессии.
+
-
* Градиентный метод минимизации первого порядка является сглаженным вариантом [[правило Хэбба|правила Хэбба]], предназначенного для обучения [[однослойный персептрон|однослойного персептрона]].
+
-
* [[Линейный дискриминант Фишера]] (ЛДФ) и логистическая регрессия исходят из [[байесовский классификатор|байесовского решающего правила]] и принципа максимума правдоподобия, однако результат получается разный. В&nbsp;ЛДФ приходится оценивать <tex>n(n+1)/2</tex> параметров, в&nbsp;логистической регрессии — только&nbsp;<tex>n</tex>. ЛДФ решает вспомогательную задачу восстановления плотностей распределения классов, предполагая к&nbsp;тому&nbsp;же, что плотности нормальны. Логистическая регрессия не&nbsp;пытается восстанавливать плотности классов и&nbsp;опирается на&nbsp;более слабые предположения о&nbsp;виде плотностей. С&nbsp;точки зрения [[Бритва Оккама|принципа Оккама]] «не&nbsp;размножать сущности без необходимости» логистическая регрессия явно предпочтительнее, поскольку ЛДФ&nbsp;вводит избыточную сущность — плотности распределения классов, и&nbsp;сводит задачу классификации к&nbsp;более сложной задаче восстановления плотностей.
+
-
== Литература ==
+
== 2. Обоснования ==
-
# ''Айвазян С. А., Бухштабер В. М., Енюков И. С., Мешалкин Л. Д.'' Прикладная статистика: классификация и снижение размерности. — М.: Финансы и статистика, 1989.
+
-
# {{П:Hastie 2001 The Elements of Statistical Learning}}
+
-
# ''David W. Hosmer'', ''Stanley Lemeshow''. [http://eu.wiley.com/WileyCDA/WileyTitle/productCd-0471356328.html Applied Logistic Regression], 2nd ed. New York, Chichester, Wiley. 2002. 392 P. ISBN 0-471-35632-8.
+
-
== Ссылки ==
+
=== 2.1 С точки зрения минимизации эмпирического риска ===
-
# [[Машинное обучение (курс лекций, К.В.Воронцов)]]
+
-
# [[Логистическая регрессия (пример)]]
+
-
{{Stub}}
+
Логистическая регрессия возникает как решение задачи минимизации эмпирического риска:
-
[[Категория:Линейные классификаторы]]
+
 
-
[[Категория:Машинное обучение]]
+
<tex>
-
[[Категория:Классификация]]
+
\min_w \sum_{i=1}^m \ell(y_i, w^T x_i)
-
[[Категория:Бинарные классификаторы]]
+
</tex>
 +
 
 +
где логистическая функция потерь:
 +
 
 +
<tex>
 +
\ell(y, z) = \log(1 + \exp(-y z)), \quad y \in \{-1,1\}
 +
</tex>
 +
 
 +
Эта функция является гладкой верхней оценкой 0–1 потерь.
 +
 
 +
---
 +
 
 +
=== 2.2 С точки зрения байесовской классификации ===
 +
 
 +
В байесовском подходе предполагается, что классы порождаются вероятностной моделью:
 +
 
 +
<tex>
 +
P(y|x) = \text{Bernoulli}(\sigma(w^T x))
 +
</tex>
 +
 
 +
Оценка параметров получается методом максимального правдоподобия.
 +
 
 +
Регуляризация соответствует априорному распределению на веса (например, гауссовскому), что приводит к MAP-оценке.
 +
 
 +
(см. также обобщённые линейные модели в учебных материалах Воронцова) :contentReference[oaicite:0]{index=0}
 +
 
 +
---
 +
 
 +
== 3. Методы настройки весов ==
 +
 
 +
=== 3.1 Градиентный метод первого порядка ===
 +
 
 +
Градиент функции потерь:
 +
 
 +
<tex>
 +
\nabla Q(w) = \sum_{i=1}^m (p_i - y_i)x_i
 +
</tex>
 +
 
 +
Обновление параметров:
 +
 
 +
<tex>
 +
w^{t+1} = w^t - \eta \nabla Q(w^t)
 +
</tex>
 +
 
 +
Используется стохастический градиентный спуск (SGD) для больших выборок.
 +
 
 +
---
 +
 
 +
=== 3.2 Метод второго порядка IRLS ===
 +
 
 +
Метод IRLS (Iteratively Reweighted Least Squares) основан на приближении Ньютона:
 +
 
 +
<tex>
 +
w^{t+1} = w^t - H^{-1} \nabla Q(w)
 +
</tex>
 +
 
 +
где H — гессиан функции потерь.
 +
 
 +
IRLS интерпретируется как последовательность взвешенных задач наименьших квадратов.
 +
 
 +
---
 +
 
 +
== 4. Геометрическая интерпретация (добавлено) ==
 +
 
 +
Логистическая регрессия строит **линейную разделяющую гиперплоскость**:
 +
 
 +
<tex>
 +
w^T x = 0
 +
</tex>
 +
 
 +
- расстояние до гиперплоскости определяет уверенность классификации
 +
- знак <tex>w^T x</tex> определяет класс
 +
- модуль значения связан с вероятностью
 +
 
 +
Вероятность:
 +
 
 +
<tex>
 +
P(y=1|x) \approx 1 \text{ при } w^T x \gg 0,\quad
 +
P(y=1|x) \approx 0 \text{ при } w^T x \ll 0
 +
</tex>
 +
 
 +
Таким образом модель является **линейным классификатором с вероятностной интерпретацией**.
 +
 
 +
---
 +
 
 +
== 5. Многоклассовая логистическая регрессия (добавлено) ==
 +
 
 +
Для <tex>K</tex> классов используется softmax-модель:
 +
 
 +
<tex>
 +
P(y=k|x) = \frac{\exp(w_k^T x)}{\sum_{j=1}^K \exp(w_j^T x)}
 +
</tex>
 +
 
 +
Функция потерь:
 +
 
 +
<tex>
 +
Q(W) = - \sum_{i=1}^m \log P(y_i|x_i)
 +
</tex>
 +
 
 +
Многоклассовая логистическая регрессия эквивалентна:
 +
- обобщению бинарной модели
 +
- частному случаю multinomial GLM
 +
 
 +
---
 +
 
 +
== 6. Связь с другими методами обучения ==
 +
 
 +
Логистическая регрессия связана с:
 +
 
 +
* [[Линейные модели]]
 +
* [[Метод максимального правдоподобия]]
 +
* [[Обобщённые линейные модели]]
 +
* [[SVM]] (через различие функций потерь: log-loss vs hinge loss)
 +
* [[Нейронные сети]] (один слой softmax = логистическая регрессия)
 +
 
 +
Также существует связь с регуляризацией:
 +
- L2-регуляризация ↔ гауссовский приор
 +
- L1-регуляризация ↔ разреженность (аналог Lasso)
 +
 
 +
---
 +
 
 +
== 7. Литература ==
 +
 
 +
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
 +
* https://en.wikipedia.org/wiki/Logistic_regression — обзор метода
 +
* https://www.cs.cmu.edu/~tom/mlbook.html — Mitchell, Machine Learning
 +
 
 +
---
 +
 
 +
== 9. Заключение ==
 +
 
 +
Логистическая регрессия — один из базовых и наиболее интерпретируемых методов машинного обучения. Несмотря на простоту, метод остаётся конкурентоспособным в задачах с табличными данными и часто используется как baseline-модель.

Версия 15:08, 1 июля 2026

Содержание

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

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

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

1. Определения

Пусть задана обучающая выборка X^m = \{(x_1,y_1),\dots,(x_m,y_m)\}, где x_i \in \mathbb{R}^d — вектор признаков, y_i \in \{0,1\} — метка класса.

Логистическая регрессия моделирует вероятность класса 1 как:


P(y=1|x,w) = \sigma(w^T x) = \frac{1}{1 + \exp(-w^T x)}

где \sigma(\cdot) — сигмоидная функция.

Функция правдоподобия выборки:


L(w) = \prod_{i=1}^m P(y_i|x_i,w)

Логарифмическая функция потерь (log-loss):


Q(w) = - \sum_{i=1}^m \left[y_i \log p_i + (1-y_i)\log(1-p_i)\right]

где p_i = P(y=1|x_i,w).

---

1.1 Случай двух классов

В бинарной классификации модель можно переписать через логарифм отношения шансов:


\log \frac{P(y=1|x)}{P(y=0|x)} = w^T x

Это ключевая интерпретация логистической регрессии как линейной модели в пространстве лог-оддсов.

---

2. Обоснования

2.1 С точки зрения минимизации эмпирического риска

Логистическая регрессия возникает как решение задачи минимизации эмпирического риска:


\min_w \sum_{i=1}^m \ell(y_i, w^T x_i)

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


\ell(y, z) = \log(1 + \exp(-y z)), \quad y \in \{-1,1\}

Эта функция является гладкой верхней оценкой 0–1 потерь.

---

2.2 С точки зрения байесовской классификации

В байесовском подходе предполагается, что классы порождаются вероятностной моделью:


P(y|x) = \text{Bernoulli}(\sigma(w^T x))

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

Регуляризация соответствует априорному распределению на веса (например, гауссовскому), что приводит к MAP-оценке.

(см. также обобщённые линейные модели в учебных материалах Воронцова) :contentReference[oaicite:0]{index=0}

---

3. Методы настройки весов

3.1 Градиентный метод первого порядка

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


\nabla Q(w) = \sum_{i=1}^m (p_i - y_i)x_i

Обновление параметров:


w^{t+1} = w^t - \eta \nabla Q(w^t)

Используется стохастический градиентный спуск (SGD) для больших выборок.

---

3.2 Метод второго порядка IRLS

Метод IRLS (Iteratively Reweighted Least Squares) основан на приближении Ньютона:


w^{t+1} = w^t - H^{-1} \nabla Q(w)

где H — гессиан функции потерь.

IRLS интерпретируется как последовательность взвешенных задач наименьших квадратов.

---

4. Геометрическая интерпретация (добавлено)

Логистическая регрессия строит **линейную разделяющую гиперплоскость**:


w^T x = 0

- расстояние до гиперплоскости определяет уверенность классификации - знак w^T x определяет класс - модуль значения связан с вероятностью

Вероятность:


P(y=1|x) \approx 1 \text{ при } w^T x \gg 0,\quad
P(y=1|x) \approx 0 \text{ при } w^T x \ll 0

Таким образом модель является **линейным классификатором с вероятностной интерпретацией**.

---

5. Многоклассовая логистическая регрессия (добавлено)

Для K классов используется softmax-модель:


P(y=k|x) = \frac{\exp(w_k^T x)}{\sum_{j=1}^K \exp(w_j^T x)}

Функция потерь:


Q(W) = - \sum_{i=1}^m \log P(y_i|x_i)

Многоклассовая логистическая регрессия эквивалентна: - обобщению бинарной модели - частному случаю multinomial GLM

---

6. Связь с другими методами обучения

Логистическая регрессия связана с:

Также существует связь с регуляризацией: - L2-регуляризация ↔ гауссовский приор - L1-регуляризация ↔ разреженность (аналог Lasso)

---

7. Литература

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. Ссылки

---

9. Заключение

Логистическая регрессия — один из базовых и наиболее интерпретируемых методов машинного обучения. Несмотря на простоту, метод остаётся конкурентоспособным в задачах с табличными данными и часто используется как baseline-модель.