Вступ Логістична регресія в R

Логістична регресія в R також відома як проблеми бінарної класифікації. Вони використовуються для прогнозування результату як (1 або 0 або так / ні) для незалежної змінної. Для розуміння логістичної регресії в R важливо знати основну лінійну регресію, яка працює зі змінною безперервного результату. Більш конкретно можна сказати, що це розширення лінійної регресії. У цій статті ми обговоримо різні методи, що використовуються для розрахунку моделі та оцінки. Логістична регресія використовується для вирішення класифікаційних задач у машинному навчанні.

Як працює логістична регресія в R?

Логістична регресія - це техніка, що використовується в області статистики, яка вимірює різницю між залежною та незалежною змінною з настановою логістичної функції шляхом оцінки різного виникнення ймовірностей. Вони можуть бути або двочленними (має "так" або "немає"), або мультиноміальними ("Справедливий" проти "погано дуже поганий") Значення ймовірності лежать між 0 і 1, а змінна повинна бути додатною (<1). Він націлений на залежну змінну і має виконати наступні кроки:

  1. n - немає.фіксованих випробувань на взятому наборі даних
  2. з двома результатами випробування
  3. результат ймовірності повинен бути незалежним один від одного
  4. Імовірність успіху та невдач повинна бути однаковою для кожного випробування.

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

Робочі кроки:

Робочі кроки щодо логістичної регресії дотримуються певних елементів терміну, як-от

  • Моделювання ймовірності або проведення оцінки ймовірності
  • передбачення
  • Ініціалізація порогового значення (висока або низька специфічність)
  • Матриця плутанини
  • Площа побудови графіку під кривою (AUC)

Приклади

Нижче наведено приклад логістичної регресії в R:

Завантаження даних:

Встановлення пакету ISLR.

вимагати (ISLR)

Завантаження необхідного пакету: ISLR

У цій статті ми будемо використовувати набір даних "Щотижня" в RStudio. Набір даних передбачає підсумкові відомості про тижневі акції з 1990 по 2010 рік.

вимагати (ISLR)

імена (ОВ)

Вихід:

(1) "Купівля" "Weekof Purchase" "StoreID" "PriceCH"

(5) “PriceMM” “DiscCH” “DiscMM” “SpecialCH”

(9) "SpecialMM" "LoyalCH" "SalePriceMM" "SalePriceCH"

(13) “PriceDiff” “Store7” “PctDiscMM” “PctDiscCH”

(17) "СписокPriceDiff" "STORE"

str (OJ)

Показує 1070 спостережень за 18 змінними.

У нашому наборі даних є 1070 спостережень та 18 різних змінних. тут ми маємо Спеціальний ММ І спеціальний СН має залежний результат. Візьмемо спеціальний атрибут ММ, щоб мати правильне спостереження та точність 84%.

стіл (OJ $ SpecialMM)

0 1

897 173

Далі, щоб знайти ймовірність

897/1070

(1) 0, 8383178

На наступному кроці для кращої вибірки Розбиття набору даних на навчальний та тестуючий набір даних - це гоо

бібліотека (caTools)

set.seed (88)

split = sample.split (OJ $ SpecialMM, SplitRatio = 0, 84)

Враховуючи, що qt має навчальний набір, а qs має вибіркові дані тестового набору.

qt = підмножина (OJ, спліт == ІСТИНА)

qs = підмножина (OJ, split == FALSE)

nrow (qt)

(1) 898

кинути (qs)

(1) 172

Тому у нас є 898 навчальних наборів та 172 тестових зразка.

Наступне використання Summary () дає детальну інформацію про відхилення та ефективні таблиці для регресійного аналізу.

QualityLog = glm (SpecialMM ~ SalePriceMM + WeekofПокупка, дані = qt, сімейство = двочлен)

резюме (QualityLog)

Вихід:

Виклик:

glm (формула = SpecialMM ~ SalePriceMM + WeekofПокупка, сім'я = двочлен,

дані = qt)

Залишки відхилення:

Мінімум 1Q Медіана 3Q Макс

-1.2790 -0.4182 -0.3687 -0.2640 2.4284

Коефіцієнти:

