Інтерпретація виходу R для біноміальної регресії


38

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

glm(formula = leaves.presence ~ Area, family = binomial, data = n)

Deviance Residuals: 
Min      1Q  Median      3Q     Max  
-1.213  -1.044  -1.023   1.312   1.344  

Coefficients:
                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
leaves.presence        0.0008166  0.0002472   3.303 0.000956 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 
(Dispersion parameter for binomial family taken to be 1)

Null deviance: 16662  on 12237  degrees of freedom
Residual deviance: 16651  on 12236  degrees of freedom
(314 observations deleted due to missingness)
AIC: 16655
Number of Fisher Scoring iterations: 4

Є кілька речей, до яких я не потрапляю сюди, що це говорить насправді:

                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
leaves.presence        0.0008166  0.0002472   3.303 0.000956 ***

А що означають ітерації AIC та кількість фішерів?

> fit
Call:  glm(formula = Lövförekomst ~ Areal, family = binomial, data = n)

Coefficients:
(Intercept)        Areal  
-0.3877697    0.0008166  

Degrees of Freedom: 12237 Total (i.e. Null);  12236 Residual
(314 observations deleted due to missingness)
Null Deviance:      16660 
Residual Deviance: 16650        AIC: 16650

І ось що це означає:

Coefficients:
(Intercept)        Areal  
-0.3877697    0.0008166 

6
Оскільки ваше запитання дуже широке - "як можна інтерпретувати біноміальну регресію?" - Я б запропонував підібрати вступний текст до цієї теми. Вступ Агрешти в категоричний аналіз даних дуже доступний.
Sycorax каже, що повернеться до Моніки

2
Це може бути занадто широким, щоб відповісти тут; як сказав @ user777, консультація з хорошим текстом може бути в порядку. Агресті добре, я згоден. Hosmer & Lemeshow також хороший. Якщо ви хочете чогось короткого та безкоштовного (сповіщення про себе підключення), дивіться моє вступ до логістичної регресії, але це може бути занадто базовим для ваших потреб.
Пітер Флом - Відновіть Моніку

Добре, дякую за швидкі відповіді, я спробую Agresti і побачу, чи це допомагає :)
user40116

4
Я не думаю, що це питання занадто широке, щоб відповідати на нього. Мені здається, це по суті логістична регресійна версія інтерпретації rs-lm-результату , яка постійно вважається темою.
gung - Відновіть Моніку

1
Я з цим @gung, якщо питання стосується інтерпретації того, що R вилазив на екран. Де є двозначність, що розуміється під "середнім"? Якщо ОП із задоволенням може сказати, що коефіцієнти - це розрахункові значення моделі зі значеннями за шкалою коефіцієнтів журналу, тоді це Q нормально. Якщо ОП це не влаштовує і вимагає пояснення їхнього значення з точки зору даних, моделі тощо, то це було б занадто широким питанням, враховуючи, що це лише одне із декількох заданих питань.
Відновіть Моніку - Г. Сімпсон

Відповіді:


74

Що ви зробили - це логістична регресія . Це можна зробити в основному в будь-якому статистичному програмному забезпеченні, і вихід буде подібним (принаймні, за змістом, хоча представлення може відрізнятися). На веб-сайті про відмінну статистику UCLA є посібник з логістичної регресії з R. Якщо ви не знайомі з цим, моя відповідь тут: різниця між моделями logit і probit , може допомогти вам зрозуміти, про що йдеться у LR (хоча це написано в іншому контексті).

У вас, здається, представлені дві моделі, я в першу чергу зупинюсь на верхній. Крім того, по- видимому, була допущена помилка при копіюванні і вставці моделі або вихід, так що я поміняються leaves.presenceз Areaна виході , щоб привести його в відповідність з моделлю. Ось модель, на яку я посилаюсь (зауважте, що я додав (link="logit"), що мається на увазі family=binomial; див . Glm та ? Family ):

glm(formula = leaves.presence ~ Area, family = binomial(link="logit"), data = n)

