Equivalenza di (0 + fattore | gruppo) e (1 | gruppo) + (1 | gruppo: fattore) specifiche dell'effetto casuale in caso di simmetria composta


13

Douglas Bates afferma che i seguenti modelli sono equivalenti "se la matrice varianza-covarianza per gli effetti casuali con valori vettoriali ha una forma speciale, chiamata simmetria composta" ( diapositiva 91 in questa presentazione ):

m1 <- lmer(y ~ factor + (0 + factor|group), data)
m2 <- lmer(y ~ factor + (1|group) + (1|group:factor), data)

Nello specifico Bates utilizza questo esempio:

library(lme4)
data("Machines", package = "MEMSS")

m1a <- lmer(score ~ Machine + (0 + Machine|Worker), Machines)
m2a <- lmer(score ~ Machine + (1|Worker) + (1|Worker:Machine), Machines)

con le uscite corrispondenti:

print(m1a, corr = FALSE)

Linear mixed model fit by REML ['lmerMod']
Formula: score ~ Machine + (0 + Machine | Worker)
   Data: Machines
REML criterion at convergence: 208.3112
Random effects:
 Groups   Name     Std.Dev. Corr     
 Worker   MachineA 4.0793            
          MachineB 8.6253   0.80     
          MachineC 4.3895   0.62 0.77
 Residual          0.9616            
Number of obs: 54, groups:  Worker, 6
Fixed Effects:
(Intercept)     MachineB     MachineC  
     52.356        7.967       13.917  

print(m2a, corr = FALSE)

Linear mixed model fit by REML ['lmerMod']
Formula: score ~ Machine + (1 | Worker) + (1 | Worker:Machine)
   Data: Machines
REML criterion at convergence: 215.6876
Random effects:
 Groups         Name        Std.Dev.
 Worker:Machine (Intercept) 3.7295  
 Worker         (Intercept) 4.7811  
 Residual                   0.9616  
Number of obs: 54, groups:  Worker:Machine, 18; Worker, 6
Fixed Effects:
(Intercept)     MachineB     MachineC  
     52.356        7.967       13.917

Qualcuno può spiegare la differenza tra i modelli e come si m1riduce a m2(data simmetria composta) in modo intuitivo?


6
+1 e, imho, questo è assolutamente in tema. Vota per riaprire.
ameba dice Reinstate Monica il

2
@Peter Flom perché consideri questa domanda fuori tema?
statmerkur,

3
Forse non era chiaro che stavi chiedendo dei modelli piuttosto che della lme4sintassi. Sarebbe utile - e ampliare il pool di potenziali risponditori - se li spiegassi per persone che non hanno familiarità lme4.
Scortchi - Ripristina Monica

Sembra che si tratti di codifica.
Peter Flom - Ripristina Monica

1
Se è utile, qui ci sono due buoni post su cosa sta facendo la sintassi di lme4 e su quale sia la simmetria composta nel contesto di modelli misti (vedi le risposte accettate su entrambe le domande). stats.stackexchange.com/questions/13166/rs-lmer-cheat-sheet e stats.stackexchange.com/questions/15102/…
Jacob Socolar,

Risposte:


11

In questo esempio, ci sono tre osservazioni per ogni combinazione delle tre macchine (A, B, C) e i sei lavoratori. Userò per indicare una matrice di identità n- dimensionale e 1 n per indicare un vettore n- dimensionale di quelli. Diciamo che y è il vettore delle osservazioni, che suppongo sia ordinato dal lavoratore, quindi la macchina quindi si replica. Sia μ il valore atteso corrispondente (es. Gli effetti fissi) e sia γ un vettore di deviazioni specifiche del gruppo dai valori attesi (es. Gli effetti casuali). In base a γ , il modello per y può essere scritto:Inn1nnyμγγy

yN(μ+γ,σy2I54)

dove è la varianza "residua".σy2

Per capire come la struttura della covarianza degli effetti casuali induca una struttura di covarianza tra le osservazioni, è più intuitivo lavorare con l'equivalente rappresentazione "marginale" , che si integra con gli effetti casuali . La forma marginale di questo modello è,γ

yN(μ,σy2I54+Σ)

