Чи справді логістична регресія є алгоритмом регресії?


11

Звичайне визначення регресії (наскільки мені відомо) передбачає безперервну змінну виводу з заданого набору вхідних змінних .

Логістична регресія - це алгоритм бінарної класифікації, тому він дає категоричний вихід.

Це справді алгоритм регресії? Якщо так, то чому?

Відповіді:


23

Логістична регресія - це насамперед регресія. Він стає класифікатором, додаючи правило рішення. Наведу приклад, який йде назад. Тобто, замість того, щоб брати дані та підходити до моделі, я розпочну з моделі, щоб показати, як це справді проблема регресії.

При логістичній регресії ми моделюємо коефіцієнти журналу або logit, що відбувається подія, яка є постійною величиною. Якщо ймовірність виникнення події дорівнює P ( A ) , шанси:АП(А)

П(А)1-П(А)

Коефіцієнти журналу такі:

журнал(П(А)1-П(А))

Як і в лінійній регресії, ми моделюємо це за допомогою лінійної комбінації коефіцієнтів і предикторів:

logit=б0+б1х1+б2х2+

Уявіть, нам дають модель того, чи має людина сиве волосся. Наша модель використовує вік як єдиний прогноктор. Ось наша подія A = людина має сиве волосся:

шанси на сиве волосся = -10 + 0,25 * вік

... Регресія! Ось код Python та сюжет:

%matplotlib inline
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns

x = np.linspace(0, 100, 100)

def log_odds(x):
    return -10 + .25 * x

plt.plot(x, log_odds(x))
plt.xlabel("age")
plt.ylabel("log odds of gray hair")

графік шансів колоди для нашого прикладу іграшок

Тепер давайте зробимо його класифікатором. Спочатку нам потрібно перетворити коефіцієнти журналу, щоб отримати нашу ймовірність . Ми можемо використовувати сигмоїдну функцію:П(А)

П(А)=11+досвід(-коефіцієнти журналу))

Ось код:

plt.plot(x, 1 / (1 + np.exp(-log_odds(x))))
plt.xlabel("age")
plt.ylabel("probability of gray hair")

сюжет вірогідності сивини для нашого іграшкового прикладу

Останнє, що нам потрібно зробити для цього класифікатором, - це додати правило рішення. Одне дуже поширене правило - класифікувати успіх кожного разу, коли . Ми приймемо це правило, яке означає, що наш класифікатор передбачить сивину кожного разу, коли людині старше 40 років, і передбачить несиве волосся, коли людині буде молодше 40 років.П(А)>0,5

Логістична регресія чудово працює як класифікатор і в більш реалістичних прикладах, але перш ніж вона може бути класифікатором, вона повинна бути регресійною технікою!


Хоча на практиці люди використовують логістичну регресію як синонім логістичної регресії + двійковий класифікатор.
jinawee

10

Коротка відповідь

Так, логістична регресія - це алгоритм регресії, і він прогнозує постійний результат: вірогідність події. Те, що ми використовуємо його як двійковий класифікатор, пояснюється інтерпретацією результату.

Деталь

Логістична регресія - це тип узагальнюючої лінійної регресійної моделі.

У звичайній лінійній регресійній моделі безперервний результат yмоделюється як сума добутку предикторів та їх ефект:

y = b_0 + b_1 * x_1 + b_2 * x_2 + ... b_n * x_n + e

де eпомилка.

Узагальнені лінійні моделі не моделюються yбезпосередньо. Натомість вони використовують перетворення для розширення області yдо всіх реальних чисел. Це перетворення називається функцією зв'язку. Для логістичної регресії функцією зв'язку є функція logit (зазвичай, див. Примітку нижче).

Функція logit визначається як

ln(y/(1 + y))

Таким чином, форма логістичної регресії є:

ln(y/(1 + y)) = b_0 + b_1 * x_1 + b_2 * x_2 + ... b_n * x_n + e

де yймовірність події.

Те, що ми використовуємо його як двійковий класифікатор, пояснюється інтерпретацією результату.

Примітка: probit - це ще одна функція зв'язку, яка використовується для логістичної регресії, але logit є найбільш широко використовуваною.


1

Під час обговорення визначення регресії передбачає безперервну змінну. Логістична регресія - це двійковий класифікатор. Логістична регресія - це застосування функції logit на виході звичайного регресійного підходу. Функція Logit перетворюється (-inf, + inf) до [0,1]. Я думаю, що саме з історичних причин це ім'я зберігається.

Говорячи щось на кшталт "Я зробив певну регресію для класифікації зображень. Зокрема, я використовував логістичну регресію". неправильно.


2
Логістична регресія може використовуватися як двійковий класифікатор, але вона по суті не є. Ви можете використовувати його для оцінювання шансів чи визначення взаємозв'язку змінної прогнозувальника до результату.
МетБагг

0

ff:ХRП(Y=1|λ,х)=11+е-λТх[0,1]λхсiгн(П(Y=1|λ,х))

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.