Логистическая регрессия: вычисление вероятности с помощью сигмовидной функции

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

  • Применяется «как есть». Например, если модель прогнозирования спама принимает электронное письмо в качестве входных данных и возвращает значение 0.932 , это означает 93.2% вероятность того, что электронное письмо является спамом.

  • Преобразуется в бинарную категорию , например True или False , Spam или Not Spam .

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

Сигмовидная функция

Вам может быть интересно, как модель логистической регрессии может гарантировать, что её выходной сигнал представляет собой вероятность, всегда выдавая значение от 0 до 1. Как оказалось, существует семейство функций, называемых логистическими функциями , выходной сигнал которых обладает теми же характеристиками. Стандартная логистическая функция, также известная как сигмоидальная функция ( сигмоид означает «s-образный»), имеет формулу:

\[f(x) = \frac{1}{1 + e^{-x}}\]

где:

  • f(x) — выход сигмоидальной функции.
  • eчисло Эйлера : математическая константа ≈ 2,71828.
  • x — входные данные сигмоидальной функции.

На рисунке 1 показан соответствующий график сигмоидальной функции.

Сигмовидная (S-образная) кривая, построенная на декартовой системе координат с центром в начале координат.
Рисунок 1. График сигмоидальной функции. Кривая стремится к 0 при уменьшении значений x до отрицательной бесконечности и к 1 при увеличении значений x до бесконечности.

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

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

В таблице ниже показаны выходные значения сигмовидной функции для входных значений в диапазоне от –7 до 7. Обратите внимание, как быстро сигмоида приближается к 0 при уменьшении отрицательных входных значений и как быстро сигмоида приближается к 1 при увеличении положительных входных значений.

Однако независимо от того, насколько велико или мало входное значение, выходное значение всегда будет больше 0 и меньше 1.

Вход Сигмовидный выход
-7 0,001
-6 0,002
-5 0,007
-4 0,018
-3 0,047
-2 0,119
-1 0,269
0 0,50
1 0,731
2 0,881
3 0,952
4 0,982
5 0,993
6 0,997
7 0,999

Преобразование линейного вывода с использованием сигмоидальной функции

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

\[z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N\]

где:

  • z — это выход линейного уравнения, также называемый логарифмом шансов .
  • b — смещение.
  • Значения w представляют собой изученные веса модели.
  • Значения x представляют собой значения характеристик для конкретного примера.

Чтобы получить прогноз логистической регрессии, значение z затем передается в сигмоидальную функцию, что дает значение (вероятность) между 0 и 1:

\[y' = \frac{1}{1 + e^{-z}}\]

где:

  • y' — выход модели логистической регрессии.
  • eчисло Эйлера : математическая константа ≈ 2,71828.
  • z — линейный выход (рассчитанный в предыдущем уравнении).

Нажмите здесь, чтобы узнать больше о логарифмических коэффициентах

В уравнении $z = b + w_1x_1 + w_2x_2 + \ldots + w_Nx_N$, z называется логарифмом шансов , потому что если начать со следующей сигмоидальной функции (где $y$ — это выход модели логистической регрессии, представляющий вероятность):

$$y = \frac{1}{1 + e^{-z}}$$

И затем решаем относительно z :

$$ z = \log\left(\frac{y}{1-y}\right) $$

Тогда z определяется как логарифм отношения вероятностей двух возможных исходов: y и 1 – y .

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

Слева: линия с выделенными точками (-7,5, –10), (-2,5, 0) и (0, 5). Справа: сигмовидная кривая с выделенными соответствующими преобразованными точками (-10, 0,00004), (0, 0,5) и (5, 0,9933).
Рисунок 2. Слева: график линейной функции z = 2x + 5 с тремя выделенными точками. Справа: сигмовидная кривая с теми же тремя выделенными точками после преобразования сигмовидной функцией.

На рисунке 2 линейное уравнение становится входными данными для сигмоидальной функции, которая изгибает прямую линию, придавая ей S-образную форму. Обратите внимание, что линейное уравнение может выдавать как очень большие, так и очень малые значения z, но выход сигмоидальной функции y' всегда находится в диапазоне от 0 до 1, исключая это значение. Например, жёлтый квадрат на левом графике имеет значение z, равное –10, но сигмоидальная функция на правом графике преобразует это –10 в значение y', равное 0,00004.

Упражнение: проверьте свое понимание

Модель логистической регрессии с тремя характеристиками имеет следующие смещения и веса:

\[\begin{align} b &= 1 \\ w_1 &= 2 \\ w_2 &= -1 \\ w_3 &= 5 \end{align} \]

Даны следующие входные значения:

\[\begin{align} x_1 &= 0 \\ x_2 &= 10 \\ x_3 &= 2 \end{align} \]

Ответьте на следующие два вопроса.

1. Каково значение z для этих входных значений?
–1
0
0,731
1
Верно! Линейное уравнение, определяемое весами и смещением, выглядит так: z = 1 + 2x 1 – x 2 + 5 x 3. Подстановка входных значений в уравнение даёт z = 1 + (2)(0) - (10) + (5)(2) = 1.
2. Каков прогноз логистической регрессии для этих входных значений?
0,268
0,5
0,731

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

\(y = \frac{1}{1 + e^{-z}} = \frac{1}{1 + e^{-1}} = \frac{1}{1 + 0.367} = \frac{1}{1.367} = 0.731\)

1
Помните, что выход сигмоидальной функции всегда будет больше 0 и меньше 1.