Давайте пройдемося через цей вихід (зауважте, що я змінив ім'я змінної у другому рядку під Coefficients):

Deviance Residuals: 
   Min      1Q  Median      3Q     Max  
-1.213  -1.044  -1.023   1.312   1.344  

Coefficients:
                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
Area                   0.0008166  0.0002472   3.303 0.000956 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 
(Dispersion parameter for binomial family taken to be 1)

    Null deviance: 16662  on 12237  degrees of freedom
Residual deviance: 16651  on 12236  degrees of freedom
(314 observations deleted due to missingness)
AIC: 16655
Number of Fisher Scoring iterations: 4

Так само, як є залишки в лінійній (OLS) регресії, можуть бути залишки в логістичній регресії та інших узагальнених лінійних моделях. Однак вони складніші, коли змінна відповіді не є суцільною. У GLiM можуть бути п'ять різних типів залишків, але стандартними є залишки відхилень. ( Залишки відхилення та відхилення є більш досконалими, тому я тут короткий; якщо це обговорення буде дещо важким, я б не хвилювався надто, ви можете пропустити його):

Deviance Residuals: 
   Min      1Q  Median      3Q     Max  
-1.213  -1.044  -1.023   1.312   1.344  

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


Далі ми бачимо інформацію про коваріати, що саме людей, як правило, цікавить насамперед:

Coefficients:
                        Estimate Std. Error z value Pr(>|z|) 
(Intercept)           -0.3877697  0.0282178 -13.742  < 2e-16 ***
Area                   0.0008166  0.0002472   3.303 0.000956 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

AreaEstimateleaves.presenceArealeaves.presenceArea0.) У наступному стовпчику ми бачимо стандартну помилку, пов’язану з цими оцінками. Тобто вони є оцінкою того, скільки в середньому ці оцінки відскакують, якби дослідження було повторно виконане однаково, але з новими даними, знову і знову. (Якщо ви не дуже знайомі з ідеєю стандартної помилки, можливо, вам допоможе прочитати мою відповідь тут: як інтерпретувати стандартні помилки коефіцієнта в лінійній регресії .) Якби ми розділили оцінку на стандартну помилку, ми б отримати коефіцієнт, який, як вважається, зазвичай розподіляється з достатньо великими зразками. Це значення вказано в під z value. Нижче Pr(>|z|)перераховані двократні p-значенняякі відповідають цим z-значенням у стандартному нормальному розподілі. Нарешті, є традиційні зірки значущості (і відмітьте ключ під таблицею коефіцієнтів).


DispersionРядок друкуються за замовчуванням з ГЛИМС, але не додає багато інформації тут (це більш важливо , з кількістю моделей, наприклад). Ми можемо це ігнорувати.


Нарешті, ми отримуємо інформацію про модель та її корисність:

    Null deviance: 16662  on 12237  degrees of freedom
Residual deviance: 16651  on 12236  degrees of freedom
(314 observations deleted due to missingness)
AIC: 16655
Number of Fisher Scoring iterations: 4

Рядок про missingness, часто, гм, відсутній. Він показує тут , тому що ви мали 314 спостережень , для яких або leaves.presence, Areaабо обидва зникли безвісти. Ці часткові спостереження не використовувались у відповідності моделі.

Residual devianceNull devianceEstimateAreaЖ

AIC є ще одним заходом ЗГОДИ , яка бере до уваги здатність моделі , щоб відповідати даним. Це дуже корисно при порівнянні двох моделей, де одна може підходити краще, але, можливо, лише завдяки більш гнучкому і тим самим краще вміщувати будь-які дані. Оскільки у вас є лише одна модель, це неінформативно.

Посилання на Fisher scoring iterationsпов'язане з тим, як оцінювали модель. Лінійна модель може відповідати розв’язуванню рівнянь закритої форми. На жаль, цього неможливо зробити з більшістю GLiM, включаючи логістичну регресію. Натомість використовується ітеративний підхід ( за замовчуванням алгоритм Ньютона-Рафсона ). Вільно, модель підходить на основі здогаду про те, якими можуть бути оцінки. Потім алгоритм озирається, щоб побачити, чи вдасться покращити придатність, використовуючи замість цього різні оцінки. Якщо так, він рухається в тому напрямку (скажімо, використовуючи більш високе значення для оцінки), а потім знову підходить до моделі. Алгоритм зупиняється, коли він не сприймає, що переміщення знову принесе набагато додаткове вдосконалення. Цей рядок повідомляє вам, скільки ітерацій було до зупинки процесу та виведення результатів.



Щодо другої моделі та результатів, які ви перераховуєте, це просто інший спосіб відображення результатів. Зокрема, ці

Coefficients:
(Intercept)       Areal  
-0.3877697    0.0008166

- це той самий вид оцінок, про які йшлося вище (хоч і за іншою моделлю та подано з менш додатковою інформацією).


1

