Quelle serait une illustration pour les modèles mixtes linéaires?

17

Dites que vous êtes dans la bibliothèque de votre département de statistique et que vous tombez sur un livre avec l'image suivante en première page.

entrez la description de l'image ici

Vous penserez probablement qu'il s'agit d'un livre sur les choses de régression linéaire.

Quelle serait l'image qui vous ferait penser aux modèles mixtes linéaires?

ocram
la source

Réponses:

12

Pour une conférence, j'ai utilisé l'image suivante qui est basée sur l' sleepstudyensemble de données du package lme4 . L'idée était d'illustrer la différence entre les ajustements de régression indépendants des données spécifiques au sujet (gris) par rapport aux prédictions des modèles à effets aléatoires, en particulier que (1) les valeurs prédites du modèle à effets aléatoires sont des estimateurs de rétrécissement et que (2) les trajectoires individuelles partagent une pente commune avec un modèle d'interception aléatoire uniquement (orange). Les distributions des intersections de sujets sont représentées sous forme d'estimations de densité du noyau sur l'axe des y ( code R ).

entrez la description de l'image ici
(Les courbes de densité dépassent la plage des valeurs observées car il y a relativement peu d'observations.)

Un graphique plus «conventionnel» pourrait être le suivant, qui est de Doug Bates (disponible sur le site R-forge pour lme4 , par exemple 4Longitudinal.R ), où nous pourrions ajouter des données individuelles dans chaque panneau.

entrez la description de l'image ici

chl
la source
+1. Bon! Je pense que votre première intrigue est géniale sur le plan conceptuel. Mon seul commentaire serait qu'il nécessite beaucoup plus d'explications qu'une intrigue «naïve» standard et si le public n'est pas au courant des concepts des modèles LME et des données longitudinales, il pourrait manquer le point de l'intrigue. Je m'en souviendrai certainement pour une solide "discussion sur les statistiques". (J'ai déjà vu la deuxième intrigue dans le "livre lme4" plusieurs fois. Je n'étais pas trop impressionné alors et je ne suis pas trop impressionné maintenant non plus.)
usεr11852 dit Reinstate Monic
@chl: Merci! Je choisirai parmi les propositions. En attendant, +1
ocram
@ user11852 Ma compréhension du modèle RI est que les estimations OLS sont correctes, mais leurs erreurs standard ne le sont pas (en raison du manque d'indépendance), de sorte que les prédictions individuelles seront également incorrectes. Habituellement, je montrerais la droite de régression globale en supposant des observations indépendantes. Ensuite, la théorie nous dit que la combinaison des modes conditionnels des effets aléatoires et des estimations des effets fixes produit des modes conditionnels des coefficients intra-sujet, et il y aura peu de rétrécissement lorsque les unités statistiques sont différentes, ou lorsque les mesures sont précises, ou avec grands échantillons.
chl
y|γN(Xβ+Zγ,σ2je)yN(Xβ,ZZT+σ2je)
Le lien vers le code R pour créer l'image est rompu. Je serais intéressé par la façon de dessiner les distributions verticalement dans la figure.
Niels Hameleers
8

Donc quelque chose qui n'est pas "extrêmement élégant" mais qui montre aussi des interceptions et des pentes aléatoires avec R. (je suppose que ce serait encore plus cool si on montrait les équations réelles aussi) entrez la description de l'image ici

N =100; set.seed(123);


x1 = runif(N)*3; readings1 <- 2*x1 + 1.0 + rnorm(N)*.99;
x2 = runif(N)*3; readings2 <- 3*x2 + 1.5 + rnorm(N)*.99;
x3 = runif(N)*3; readings3 <- 4*x3 + 2.0 + rnorm(N)*.99;
x4 = runif(N)*3; readings4 <- 5*x4 + 2.5 + rnorm(N)*.99;
x5 = runif(N)*3; readings5 <- 6*x5 + 3.0 + rnorm(N)*.99;

X = c(x1,x2,x3,x4,x5);
Y = c(readings1,readings2,readings3,readings4,readings5)
Grouping  = c(rep(1,N),rep(2,N),rep(3,N),rep(4,N),rep(5,N))

library(lme4);
LMERFIT <- lmer(Y ~ 1+ X+ (X|Grouping))

RIaS <-unlist( ranef(LMERFIT)) #Random Intercepts and Slopes
FixedEff <- fixef(LMERFIT)    # Fixed Intercept and Slope

png('SampleLMERFIT_withRandomSlopes_and_Intercepts.png', width=800,height=450,units="px" )
par(mfrow=c(1,2))
plot(X,Y,xlab="x",ylab="readings")
plot(x1,readings1, xlim=c(0,3), ylim=c(min(Y)-1,max(Y)+1), pch=16,xlab="x",ylab="readings" )
points(x2,readings2, col='red', pch=16)
points(x3,readings3, col='green', pch=16)
points(x4,readings4, col='blue', pch=16)
points(x5,readings5, col='orange', pch=16)
abline(v=(seq(-1,4 ,1)), col="lightgray", lty="dotted");        
abline(h=(seq( -1,25 ,1)), col="lightgray", lty="dotted")   

lines(x1,FixedEff[1]+ (RIaS[6] + FixedEff[2])* x1+ RIaS[1], col='black')
lines(x2,FixedEff[1]+ (RIaS[7] + FixedEff[2])* x2+ RIaS[2], col='red')
lines(x3,FixedEff[1]+ (RIaS[8] + FixedEff[2])* x3+ RIaS[3], col='green')
lines(x4,FixedEff[1]+ (RIaS[9] + FixedEff[2])* x4+ RIaS[4], col='blue')
lines(x5,FixedEff[1]+ (RIaS[10]+ FixedEff[2])* x5+ RIaS[5], col='orange') 
legend(0, 24, c("Group1","Group2","Group3","Group4","Group5" ), lty=c(1,1), col=c('black','red', 'green','blue','orange'))
dev.off()
usεr11852 dit Reinstate Monic
la source
Merci! J'attends un peu plus pour de nouvelles réponses potentielles ... mais je pourrais continuer sur celle-ci.
ocram
Je suis un peu confus par votre chiffre, car la sous-intrigue de droite me semble comme si une ligne de régression distincte était adaptée à chaque groupe. N'est-ce pas tout le point que les ajustements de modèles mixtes devraient être différents des ajustements indépendants par groupe? Peut-être qu'ils le sont, mais dans cet exemple, il est vraiment difficile de le remarquer, ou manque-t-il quelque chose?
amibe dit Réintégrer Monica le
2
Oui, les coefficients sont différents . Nan; une régression distincte n'était pas adaptée à chaque groupe. Les ajustements conditionnels sont affichés. Dans une conception homoskédastique parfaitement équilibrée comme celle-ci, la différence sera difficile à remarquer, par exemple, l'interception conditionnelle du groupe 5 est de 2,96 tandis que l'interception indépendante par groupe est de 3,00. C'est la structure de covariance des erreurs que vous modifiez. Vérifiez aussi la réponse de chi, il a plus de groupes mais même là dans très peu de cas, l'ajustement est "très différent" visuellement.
usεr11852 dit Réintégrer Monic le
6

Pas mon travail

Ce graphique tiré de la documentation Matlab de nlmefit me semble vraiment illustrer le concept d'interceptions et de pentes aléatoires. Probablement quelque chose montrant des groupes d'hétéroskédasticité dans les résidus d'un tracé OLS serait également assez standard mais je ne donnerais pas de "solution".

usεr11852 dit Reinstate Monic
la source
Merci pour votre suggestion. Bien que cela ressemble à des choses de régression logistique mixte, je suppose que je peux facilement l'adapter. J'attends plus de suggestions. En attendant, +1. Merci encore.
ocram
Cela ressemble à une régression logistique mixte, principalement parce que c'est une régression ... :) C'était vraiment la première intrigue qui m'est venue à l'esprit! Je vais donner quelque chose de purement R-ish dans une deuxième réponse.
usεr11852 dit Réintégrer Monic