Qui, è una matrice di covarianza che dipende dalla struttura di γ (ad es. I "componenti di varianza" alla base degli effetti casuali). Mi riferirò a Σ come covarianza "marginale".ΣγΣ

Nel tuo m1, gli effetti casuali si decompongono come:

γ=Zθ

Dove Z=I1813 è una matrice di disegno che mappa i coefficienti casuali su osservazioni e è il vettore 18-dimensionale dei coefficienti casuali ordinati dal lavoratore quindi dalla macchina ed è distribuito come:θT=[θ1,A,θ1,B,θ1,Cθ6,A,θ6,B,θ6,C]

θN(0,I6Λ)

Qui è la covarianza dei coefficienti casuali. L'assunzione della simmetria composta significa che Λ ha due parametri, che chiamerò σ θ e τ , e la struttura:ΛΛσθτ

Λ=[σθ2+τ2τ2τ2τ2σθ2+τ2τ2τ2τ2σθ2+τ2]

(In altre parole, la matrice di correlazione sottostante ha tutti gli elementi sulla diagonale impostati sullo stesso valore.)Λ

La struttura di covarianza marginale indotta da questi effetti casuali è , quindi la varianza di una data osservazione è σ 2 θ { 0Σ=Z(I6Λ)ZT e la covarianza tra due osservazioni (separate) dai lavoratori i , j e macchine u , v è: c o v ( y i , u , y j , v ) =σθ2+τ2+σy2i,ju,v

cov(yi,u,yj,v)={0if ijτ2if i=j,uvσθ2+τ2if i=j,u=v

Per te m2, gli effetti casuali si decompongono in:

γ=Zω+Xη

X=I619ωT=[ω1,A,ω1,B,ω1,C,,ω6,A,ω6,B,ω6,C]ηT=[η1,,η6]

ηN(0,ση2I6)
ωN(0,σω2I18)
ση2,σω2

m2Σ=σω2ZZT+ση2XXTσω2+ση2+σy2i,ju,v

cov(yi,u,yj,v)={0if ijση2if i=j,uvσω2+ση2if i=j,u=v

σθ2σω2τ2ση2 m1

La brevità non è il mio punto di forza: questo è solo un modo lungo e contorto per dire che ogni modello ha due parametri di varianza per gli effetti casuali e sono solo due modi diversi di scrivere dello stesso modello "marginale".

Nel codice ...

sigma_theta <- 1.8
tau         <- 0.5
sigma_eta   <- tau
sigma_omega <- sigma_theta
Z <- kronecker(diag(18), rep(1,3))
rownames(Z) <- paste(paste0("worker", rep(1:6, each=9)), 
                     rep(paste0("machine", rep(1:3, each=3)),6))
X <- kronecker(diag(6), rep(1,9))
rownames(X) <- rownames(Z)
Lambda <- diag(3)*sigma_theta^2 + tau^2

# marginal covariance for m1:
Z%*%kronecker(diag(6), Lambda)%*%t(Z)
# for m2:
X%*%t(X)*sigma_eta^2 + Z%*%t(Z)*sigma_omega^2

1
Risposta molto bella! Ma penso che la frase "macchina nidificata all'interno del lavoratore" potrebbe essere fuorviante poiché le stesse tre macchine compaiono in più di un livello (in effetti ogni) di lavoratore.
statmerkur,

@statmerkur Grazie, ho provato a chiarire questa riga. Fammi sapere se hai un altro suggerimento.
Nate Pope,

1
XX=I619

1
@ S.Catterall Yup, è un errore di battitura - grazie per averlo catturato! Ho risolto la mia risposta.
Nate Pope,

2
@statmerkur puoi chiarire cosa intendi? Non ci sono covariate continue qui, quindi non sono sicuro di cosa intendi per "pendenza". Il modo in cui penso al modello è che ci sono differenze sistematiche nella media della risposta tra le macchine (gli effetti fissi); quindi una deviazione casuale per ciascun lavoratore (intercettazioni / lavoratore casuali); quindi una deviazione casuale per ciascuna combinazione macchina-lavoratore; e infine una deviazione casuale per osservazione. Maggiore è la varianza delle deviazioni casuali per lavoratore, maggiori sarebbero le osservazioni correlate di un determinato lavoratore, ecc.
Nate Pope
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.