У багаторівневій моделі, які практичні наслідки оцінюють проти не оцінюваних параметрів кореляції випадкових ефектів?


27

У багаторівневій моделі, які практичні та інтерпретаційні наслідки пов'язані з оцінкою порівняно з не оцінюючими параметрами кореляції випадкових ефектів? Практична причина запитання полягає в тому, що в рамці lmer в R не існує реалізованого методу оцінки р-значень за допомогою методів MCMC, коли оцінки проводяться в моделі кореляцій між параметрами.

Наприклад, дивлячись на цей приклад (частини, цитовані нижче), які практичні наслідки M2 та M3. Очевидно, що в одному випадку P5 не буде оцінено, а в іншому -.

Запитання

  1. З практичних причин (бажання отримати р-значення за допомогою методів MCMC) можна захотіти підходити до моделі без кореляції між випадковими ефектами, навіть якщо P5 по суті не нульовий. Якщо хтось робить це, а потім оцінює р-значення за допомогою методики MCMC, чи можна інтерпретувати результати? (Я знаю, що @Ben Bolker раніше згадував, що "поєднання тестування на значимість з MCMC є трохи непослідовним, статистично, хоча я розумію, що прагнути до цього (отримання довірчих інтервалів є більш сприятливим)" , тому, якщо це дозволить вам спати краще вночі роби вигляд, що я сказав довірчі інтервали.)
  2. Якщо не вдалося оцінити P5, це те саме, що стверджувати, що це 0?
  3. Якщо P5 дійсно не дорівнює нулю, то яким чином впливають на розрахункові значення P1-P4?
  4. Якщо P5 дійсно не дорівнює нулю, то яким чином впливають оцінки помилок для P1-P4?
  5. Якщо P5 дійсно не дорівнює нулю, то якими способами інтерпретації моделі не містять помилок P5?

Позичавшись із відповіді @Mike Lawrence (ті, хто більше знає, ніж я, вільний замінити це на повну нотаційну модель, я не зовсім впевнений, що можу це зробити з розумною вірністю):

M2: V1 ~ (1|V2) + V3 + (0+V3|V2)(Оцінки P1 - P4)

M3: V1 ~ (1+V3|V2) + V3(Оцінки P1-P5)

Параметри, які можуть бути оцінені:

P1 : глобальний перехоплення

P2 : Перехоплення випадкових ефектів для V2 (тобто для кожного рівня V2, відхилення перехоплення цього рівня від глобального перехоплення)

P3 : Єдина глобальна оцінка ефекту (нахилу) V3

P4 : Ефект V3 в межах кожного рівня V2 (точніше, ступінь, в якому ефект V3 в межах заданого рівня відхиляється від глобального ефекту V3), одночасно забезпечуючи нульову кореляцію між відхиленнями перехоплення та відхиленнями ефекту V3 по всіх рівнях V2.

P5 : Кореляція між відхиленнями перехоплення та відхиленнями V3 по рівнях V2

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



@JackTanner: Мабуть, ви теж не отримали задоволення. Було б чудово, якби ваші занепокоєння були вирішені і у відповіді на це питання.
russellpierce

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

4
Що стосується ваших запитань, я на 80 (але не 100)% впевнений у наступному: повторно. # 2, так, якщо ви не оцінюєте кореляцію, ви примушуєте її до 0; для решти, якщо кореляція насправді не точно 0, то ви неправильно визначаєте незалежність своїх даних. Проте бета-версії можуть бути неупередженими, але значення p буде вимкнено (і чи вони занадто високі або занадто низькі, і може бути невідомими). Таким чином, інтерпретація бета-версії може протікати як звичайна, але інтерпретація "значущості" буде неточною.
gung - Відновіть Моніку

2
@Macro: Я сподівався, що щедрість може вирвати хороший відповідь, заснований на теорії, а не на моделюванні. За допомогою симуляції я часто хвилююся, що я не брав відповідний край. Я чудово працюю в моделюванні, але завжди відчуваю себе трохи ... невпевнено, що я виконую всі правильні симуляції (хоча, мабуть, я можу залишити це редакторам журналів для вирішення). Можливо, мені доведеться задати ще одне питання про те, які сценарії включати.
russellpierce

