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

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

(Различия между версиями)
Перейти к: навигация, поиск
 
Строка 1: Строка 1:
-
= Логистическая регрессия =
+
{{TOCright}} Изначальная версия статьи
 +
'''Логистическая регрессия''' (Logistic regression) — метод построения [[Линейный классификатор|линейного классификатора]], позволяющий оценивать апостериорные вероятности принадлежности объектов классам.
-
Логистическая регрессия — это метод статистического обучения, используемый для решения задач классификации, в первую очередь бинарной. Метод относится к классу обобщённых линейных моделей (GLM) и основан на предположении, что логарифм отношения шансов (log-odds) является линейной функцией признаков.
+
== Определения ==
-
Логистическая регрессия широко применяется в задачах анализа данных, скоринга, медицины, обработки текста и других областях машинного обучения.
+
Пусть объекты описываются ''n'' числовыми признаками
 +
<tex>f_j:\: X\to\mathbb{R},\; j=1,\ldots,n</tex>.
 +
Тогда пространство признаковых описаний объектов есть <tex>X=\mathbb{R}^n</tex>.
 +
Пусть <tex>Y</tex> — конечное множество номеров (имён, меток) классов.
-
== 1. Определения ==
+
Пусть задана [[обучающая выборка]] пар «объект, ответ»
 +
<tex>X^m = \{(x_1,y_1),\dots,(x_m,y_m)\}</tex>.
-
Пусть задана обучающая выборка
+
=== Случай двух классов ===
-
<tex>X^m = \{(x_1,y_1),\dots,(x_m,y_m)\}</tex>, где
+
Положим <tex>Y=\{-1,+1\}</tex>.
-
<tex>x_i \in \mathbb{R}^d</tex> — вектор признаков,
+
В&nbsp;логистической регрессии строится линейный алгоритм классификации <tex>a:\; X\to Y</tex> вида
-
<tex>y_i \in \{0,1\}</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>.
-
Логистическая регрессия моделирует вероятность класса 1 как:
+
Задача обучения линейного классификатора заключается в том, чтобы по выборке
 +
<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>
+
После того, как решение <tex>w</tex> найдено,
-
P(y=1|x,w) = \sigma(w^T x) = \frac{1}{1 + \exp(-w^T x)}
+
становится возможным не только вычислять классификацию <tex>a(x) = \mathrm{sign}\langle x,w \rangle</tex>
-
</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>\sigma(\cdot)</tex> — сигмоидная функция.
+
== Обоснования ==
-
Функция правдоподобия выборки:
+
=== С точки зрения минимизации эмпирического риска ===
 +
