Для багатьох завдань потрібна оцінка ймовірності як вихідного значення. Логістична регресія – надзвичайно ефективний механізм для обчислення ймовірностей. На практиці ви можете використовувати отриману ймовірність одним із двох способів.
Застосувати без змін. Наприклад, якщо модель прогнозування спаму отримує як вхідні дані електронний лист і виводить значення
0.932
, це означає, що ймовірність того, що цей лист – спам, становить93.2%
.Конвертувати у двійкові значення, наприклад
True
йFalse
,Spam
іNot Spam
.
Цей модуль присвячено використанню вихідних значень моделі логістичної регресії без змін. У модулі Класифікація ви дізнаєтеся, як конвертувати ці вихідні значення у двійкові.
Сигмоїдна функція
Вам може бути цікаво, чому вихідні значення моделі логістичної регресії гарантовано відображають імовірність, завжди повертаючи число між 0 і 1. Так склалося, що існує сімейство функцій під назвою логістичні функції, вихідні значення яких мають ті самі характеристики. Стандартна логістична функція, також відома як сигмоїдна функція (сигмоїдна означає "s-подібна"), має таку формулу:
\[f(x) = \frac{1}{1 + e^{-x}}\]
На рисунку 1 показано відповідний графік сигмоїдної функції.
Зі збільшенням вхідних чисел 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' – вихідні значення моделі логістичної регресії;
- 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 показано, як за допомогою цих розрахунків лінійні вихідні значення перетворюються на вихідні дані моделі логістичної регресії.
На рисунку 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 вище, ви вже дізналися, логарифмічні шанси, розраховані на основі вхідних значень, дорівнюють 1. Підставляємо значення для z у сигмоїдну функцію:
\(y = \frac{1}{1 + e^{-z}} = \frac{1}{1 + e^{-1}} = \frac{1}{1 + 0.367} = \frac{1}{1.367} = 0.731\)