Відповіді:


16

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

М0:Реакція1+Днів+(1|Тема)+(0+Днів|Тема)

і

МА:Реакція1+Днів+(Днів|Тема)

У дослідженні брали участь 18 суб'єктів, які вивчалися протягом 10 днів, позбавлених сну. Часи реакцій обчислювались за базовою лінією та наступними днями. Існує чіткий ефект між часом реакції та тривалістю позбавлення сну. Існують також значні відмінності між предметами. Модель A передбачає можливість взаємодії між випадковими перехопленнями та нахилами: уявіть, скажімо, що люди з поганим часом реакції гостріше страждають від наслідків позбавлення сну. Це означатиме позитивну кореляцію випадкових ефектів.

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

Як видно із зображення, тривалі реакційні часи пов'язані з більшою втратою продуктивності. Кореляція, використана для моделювання, становила 0,58

введіть тут опис зображення

Я моделював 1000 зразків, використовуючи метод імітації в lme4, спираючись на відповідні значення моїх штучних даних. Я підходив до M0 та Ma до кожного і дивився на результати. Початковий набір даних мав 180 спостережень (10 для кожного з 18 суб'єктів), а модельовані дані мають однакову структуру.

Суть полягає в тому, що різниці є дуже мало.

  1. Фіксовані параметри мають однакові значення в обох моделях.
  2. Випадкові ефекти дещо відрізняються. Для кожного модельованого зразка існує 18 випадкових ефектів перехоплення та 18 нахилів. Для кожного зразка ці ефекти змушені додавати до 0, що означає, що середня різниця між двома моделями становить (штучно) 0. Але дисперсії та коваріації відрізняються. Середня коваріація за МА становила 104, проти 84 під М0 (фактичне значення, 112). Дисперсії укосів та перехрестів були меншими за М0, ніж МА, імовірно, для отримання додаткової махової кімнати, необхідної за відсутності параметра вільної коваріації.
  3. Метод ANOVA для lmer дає F-статистику для порівняння моделі Slope з моделлю лише з випадковим перехопленням (ніякого ефекту через депривацію сну). Зрозуміло, що це значення було дуже великим для обох моделей, але воно було типово (але не завжди) більшим за МА (середнє значення 62 проти середнього значення 55).
  4. Коваріація та дисперсія фіксованих ефектів різні.
  5. Близько половини часу знає, що МА є правильним. Середнє значення p для порівняння M0 з MA становить 0,0442. Незважаючи на наявність значущої кореляції та 180 збалансованих спостережень, правильну модель обрали б лише приблизно в половині часу.
  6. Прогнозовані значення відрізняються в двох моделях, але дуже незначно. Середня різниця між прогнозами - 0, з sd 2,7. Sd самих передбачуваних значень становить 60,9

То чому це відбувається? @gung обґрунтовано здогадувався, що невключення можливості кореляції змушує випадкові ефекти бути некорельованими. Можливо, так і слід; але в цій реалізації дозволено співвідносити випадкові ефекти, що означає, що дані здатні витягувати параметри в потрібному напрямку, незалежно від моделі. Помилковість неправильної моделі виявляється, ймовірно, саме тому ви можете (іноді) розрізняти дві моделі на цьому рівні. Модель змішаних ефектів в основному відповідає лінійним регресіям для кожного суб'єкта, під впливом того, що модель вважає, що вони повинні бути. Неправильна модель примушує відповідати менш правдоподібним значенням, ніж ви отримуєте за правильної моделі. Але в кінці дня параметри регулюються відповідно до фактичних даних.

введіть тут опис зображення

Ось мій дещо незграбний код. Ідея полягала в тому, щоб пристосувати дані дослідження сну, а потім побудувати модельований набір даних із тими ж параметрами, але більша кореляція випадкових ефектів. Цей набір даних подавали для simulate.lmer () для імітації 1000 зразків, кожен з яких відповідав обом способам. Після того, як я поєднав вмонтовані предмети, я міг витягнути різні функції пристосування та порівняти їх, використовуючи t-тести чи що завгодно.

    # Fit a model to the sleep study data, allowing non-zero correlation
fm01 <- lmer(Reaction ~ 1 + Days +(1+Days|Subject), data=sleepstudy, REML=FALSE)
# Now use this to build a similar data set with a correlation = 0.9
# Here is the covariance function for the random effects
# The variances come from the sleep study. The covariance is chosen to give a larger correlation
sigma.Subjects <- matrix(c(565.5,122,122,32.68),2,2) 
# Simulate 18 pairs of random effects
ranef.sim <- mvrnorm(18,mu=c(0,0),Sigma=sigma.Subjects)
# Pull out the pattern of days and subjects.
XXM <- model.frame(fm01) 
n <- nrow(XXM) # Sample size
# Add an intercept to the model matrix.
XX.f <- cbind(rep(1,n),XXM[,2])
# Calculate the fixed effects, using the parameters from the sleep study. 
yhat <- XX.f %*%  fixef(fm01 )
# Simulate a random intercept for each subject
intercept.r <- rep(ranef.sim[,1], each=10) 
# Now build the random slopes
slope.r <- XXM[,2]*rep(ranef.sim[,2],each=10)
# Add the slopes to the random intercepts and fixed effects
yhat2 <- yhat+intercept.r+slope.r
# And finally, add some noise, using the variance from the sleep study
y <- yhat2 + rnorm(n,mean=0,sd=sigma(fm01))
# Here is new "sleep study" data, with a stronger correlation.
new.data <- data.frame(Reaction=y,Days=XXM$Days,Subject=XXM$Subject)
# Fit the new data with its correct model
fm.sim <- lmer(Reaction ~ 1 + Days +(1+Days|Subject), data=new.data, REML=FALSE)
# Have a look at it
xyplot(Reaction ~ Days | Subject, data=new.data, layout=c(6,3), type=c("p","r"))
# Now simulate 1000 new data sets like new.data and fit each one
# using the right model and zero correlation model.
# For each simulation, output a list containing the fit from each and
# the ANOVA comparing them.
n.sim <- 1000
    sim.data <- vector(mode="list",)
    tempReaction <- simulate(fm.sim, nsim=n.sim)
    tempdata <- model.frame(fm.sim)
    for (i in 1:n.sim){
        tempdata$Reaction <- tempReaction[,i]
			output0 <- lmer(Reaction ~ 1 + Days +(1|Subject)+(0+Days|Subject), data = tempdata, REML=FALSE)
			output1 <- lmer(Reaction ~ 1 + Days +(Days|Subject), data=tempdata, REML=FALSE)
			temp <- anova(output0,output1)
			pval <- temp$`Pr(>Chisq)`[2]
        sim.data[[i]] <- list(model0=output0,modelA=output1, pvalue=pval)
    }

1
Це цікава робота. Дякую. Я хочу побачити, які ще зауваження з'являться в найближчі пару днів і як узагальнюються речі до інших випадків, перш ніж я прийму відповідь. Чи розглядаєте ви також, як у відповідь включити відповідний код R, а також вказати використану вами версію lmer? Було б цікаво подати ті самі імітовані випадки в PROC MIXED, щоб побачити, як він обробляє невказане співвідношення випадкових ефектів.
russellpierce

1
@rpierce Я додав зразок коду за запитом. Я спочатку писав це в LaTeX / Sweave, тому рядки коду перепліталися з моїми коментарями до себе. Я використовував версію lme4 версії 1.1-6, яка є поточною версією у червні 2014 року.
Placidia

@ Коли ви говорите "Модель A дозволяє" у другому абзаці, чи не повинно це бути МО?
nzcoops

Я вважаю, що текст правильний (все, що я зробив для цього питання, було трохи
деталізувати

+6. Відмінна відповідь, дякую за вашу увагу до старих, але гідних питань.
Амеба каже, що повернеться до Моніки

4

Placidia вже дав ґрунтовну відповідь, використовуючи модельовані дані на основі sleepstudyнабору даних. Ось ще одна (менш сувора) відповідь, яка також використовує sleepstudyдані.

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

library(lmer)

#Fit Models
fm1 <- lmer(Reaction ~ Days + (Days | Subject), sleepstudy)
k <- 3 # Shift "Days" by an arbitrary amount
fm2 <- lmer(Reaction ~ I(Days + k) + (I(Days + k)| Subject), sleepstudy)

fm1 # Model Output
# Linear mixed model fit by REML ['lmerMod']
# Formula: Reaction ~ Days + (Days | Subject)
# Data: sleepstudy
# REML criterion at convergence: 1743.628
# Random effects:
#   Groups   Name        Std.Dev. Corr
# Subject  (Intercept) 24.740       
# Days         5.922   0.07
# Residual             25.592       
# Number of obs: 180, groups:  Subject, 18
# Fixed Effects:
#   (Intercept)         Days  
# 251.41        10.47

fm2 # Model Output
# Linear mixed model fit by REML ['lmerMod']
# Formula: Reaction ~ I(Days + k) + (I(Days + k) | Subject)
# Data: sleepstudy
# REML criterion at convergence: 1743.628
# Random effects:
#   Groups   Name        Std.Dev. Corr 
# Subject  (Intercept) 29.498        
# I(Days + k)  5.922   -0.55
# Residual             25.592        
# Number of obs: 180, groups:  Subject, 18
# Fixed Effects:
#   (Intercept)  I(Days + k)  
# 220.00        10.47

# Random effects from both models
cbind(ranef(fm1)$Subject,ranef(fm2)$Subject)
# (Intercept)        Days (Intercept) I(Days + k)
# 308   2.2585654   9.1989719 -25.3383538   9.1989727
# 309 -40.3985769  -8.6197032 -14.5394628  -8.6197043
# 310 -38.9602458  -5.4488799 -22.6136027  -5.4488807
# 330  23.6904985  -4.8143313  38.1334933  -4.8143315
# 331  22.2602027  -3.0698946  31.4698868  -3.0698946
# 332   9.0395259  -0.2721707   9.8560377  -0.2721706
# 333  16.8404311  -0.2236244  17.5113040  -0.2236243
# 334  -7.2325792   1.0745761 -10.4563076   1.0745761
# 335  -0.3336958 -10.7521591  31.9227854 -10.7521600
# 337  34.8903508   8.6282840   9.0054946   8.6282850
# 349 -25.2101104   1.1734142 -28.7303527   1.1734141
# 350 -13.0699567   6.6142050 -32.9125736   6.6142054
# 351   4.5778352  -3.0152572  13.6236077  -3.0152574
# 352  20.8635924   3.5360133  10.2555505   3.5360138
# 369   3.2754530   0.8722166   0.6588028   0.8722167
# 370 -25.6128694   4.8224646 -40.0802641   4.8224648
# 371   0.8070397  -0.9881551   3.7715053  -0.9881552
# 372  12.3145393   1.2840297   8.4624492   1.2840300

З виводу моделі ми бачимо, що кореляція випадкової дисперсії змінилася. Однак схили (фіксовані та випадкові) залишалися однаковими, як і оцінка залишкової дисперсії. Оцінки перехоплення (фіксовані та випадкові) змінилися у відповідь на зміщену змінну.

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

Наведений вище приклад варіює випадкову кореляцію (параметр "P5"). Частково звертаючись до Q3 ОП, ми бачимо з наведеного вище висновку, що:

#   Parameter           Status
=================================
P1  Fixed Intercept     Affected
P2  Random Intercepts   Affected
P3  Fixed Slope         Not Affected
P4  Random Slopes       Not Affected
P5  Random Correlation  Affected

Дякуємо, що додали сигнал до цього тривалого питання!
russellpierce

Примітка: усі чудові лекції Джека Вайса та заняття / конспекти пов’язані у цій публікації
theforestecologist

Як тоді ми інтерпретуємо ці дані? Що таке "справжня" кореляція? Той, що з першої чи з другої моделі? Або ті з BLUPs?
User33268
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.