Введём понятие ''[[отступ]]а'' (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>
+
=== С точки зрения байесовской классификации ===
-
L(w) = \prod_{i=1}^m P(y_i|x_i,w)
+
Наиболее строгое обоснование логистической регрессии опирается на следующую теорему.
-
</tex>
+
-
Логарифмическая функция потерь (log-loss):
+
'''Теорема.'''
 +
Пусть:
 +
* функции правдоподобия (плотности распределения) классов <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>.
-
<tex>
+
Тогда
-
Q(w) = - \sum_{i=1}^m \left[y_i \log p_i + (1-y_i)\log(1-p_i)\right]
+
* линейный классификатор является [[байесовский классификатор|оптимальным байесовским классификатором]];
-
</tex>
+
* апостериорные вероятности классов оценивается по формуле {{eqref|2}};
 +
* минимизация функционала {{eqref|1}} эквивалентна [[принцип максимума правдоподобия|максимизации правдоподобия]] выборки.
-
где <tex>p_i = P(y=1|x_i,w)</tex>.
+
Таким образом, оценки апостериорных вероятностей {{eqref|2}} являются точными
 +
только при довольно сильных теоретико-вероятностных предположениях.
 +
На&nbsp;практике гарантировать выполнение этих условий вряд&nbsp;ли возможно.
 +
Поэтому трактовать выходы сигмоидных функций как вероятности следует с&nbsp;большой осторожностью.
 +
На&nbsp;самом деле они дают лишь оценку удалённости объекта от&nbsp;границы классов,
 +
нормированную так, чтобы она принимала значения из&nbsp;отрезка&nbsp;<tex>[0,1]</tex>.
-
---
+
== Методы настройки весов ==
-
=== 1.1 Случай двух классов ===
+
=== Градиентный метод первого порядка ===
-
В бинарной классификации модель можно переписать через логарифм отношения шансов:
+
=== Метод второго порядка IRLS ===
 +
Метод Ньютона-Раффсона является градиентным методом оптимизации второго порядка.
 +
Его применение для минимизации {{eqref|1}} приводит к [[Метод наименьших квадратов с итеративным пересчетом весов|методу наименьших квадратов с итеративным пересчетом весов]] IRLS.
-
<tex>
+
== Связь с другими методами обучения ==
-
\log \frac{P(y=1|x)}{P(y=0|x)} = w^T x
+
* Логистическая регрессия является частным случаем [[Обобщённая линейная модель|обобщённой линейной модели]] регрессии.
-
</tex>
+
* На каждом шаге метода IRLS решается стандартная задача наименьших квадратов для многомерной линейной регрессии.
 +
* Градиентный метод минимизации первого порядка является сглаженным вариантом [[правило Хэбба|правила Хэбба]], предназначенного для обучения [[однослойный персептрон|однослойного персептрона]].
 +
* [[Линейный дискриминант Фишера]] (ЛДФ) и логистическая регрессия исходят из [[байесовский классификатор|байесовского решающего правила]] и принципа максимума правдоподобия, однако результат получается разный. В&nbsp;ЛДФ приходится оценивать <tex>n(n+1)/2</tex> параметров, в&nbsp;логистической регрессии — только&nbsp;<tex>n</tex>. ЛДФ решает вспомогательную задачу восстановления плотностей распределения классов, предполагая к&nbsp;тому&nbsp;же, что плотности нормальны. Логистическая регрессия не&nbsp;пытается восстанавливать плотности классов и&nbsp;опирается на&nbsp;более слабые предположения о&nbsp;виде плотностей. С&nbsp;точки зрения [[Бритва Оккама|принципа Оккама]] «не&nbsp;размножать сущности без необходимости» логистическая регрессия явно предпочтительнее, поскольку ЛДФ&nbsp;вводит избыточную сущность — плотности распределения классов, и&nbsp;сводит задачу классификации к&nbsp;более сложной задаче восстановления плотностей.
-
Это ключевая интерпретация логистической регрессии как линейной модели в пространстве лог-оддсов.
+
== Литература ==
 +
# ''Айвазян С. А., Бухштабер В. М., Енюков И. С., Мешалкин Л. Д.'' Прикладная статистика: классификация и снижение размерности. — М.: Финансы и статистика, 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. Обоснования ==
+
{{Stub}}
-
 
+
[[Категория:Линейные классификаторы]]
-
=== 2.1 С точки зрения минимизации эмпирического риска ===
+
[[Категория:Машинное обучение]]
-
 
+
[[Категория:Классификация]]
-
Логистическая регрессия возникает как решение задачи минимизации эмпирического риска:
+
[[Категория:Бинарные классификаторы]]
-
 
+
-
<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-модель.
+

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

Содержание

Изначальная версия статьи

Логистическая регрессия (Logistic regression) — метод построения линейного классификатора, позволяющий оценивать апостериорные вероятности принадлежности объектов классам.

Определения

Пусть объекты описываются n числовыми признаками f_j:\: X\to\mathbb{R},\; j=1,\ldots,n. Тогда пространство признаковых описаний объектов есть X=\mathbb{R}^n. Пусть Y — конечное множество номеров (имён, меток) классов.

Пусть задана обучающая выборка пар «объект, ответ» X^m = \{(x_1,y_1),\dots,(x_m,y_m)\}.

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

Положим Y=\{-1,+1\}. В логистической регрессии строится линейный алгоритм классификации a:\; X\to Y вида

a(x,w) = \mathrm{sign}\left( \sum_{j=1}^n w_j f_j(x) - w_0 \right) = \mathrm{sign}\langle x,w \rangle,

где w_j — вес j-го признака, w_0 — порог принятия решения, w=(w_0,w_1,\ldots,w_n) — вектор весов, \langle x,w \rangle — скалярное произведение признакового описания объекта на вектор весов. Предполагается, что искусственно введён «константный» нулевой признак: f_{0}(x)=-1.

Задача обучения линейного классификатора заключается в том, чтобы по выборке X^m настроить вектор весов w. В логистической регрессии для этого решается задача минимизации эмпирического риска с функцией потерь специального вида:

(1)
Q(w) = \sum_{i=1}^m \ln\left( 1 + \exp( -y_i \langle x_i,w \rangle ) \right) \to \min_{w}.

После того, как решение w найдено, становится возможным не только вычислять классификацию a(x) = \mathrm{sign}\langle x,w \rangle для произвольного объекта x, но и оценивать апостериорные вероятности его принадлежности классам:

(2)
\mathbb{P}\{y|x\} = \sigma\left( y \langle x,w \rangle\right),\;\; y\in Y,

где \sigma(z) = \frac1{1+e^{-z}}сигмоидная функция. Во многих приложениях апостериорные вероятности необходимы для оценивания рисков, связанных с возможными ошибками классификации.

Обоснования

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

Введём понятие отступа (margin) объекта

M(x_i) = y_i \langle x_i,w \rangle.

Отступ можно понимать как «степень погруженности» объекта в свой класс. Чем меньше значение отступа M(x_i), тем ближе объект подходит к границе классов. Отступ M(x_i) отрицателен тогда и только тогда, когда алгоритм a(x,w) допускает ошибку на объекте x_i. Число ошибок классификации можно записать через отступы:

Q_0(w) = \sum_{i=1}^m \bigl[ M(x_i) < 0 \bigr].

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

[M<0] \leq \log_2 \left( 1 + e^{-M} \right).

В результате такой замены и получается функционал (1).

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

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

Теорема. Пусть:

  • функции правдоподобия (плотности распределения) классов p_y(x) принадлежат экспонентному семейству плотностей p_y(x) = \exp \left( \langle\theta,x\rangle \cdot a(\delta) + b(\delta,\theta) + d(x,\delta) \right), где a,\, b\, d — произвольные функции;
  • функции правдоподобия имеют равные знаения параметра разброса \delta и отличаются только значениями параметра сдвига \theta_y;
  • среди признаков есть константа, скажем, f_0(x) = -1.

Тогда

Таким образом, оценки апостериорных вероятностей (2) являются точными только при довольно сильных теоретико-вероятностных предположениях. На практике гарантировать выполнение этих условий вряд ли возможно. Поэтому трактовать выходы сигмоидных функций как вероятности следует с большой осторожностью. На самом деле они дают лишь оценку удалённости объекта от границы классов, нормированную так, чтобы она принимала значения из отрезка [0,1].

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

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

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

Метод Ньютона-Раффсона является градиентным методом оптимизации второго порядка. Его применение для минимизации (1) приводит к методу наименьших квадратов с итеративным пересчетом весов IRLS.

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

  • Логистическая регрессия является частным случаем обобщённой линейной модели регрессии.
  • На каждом шаге метода IRLS решается стандартная задача наименьших квадратов для многомерной линейной регрессии.
  • Градиентный метод минимизации первого порядка является сглаженным вариантом правила Хэбба, предназначенного для обучения однослойного персептрона.
  • Линейный дискриминант Фишера (ЛДФ) и логистическая регрессия исходят из байесовского решающего правила и принципа максимума правдоподобия, однако результат получается разный. В ЛДФ приходится оценивать n(n+1)/2 параметров, в логистической регрессии — только n. ЛДФ решает вспомогательную задачу восстановления плотностей распределения классов, предполагая к тому же, что плотности нормальны. Логистическая регрессия не пытается восстанавливать плотности классов и опирается на более слабые предположения о виде плотностей. С точки зрения принципа Оккама «не размножать сущности без необходимости» логистическая регрессия явно предпочтительнее, поскольку ЛДФ вводит избыточную сущность — плотности распределения классов, и сводит задачу классификации к более сложной задаче восстановления плотностей.

Литература

  1. Айвазян С. А., Бухштабер В. М., Енюков И. С., Мешалкин Л. Д. Прикладная статистика: классификация и снижение размерности. — М.: Финансы и статистика, 1989.
  2. Hastie, T., Tibshirani, R., Friedman, J. The Elements of Statistical Learning, 2nd edition. — Springer, 2009. — 533 p.  (подробнее)
  3. David W. Hosmer, Stanley Lemeshow. Applied Logistic Regression, 2nd ed. New York, Chichester, Wiley. 2002. 392 P. ISBN 0-471-35632-8.

Ссылки

  1. Машинное обучение (курс лекций, К.В.Воронцов)
  2. Логистическая регрессия (пример)
Личные инструменты