Як інтерпретувати оцінки параметрів у результатах Poisson GLM [закрито]


14
Call:
glm(formula = darters ~ river + pH + temp, family = poisson, data = darterData)

Deviance Residuals:
    Min      1Q   Median     3Q    Max
-3.7422 -1.0257   0.0027 0.7169 3.5347

Coefficients:
              Estimate Std.Error z value Pr(>|z|)
(Intercept)   3.144257  0.218646  14.381  < 2e-16 ***
riverWatauga -0.049016  0.051548  -0.951  0.34166
pH            0.086460  0.029821   2.899  0.00374 **
temp         -0.059667  0.009149  -6.522  6.95e-11 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

(Dispersion parameter for poisson family taken to be 1)
Null deviance: 233.68 on 99 degrees of freedom
Residual deviance: 187.74 on 96 degrees of freedom
AIC: 648.21

Я хочу знати, як інтерпретувати кожну оцінку параметрів у таблиці вище.



6
Це питання, здається, поза темою, оскільки йдеться про пояснення результату R без будь-якої форми інтелектуального запитання. Це категорія "Я скидаю туди свій комп'ютерний висновок, і ви запускаєте для мене аналіз статистики" ...
Сіань

1
Ваш параметр дисперсії, здається, вказує на те, що у вашій моделі є деякі проблеми. Можливо, вам слід розглянути можливість використання розподілу квазіпоасонів. Сподіваюся, ваші оцінки параметрів кардинально зміниться, а також інтерпретація. Якщо ви запустите "сюжет (модель)", ви отримаєте кілька сюжетів своїх залишків, ознайомтеся з цими ділянками для небажаних шаблонів, перш ніж розпочати інтерпретацію фактичної моделі. Для швидкого побудови відповідної моделі ви також можете використовувати "visreg (modelfit)" з пакету visreg
Роббі

3
@ Xi'an, хоча питання рідкісне та вимагає редагування, я не думаю, що це поза темою. Розглянемо ці питання, які не вважаються позатематичними: Інтерпретація виходу lm () R та інтерпретація виходу R для біноміальної регресії . Однак, схоже, це дублікат .
gung - Відновіть Моніку

2
Це дублікат, як інтерпретувати коефіцієнти в пуассоновій регресії? Прочитайте пов'язану нитку. Якщо у вас все-таки виникає запитання після прочитання цього питання, поверніться сюди та відредагуйте своє запитання, щоб вказати, що ви дізналися, і що ви все ще повинні знати, то ми можемо надати необхідну інформацію, не просто дублюючи матеріали в інших місцях, які вже не допомогли ти.
gung - Відновіть Моніку

Відповіді:


28

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