Виклик : це лише дзвінок, який ви здійснили до функції. Це буде той самий код, який ви ввели у Р. Це може бути корисним для того, щоб побачити, чи ви робили помилки.

(Девіант) Залишки: Ви можете майже ігнорувати їх для логістичної регресії. Для Пуассона або лінійної регресії ви хочете, щоб вони були більш-менш нормально розподіленими (це те саме, що перевіряють два найкращі діагностичні схеми). Ви можете перевірити це, побачивши, чи абсолютні значення 1Q і 3Q близькі (ish) один до одного, і якщо медіана близька до 0. Середнє значення не відображається, оскільки воно завжди дорівнює 0. Якщо будь-яке з них надзвичайно вимкнено, у вас, певно, є якісь дивні перекоси у ваших даних. (Це також з’явиться у ваших діагностичних діаграмах!)

Коефіцієнти : Це м'ясо виробництва.

  • Перехоплення : для Пуассона та лінійної регресії це прогнозований вихід, коли всі наші входи дорівнюють 0. Для логістичної регресії це значення буде далі від 0, чим більша різниця між кількістю спостережень у кожному класі. Стандартна помилка представляє наскільки ми не впевнені в цьому (нижчий - краще). У цьому випадку, оскільки наш перехоплення далеко не 0, а наша стандартна помилка набагато менша, ніж перехоплення, ми можемо бути впевнені, що один із наших класів (не вдався чи не вийшов з ладу) має в ньому набагато більше спостережень. (У цьому випадку це "не вийшло з ладу", на щастя!)

  • Різні входи (кожен вхід буде в іншому рядку): Ця оцінка представляє, наскільки ми думаємо, що вихід буде змінюватися щоразу, коли ми збільшуємо цей вхід на 1. Чим більша оцінка, тим більший вплив цієї змінної вводу на вихід. Стандартна помилка - наскільки ми впевнені в цьому. Зазвичай ми можемо бути впевнені, що вхід є інформативним - це стандартна помилка 1/10 оцінки. Тож у цьому випадку ми впевнені, що перехоплення є важливим.

  • Сигнаф. Коди : Це ключ до значення кожного: введення та перехоплення. Вони є правильними лише в тому випадку, якщо ви коли-небудь підходили до однієї моделі до своїх даних. (Іншими словами, вони чудово підходять для експериментальних даних, якщо ви з самого початку, які змінні вас цікавлять і не є такими інформативними для аналізу даних або вибору змінних.)

    Зачекайте, чому ми не можемо використовувати статистичну значимість? Ви можете, я просто не рекомендував би це. У науці даних вам часто підходить кілька моделей, використовуючи один і той же набір даних, щоб спробувати вибрати найкращу модель. Якщо ви коли-небудь запускаєте більше одного тесту на статистичну значимість на одному і тому ж наборі даних, вам потрібно відкоригувати ваше p-значення, щоб компенсувати його. Ви можете подумати про це так: якщо ви вирішите прийняти результати, нижчі за p = 0,05, ви в основному говорите, що все гаразд, якщо ви помиляєтесь в двадцять разів. Якщо ви потім зробите п'ять тестів, і для кожного з них є 1/20 шансів, що ви помилитесь, у вас є 1/4 шансу помилитися хоча б на одному з цих тестів ... але ви не знаю, який з них. Ви можете виправити це (помноживши p-значення, ви приймете як таке значне на кількість тестів, які ви будете попередньо виконати ), але на практиці я вважаю, що взагалі простіше уникнути використання p-значень взагалі.

(Параметр дисперсії для сімейства біномів, прийнятих за 1): це ви побачите лише для пуассонової та біноміальної (логістичної) регресії. Це просто дає вам знати, що був доданий додатковий параметр масштабування, який допоможе підігнати модель. Ви можете проігнорувати це.

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

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

AIC: AIC - це "критерій інформації Akaike", і це оцінка того, наскільки ваша модель описує шаблони у ваших даних. В основному він використовується для порівняння моделей, підготовлених на одному і тому ж наборі даних. Якщо вам потрібно вибрати між моделями, модель з нижчим AIC робить кращу роботу, описуючи дисперсію в даних.

Кількість повторень підрахунку фішера: це лише показник того, скільки часу знадобилось, щоб відповідати вашій моделі. Ви можете сміливо ігнорувати це.

Я пропоную цей документ, щоб дізнатися більше. https://www.kaggle.com/rtatman/regression-challenge-day-5

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