Як інтерпретувати вихід glm у r (з прикладом)


Функцію glm() у R можна використовувати для підгонки узагальнених лінійних моделей.

Ця функція використовує такий синтаксис:

glm(формула, родина=Гаусс, дані, …)

золото:

  • формула: формула лінійної моделі (наприклад, y ~ x1 + x2)
  • сімейство: статистичне сімейство, яке буде використовуватися для відповідності моделі. За замовчуванням встановлено значення Гауса, але інші параметри включають Біноміальний, Гамма та Пуассона.
  • дані: назва блоку даних, який містить дані

На практиці ця функція найчастіше використовується для підгонки моделей логістичної регресії шляхом визначення «біноміального» сімейства.

У наступному прикладі показано, як інтерпретувати вихід glm у R для моделі логістичної регресії.

Приклад: як інтерпретувати вихід glm у R

Для цього прикладу ми використаємо набір даних mtcars , вбудований у R:

 #view first six rows of mtcars dataset
head(mtcars)

                   mpg cyl disp hp drat wt qsec vs am gear carb
Mazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4
Mazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4
Datsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1
Hornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1
Hornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2
Valiant 18.1 6 225 105 2.76 3,460 20.22 1 0 3 1

Ми будемо використовувати змінні disp і hp , щоб передбачити ймовірність того, що даний автомобіль прийме значення 1 для змінної am .

Наступний код показує, як використовувати функцію glm() для відповідності цій моделі логістичної регресії:

 #fit logistic regression model
model <- glm(am ~ disp + hp, data=mtcars, family=binomial)

#view model summary
summary(model)

Call:
glm(formula = am ~ disp + hp, family = binomial, data = mtcars)

Deviance Residuals: 
    Min 1Q Median 3Q Max  
-1.9665 -0.3090 -0.0017 0.3934 1.3682  

Coefficients:
            Estimate Std. Error z value Pr(>|z|)  
(Intercept) 1.40342 1.36757 1.026 0.3048  
available -0.09518 0.04800 -1.983 0.0474 *
hp 0.12170 0.06777 1.796 0.0725 .
---
Significant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 43,230 on 31 degrees of freedom
Residual deviance: 16,713 on 29 degrees of freedom
AIC: 22,713

Number of Fisher Scoring iterations: 8

Ось як інтерпретувати кожен елемент результату:

Коефіцієнти та P-значення

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

Наприклад, збільшення на одну одиницю змінної предиктора disp пов’язане із середньою зміною на -0,09518 у логарифмі ймовірності того, що змінна відповіді am приймає значення 1. Це означає, що вищі значення disp пов’язані з нижчим ймовірність. змінної am приймає значення 1.

Стандартна помилка дає нам уявлення про мінливість, пов’язану з оцінкою коефіцієнта. Потім ми ділимо оцінку коефіцієнта на стандартну помилку, щоб отримати значення az.

Наприклад, значення z для змінної предиктора disp обчислюється як -,09518 / ,048 = -1,983.

P-значення Pr(>|z|) повідомляє нам про ймовірність, пов’язану з певним z-значенням. Це, по суті, говорить нам, наскільки добре кожна змінна предиктора здатна передбачити значення змінної відповіді в моделі.

Наприклад, p-значення, пов’язане з z-значенням для змінної disp, становить 0,0474. Оскільки це значення менше 0,05, ми б сказали, що disp є статистично значущою змінною предиктора в моделі.

Залежно від ваших уподобань, ви можете вирішити використовувати рівень значущості 0,01, 0,05 або 0,10, щоб визначити, чи є кожна змінна предиктора статистично значущою.

Нульове та залишкове відхилення

Нульове відхилення у вихідних даних говорить нам, наскільки добре змінну відповіді можна передбачити за допомогою моделі лише з початковим членом.

Залишкове відхилення говорить нам, наскільки добре змінну відповіді можна передбачити конкретною моделлю, яку ми підбираємо за допомогою p змінних предиктора. Чим менше значення, тим краще модель здатна передбачити значення змінної відповіді.

Щоб визначити, чи є модель «корисною», ми можемо обчислити статистику хі-квадрат наступним чином:

X 2 = Нульове відхилення – Залишкове відхилення

з p ступенями свободи.

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

Наприклад, у нашій регресійній моделі ми можемо спостерігати такі значення на виході для нульового та залишкового відхилення:

  • Нульове відхилення : 43,23 з df = 31
  • Залишкове відхилення : 16,713 з df = 29

Ми можемо використовувати ці значення для розрахунку статистики X 2 моделі:

  • X 2 = Нульове відхилення – Залишкове відхилення
  • X2 = 43,23 – 16,713
  • X2 = 26 517

Існує p = 2 ступені свободи предикторних змінних.

Ми можемо скористатися калькулятором хі-квадрат до P-значення , щоб знайти, що значення X 2 26,517 із 2 ступенями свободи має значення p 0,000002.

Оскільки це p-значення набагато нижче за 0,05, можна зробити висновок, що модель дуже корисна.

AIC

Інформаційний критерій Akaike ( AIC ) — це показник, який використовується для порівняння відповідності різних регресійних моделей. Чим менше значення, тим краще регресійна модель відповідає даним.

Він розраховується таким чином:

AIC = 2K – 2 ln (L)

золото:

  • K: Кількість параметрів моделі.
  • ln (L) : логарифм правдоподібності моделі. Це говорить нам про те, наскільки ймовірно модель базується на даних.

Фактичне значення AIC не має сенсу.

Однак, якщо ви підбираєте кілька моделей регресії, ви можете порівняти значення AIC кожної моделі. Модель з найнижчим AIC забезпечує найкраще прилягання.

За темою: що вважається хорошим значенням AIC?

Додаткові ресурси

Наступні посібники надають додаткову інформацію про те, як використовувати функцію glm() у R:

Різниця між glm і lm у R
Як використовувати функцію прогнозування з glm у R

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

Як працювати з R Попередження: glm.fit: алгоритм не зійшовся
Як обробляти: glm.fit: виникла чисельно скоригована ймовірність 0 або 1

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *