Як обчислити корисність придатності в glm (R)


21

У мене є такий результат від запуску функції glm.

Як можна інтерпретувати такі значення:

  • Нульове відхилення
  • Залишкове відхилення
  • AIC

Чи мають вони щось спільне з доброю формою? Чи можу я обчислити деяку корисність міри придатності з таких результатів, як R-квадрат або будь-який інший захід?

Call:
glm(formula = tmpData$Y ~ tmpData$X1 + tmpData$X2 + tmpData$X3 + 
    as.numeric(tmpData$X4) + tmpData$X5 + tmpData$X6 + tmpData$X7)

Deviance Residuals: 
     Min        1Q    Median        3Q       Max  
-0.52628  -0.24781  -0.02916   0.25581   0.48509  

Coefficients:
                     Estimate Std. Error  t value Pr(>|t|)    
(Intercept         -1.305e-01  1.391e-01   -0.938   0.3482    
tmpData$X1         -9.999e-01  1.059e-03 -944.580   <2e-16 ***
tmpData$X2         -1.001e+00  1.104e-03 -906.787   <2e-16 ***
tmpData$X3         -5.500e-03  3.220e-03   -1.708   0.0877 .  
tmpData$X4         -1.825e-05  2.716e-05   -0.672   0.5017    
tmpData$X5          1.000e+00  5.904e-03  169.423   <2e-16 ***
tmpData$X6          1.002e+00  1.452e-03  690.211   <2e-16 ***
tmpData$X7          6.128e-04  3.035e-04    2.019   0.0436 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

(Dispersion parameter for gaussian family taken to be 0.08496843)

    Null deviance: 109217.71  on 3006  degrees of freedom
Residual deviance:    254.82  on 2999  degrees of freedom
  (4970 observations deleted due to missingness)
AIC: 1129.8

Number of Fisher Scoring iterations: 2

Я усвідомлюю, що це було перенесено з ТА, де зазвичай не слід шукати інформацію про ці статистичні умови. У вас тут чудовий ресурс! Наприклад, подивіться, що ви можете дізнатися з пошуку за деякими своїми умовами, наприклад, AIC . Трохи часу, витраченого на це, має або повністю відповісти на ваше запитання, або принаймні навести вас на запитання більш конкретного.
whuber

Не стосується гаусових glms, але якщо у вас є bernoulli glm, встановлений для двійкових даних, ви не можете використовувати залишкові відхилення для оцінки відповідності моделі, оскільки, виявляється, дані скасовуються у формулі відхилення. Тепер ви можете використовувати різницю залишкових відхилень у такому випадку для порівняння двох моделей, але не самого залишкового відхилення.
FisherDisinformation

Відповіді:


15

Сімейство помилок за замовчуванням для glmмоделі в (мові) R - гауссова, тому з поданим кодом ви отримуєте звичайну лінійну регресію, де є широко прийнятим показником "корисності придатності". Функція R не повідомляє про Nagelkerke-псевдо- " R 2 ", а, скоріше, про AIC (Akaike Information Criterion). У випадку з моделлю OLS міра GOF Nagelkerke буде приблизно такою ж, як і у R 2 .R2glmR2R2

RГLМ2=1-(iгi,могел2)2/N(iгi,нулл2)2/N        .=.        1-SSЕ/н[могел]SSТ/н[тотал]=RОLS2

Існує певна дискусія щодо того, як трактується така міра щодо LHS, але лише тоді, коли моделі відходять від простішої ситуації з Гауссом / OLS. Але в GLM, де функція зв'язку може бути не "тотожністю", як це було тут, і "помилка в квадраті" може не мати такої ж чіткої інтерпретації, тому інформаційний критерій Akaike також повідомляється, оскільки він здається більш загальним. У тоталізаторах GLM GOF є декілька інших претендентів, котрі не мають чіткого переможця.

R2


7
Де саме знаходиться "Nagelkerke-pseudo-" R2 "" у наведеному вище висновку?
Том

1
Я повторюю питання Тома. Де у висновку знаходиться Nagelkerke-псевдо- "R2", або як його знайти? Я не шукаю додаткової інформації про значення, а скоріше, де я можу його знайти у висновку R. У прикладі запитання немає нічого, що виглядає на мене як корисність придатності в діапазоні [0-1], тому я плутаюся.
Кевін - Відновіть Моніку

Див stats.stackexchange.com/questions/8511 / ... і stackoverflow.com/questions/6242818 / ... ... Я не бачу R ^ 2 в будь-якому об'єкті GLM або сумарного виробництва. Можливо, я думав про звичайний вихід із підсумкових функцій rms, оскільки це моє улюблене середовище моделювання.
DWin

9

Використовуйте нульове відхилення та залишкове відхилення, зокрема:

1 - (Residual Deviance/Null Deviance)

Якщо ви думаєте про це, ви намагаєтеся виміряти відношення відхилення у вашій моделі до нуля; наскільки краще ваша модель (залишкове відхилення), ніж просто перехоплення (нульове відхилення). Якщо це співвідношення крихітно, ви 'пояснюєте' більшу частину відхилення в нулі; 1 мінус, який отримує ваш R-квадрат.

У вашому випадку ви отримаєте .998.

Якщо ви просто зателефонуєте на лінійну модель (lm) замість glm, вона явно дасть вам R-квадрат у резюме, і ви можете побачити, що це те саме число.


5

Якщо ви використовуєте двійкову логістичну модель, ви також можете запустити тест Hosmer Lemeshow Goodness of Fit на своїй моделі glm (). Використання бібліотеки ResourceSelection.

library(ResourceSelection)

model <- glm(tmpData$Y ~ tmpData$X1 + tmpData$X2 + tmpData$X3 + 
           as.numeric(tmpData$X4) + tmpData$X5 + tmpData$X6 + tmpData$X7, family = binomial)

summary(model)
hoslem.test(model$y, model$fitted)

Хоча зауважте, що це працює лише для бінарних залежних змінних моделей (наприклад, якщо встановили family = "binomialОП. Приклад ОП - лінійна регресія.
Матвій

@Matthew Це правда, вибачте, що пропустив це. Я так сильно використовую бінарні логістичні регресії останнім часом, мій мозок просто перейшов доhoslem.test()
диланім

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