Питання про інтерпретацію параметрів у GLM дуже широке, оскільки GLM - це дуже широкий клас моделей. Нагадаємо, що GLM моделює змінну відповіді яка, як передбачається, слідкує за відомим розподілом з експонентного сімейства, і що ми обрали обернену функцію таку, що для змінних предиктора . У цій моделі інтерпретація будь-якого конкретного параметра - швидкість зміни відносно . Визначтеg E [ yyg J x β j g ( y )

E[y|x]=g1(x0+x1β1++xJβJ)
Jxβjg(y) μ E [ yxj ηxβj{1,,J} β j =μE[y|x]=g1(x)та щоб зберегти нотацію чистою. Тоді для будь-якого , Тепер визначте як вектор нулів та одиничний у му положенні, так що, наприклад, якщо то . Тоді ηxβj{1,,J}ejJ-11jJ=5e3=(0,0,1,0,0)βj=g(E [ y
βj=ηxj=g(μ)xj.
ejJ11jJ=5e3=(0,0,1,0,0)
βj=g(E[y|x+ej])g(E[y|x])

Що просто означає, що - це вплив на збільшення одиниці в . η x jβjηxj

Ви також можете вказати зв’язок таким чином: і E[y

E[y|x]xj=μxj=dμdηηxj=μηβj=dg1dηβj
E[y|x+ej]E[y|x]Δjy^=g1((x+ej)β)g1(xβ)

Не знаючи нічого про , це настільки, наскільки ми можемо отримати. - це вплив на , на перетворене середнє умовне значення , одиничного збільшення , а вплив на умовне середнє значення одиничного збільшення становить .gβjηyxjyxjg1(β)


Але, здається, ви запитуєте конкретно про регресію Пуассона, використовуючи функцію зв'язку R за замовчуванням, що в даному випадку є природним логарифмом. Якщо це так, ви запитуєте про конкретний вид GLM, у якому і . Тоді ми можемо отримати деяку тягу щодо конкретної інтерпретації.yPoisson(λ)g=ln

З того, що я сказав вище, ми знаємо, що . А оскільки ми знаємо , ми також знаємо, що . Ми також трапляємося, що , тому ми можемо сказати, що μxj=dg1dηβjg(μ)=ln(μ)g1(η)=eηdeηdη=eη

μxj=E[y|x]xj=ex0+x1β1++xJβJβj

що нарешті означає щось відчутне:

Враховуючи дуже невелику зміну , змінюється на .xjy^y^βj

Зауважте: це наближення може насправді працювати при змінах на рівні 0,2, залежно від того, яка точність вам потрібна.

І, використовуючи більш звичну інтерпретацію зміни одиниць, ми маємо: що означає

Δjy^=ex0+x1β1++(xj+1)βj++xJβJex0+x1β1++xJβJ=ex0+x1β1++xJβJ+βjex0+x1β1++xJβJ=ex0+x1β1++xJβJejβex0+x1β1++xJβJ=ex0+x1β1++xJβJ(ejβ1)

Враховуючи зміну одиниці в , придатний змінюється на .у у ( е β J - 1 )xjy^y^(ejβ1)

Тут слід зазначити три важливі частини:

  1. Ефект зміни предикторів залежить від рівня реакції.
  2. Адитивна зміна предикторів має мультиплікативний вплив на реакцію.
  3. Ви не можете інтерпретувати коефіцієнти, просто читаючи їх (якщо тільки ви не можете обчислити довільні експоненти в голові).

Отже, у вашому прикладі ефект підвищення pH на 1 полягає у збільшенні на ; тобто помножити на . Схоже, ваш результат - це кількість перекусів, які ви спостерігаєте за певний час (скажімо, тиждень). Тож якщо ви спостерігаєте за 100 датерів на тиждень при рН 6,7, підняття рН річки до 7,7 означає, що тепер ви можете розраховувати на 109 дартрів на тиждень.у ( е 0,09 - 1 ) у й 0,091,09lny^y^(e0.091) y^e0.091.09


Я зробив тут кілька перетворень, @ssdecontrol. Думаю, вони зроблять твій пост трохи простішим за дотриманням, але якщо вони тобі не сподобаються, відкотуй їх з моїми вибаченнями.
gung - Відновіть Моніку

Я не можу це зрозуміти з моєї відповіді, тоді чітко мені потрібно переглянути відповідь. Що ви все ще плутаєте?
shadowtalker

Підключіть ці числа до рівняння так само, як у лінійній регресії
shadowtalker

1
@skan ні, я маю на увазі . і - випадкові величини, що представляють собою одне спостереження. - вектор, індексований ; - випадкова величина, що представляє конкретну особливість / регресор / вхід / предиктор для цього спостереження. x y x j x jE[y|x]xyxjxj
shadowtalker

2
І не передумуйте. Після того, як ви зрозумієте всі шматочки в GLM, маніпуляції тут є лише прямим застосуванням принципів обчислення. Це дійсно так просто, як взяти похідну стосовно змінної, яка вас цікавить.
shadowtalker

3

Моєю пропозицією було б створити невелику сітку, що складається з комбінацій двох річок і двох-трьох значень кожного з коваріатів, а потім використовувати predictфункцію з вашою сіткою як newdata. Потім графік результатів. Набагато чіткіше подивитися на значення, які модель насправді передбачає. Ви можете або не хочете перетворювати прогнози на початкову шкалу вимірювання ( type = "response").


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