Оцінити Std. Помилка z значення Pr (> | z |)

(Перехоплення) 2.910774 1.616328 1.801 0.07173.

SalePriceMM -4.538464 0.405808 -11.184 <2e-16 ***

WeekofПокупка 0.015546 0.005831 2.666 0.00767 **

-

Нульове відхилення: 794, 01 на 897 градусів свободи

Залишкове відхилення: 636, 13 на 895 градусів свободи

АПК: 642.13

Кількість повторень підрахунку Фішера: 5

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

Техніка прогнозування:

Тут ми будемо використовувати функцію прогнозування поїздів у цьому пакеті R та надавати ймовірності, що ми використовуємо аргумент з назвою type = response. Давайте подивимось прогноз, застосований до навчального набору (qt). R прогнозує результат у вигляді P (y = 1 | X) з граничною вірогідністю 0, 5.

predictTrain = передбачити (QualityLog, type = "відповідь")

Підсумок дає середні, середні та мінімальні, макс. Значення.

Підсумок (predictTrain) Виконання дає

Хв. 1-й Qu.Median Середній 3-й Qu.Max.

0, 02192 0, 03342 0, 07799 0, 16147 0, 25395 0, 89038

tapply (predictTrain, qt $ SpecialMM)

Для обчислення середнього значення для істинних ймовірностей використовується функція tapply ().

tapply (predictTrain, qt $ SpecialMM, середній)

0 1

0, 1224444 0, 3641334

Отже, у наведеному вище твердженні ми знаходимо, що можливість істинного SpecialMM означає значення 0, 34, а для справжнього поганого значення - 0, 12.

Обчислення порогового значення:

якщо P> T - прогноз поганий Спеціальний ММ

якщо P є

Матриця класифікації:

таблиця (qt $ SpecialMM, predictTrain> 0, 5)

ЛАЖНА ПРАВДА

0 746 7

1 105 40

Для обчислення чутливості та специфічності

40/145

(1) 0, 2758621

746/753

(1) 0, 9907039

Тестовий набір Прогнозування

predictTest = передбачити (QualityLog, type = "відповідь", нові дані = qs)

таблиця (qs $ SpecialMM, predictTest> = 0, 3)

ЛАЖНА ПРАВДА

0 130 14

1 10 18

таблиця (qs $ SpecialMM, predictTest> = 0, 5)

ЛАЖНА ПРАВДА

0 140 4

1 18 10

Точність обчислення

150/172

(1) 0, 872093

Є 172 випадки, з яких 144 - добре, а 28 - погано.

Побудова кривої ROC:

Це останній крок, побудувавши криву ROC для вимірювань продуктивності. Хороше значення AUC повинно бути ближче до 1, а не до 0, 5. Перевірка з ймовірністю 0, 5, 0, 7, 0, 2, щоб передбачити, як порогове значення збільшується та зменшується. Це робиться шляхом одночасного побудови порогових значень в кривій ROC. Хороший вибір - це вибір, враховуючи підвищену чутливість.

Логістичні методи регресії

Давайте подивимось на реалізацію логістики за допомогою R, оскільки це дуже легко підходить до моделі. Існує два види техніки:

  • Багаточленна логістична регресія
  • Звичайна логістична регресія

Колишній працює із змінними відповідей, коли у них більше або рівне двом класам. пізніше працює, коли замовлення значне.

Висновок

Отже, ми засвоїли основну логіку регресії поряд з тим, що ми реалізували логістичну регресію на певному наборі даних Р. Біноміальна або двійкова регресія вимірює категоричні значення бінарних відповідей та змінних прогнозів. Вони відіграють важливу роль в аналітиці, де галузеві експерти очікують знати лінійну та логістичну регресію. У них є свої проблеми і на практичному прикладі ми виконали кроки з очищення даних, попередньої обробки. Всього ми бачили, як логістична регресія вирішує проблему категоричного результату простим і легким способом.

Рекомендовані статті

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

  1. Рамки машинного навчання
  2. R проти Python
  3. Функції струнних пітонів
  4. Чи є Python мовою сценаріїв
  5. Біноміальний розподіл у R | Синтаксис
  6. Регресія проти класифікації

Категорія: