Questions sur la manière dont les effets aléatoires sont spécifiés dans lmer

55

J'ai récemment mesuré la façon dont le sens d'un nouveau mot est acquis au cours d'expositions répétées (pratique: du premier au dixième jour) en mesurant les ERP (EEG) lorsque le mot a été vu dans différents contextes. J'ai également contrôlé les propriétés du contexte, par exemple son utilité pour la découverte d'un nouveau sens des mots (élevé ou faible). Je m'intéresse particulièrement à l'effet de la pratique (jours). Parce que les enregistrements ERP individuels sont bruyants, les valeurs des composants ERP sont obtenues en faisant la moyenne sur les essais d'une condition particulière. Avec la lmerfonction, j'ai appliqué la formule suivante:

lmer(ERPindex ~ practice*context + (1|participants), data=base) 

et

lmer(ERPindex ~ practice*context + (1+practice|participants), data=base) 

J'ai également vu l'équivalent des effets aléatoires suivants dans la littérature:

lmer(ERPindex ~ practice*context + (practice|participants) + 
                (practice|participants:context), data=base) 

Que fait-on en utilisant un facteur aléatoire de la forme participants:context? Existe-t-il une bonne source qui permettrait à une personne possédant une connaissance sommaire de l'algèbre matricielle de comprendre précisément ce que les facteurs aléatoires font dans les modèles mixtes linéaires et comment ils doivent être sélectionnés?

Alwin Hoff
la source

Réponses:

77

Je vais décrire le modèle de chacun de vos appels lmer()et leur différence, puis répondre à votre dernière question sur la sélection des effets aléatoires.

Chacun de vos trois modèles contient des effets fixes pour practice, contextet l'interaction entre les deux. Les effets aléatoires diffèrent entre les modèles.

lmer(ERPindex ~ practice*context + (1|participants), data=base) 

participantsparticipant0

lmer(ERPindex ~ practice*context + (1+practice|participants), data=base) 

Ce modèle, en plus d’une interception aléatoire, contient également une pente aléatoire dans practice. Cela signifie que le rythme auquel les individus apprennent de la pratique est différent d'une personne à l'autre. Si une personne a un effet aléatoire positif, elle augmente plus vite avec la pratique que la moyenne, tandis qu'un effet aléatoire négatif indique qu'elle apprend moins vite avec la pratique que la moyenne, ou peut-être s'aggrave avec la pratique, en fonction de la variance de l'aléatoire. effet (en supposant que l'effet fixe de la pratique soit positif).

lmer(ERPindex ~ practice*context + (practice|participants) + 
                (practice|participants:context), data=base) 

Ce modèle s'adapte à une pente aléatoire et intercepte dedans practice(vous devez faire (practice-1|...)pour supprimer l'interception), tout comme le modèle précédent, mais maintenant vous avez également ajouté une pente aléatoire et une interception dans le facteur participants:context, qui est un nouveau facteur dont les niveaux Toutes les combinaisons des niveaux présents dans participantset contextet les effets aléatoires correspondants sont partagées par des observations ayant la même valeur pour les deux participantset context. Pour adapter ce modèle , vous aurez besoin d'avoir plusieurs observations qui ont les mêmes valeurs pour les deux participantsetcontextou bien le modèle n'est pas estimable. Dans de nombreuses situations, les groupes créés par cette variable d'interaction sont très rares et donnent lieu à des modèles d'effets aléatoires très bruyants / difficiles à adapter. Vous devez donc faire attention lorsque vous utilisez un facteur d'interaction en tant que variable de regroupement.

Fondamentalement (lire: sans devenir trop compliqué), vous devez utiliser des effets aléatoires lorsque vous pensez que les variables de regroupement définissent des "poches" d’inhomogénéité dans l’ensemble de données ou que les individus partageant le même niveau de facteur de regroupement doivent être corrélés les uns aux autres ( les individus qui ne le sont pas ne devraient pas être corrélés) - les effets aléatoires y parviennent. Si vous pensez que des observations partageant les mêmes niveaux participantset contextplus similaires que la somme des deux parties, il peut être approprié d’inclure l’effet aléatoire "interaction".

Edit: Comme @Henrik le mentionne dans les commentaires, les modèles que vous adaptez, par exemple:

lmer(ERPindex ~ practice*context + (1+practice|participants), data=base)

faire en sorte que la pente aléatoire et l'interception aléatoire soient corrélées l'une avec l'autre, et que cette corrélation soit estimée par le modèle. Pour contraindre le modèle de sorte que la pente aléatoire et l'interception aléatoire ne soient pas corrélées (et donc indépendantes, puisqu'elles sont normalement distribuées), vous devez plutôt adapter le modèle:

lmer(ERPindex ~ practice*context + (1|participants) + (practice-1|participants), 
     data=base)

Le choix entre ces deux options doit être fondé sur le fait que vous pensez, par exemple, que les participants ayant une ligne de base supérieure à la moyenne (c.-à-d. Une interception aléatoire positive) sont également susceptibles d'avoir un taux de changement supérieur à la moyenne (c.-à-d. Une pente aléatoire positive). Si tel est le cas, vous autoriseriez une corrélation entre les deux, sinon, vous les obligeriez à être indépendants. (Encore une fois, cet exemple suppose que la pente de l'effet fixe est positive).

Macro
la source
2
Je ne veux pas être pointilleux, mais le deuxième modèle ne contient-il pas non plus la corrélation entre l'ordonnée à l'origine et les pentes. Ajouter simplement les pistes devrait être: lmer(ERPindex ~ practice*context + (1|participants) + (0 + practice|participants, data=base)ou est-ce que je me trompe? (Unrelated: Excusez ma petite publication de votre message. Si vous êtes en désaccord avec cette précision, remettez-la en place.)
Henrik
@ Henrik, oui, vous avez raison, cela permet également d'estimer la corrélation entre les deux effets aléatoires. En écrivant cette réponse, j’essayais de donner une "vue d’ensemble" de ce qui se passe dans ces modèles, qui n'incluent pas la mention de la corrélation entre les effets aléatoires, qui ne comporte pas une simple description de "deux cents". En tout cas, je ne pense pas que cette omission rende l'interprétation que j'ai faite dans ma réponse incorrecte. BTW, merci pour l'édition.
Macro
1
@Henrik, j'ai ajouté une note sur la différence entre rendre les effets aléatoires corrélés et non corrélés, ce qui, à mon avis, améliore la réponse - merci de l'avoir signalé.
Macro
Merci. J'essaie de parler de la modélisation mixte et de la question de savoir comment et quand utiliser quelle structure d'effets aléatoires, ce que je voulais juste savoir. En résumé, bonne réponse (+1).
Henrik
1
@pom, merci pour le compliment. Re: votre commentaire, j'ai testé cela sur des données simulées et je pense que vous l'avez à l'envers. Le deuxième modèle sous ma modification a un paramètre de moins que le premier. En effet, le second modèle contraint la corrélation entre les deux effets aléatoires à zéro. Autre que cela les modèles sont les mêmes. Je ne suis pas sûr de ce que vous rencontrez, mais un exemple reproductible pourrait aider. Voici le mien:x <-rnorm(1000); id <- rep(1:100,each=10); y <- rnorm(1000); g <- lmer(y ~ (1+x|id)); g2 <- lmer(y ~ (1|id) + (x-1|id)); attr(logLik(g),"df"); attr(logLik(g2),"df");
Macro
13

@ Macro a donné une bonne réponse ici, je veux juste ajouter un petit point. Si certaines personnes dans votre situation utilisent:

lmer(ERPindex ~ practice*context + (practice|participants) + 
                (practice|participants:context), data=base) 

Je soupçonne qu'ils commettent une erreur. Considérez: (practice|participants)signifie qu’il existe une pente aléatoire (et une interception) pour l’effet de practicepour chacun participant, alors (practice|participants:context)qu’il existe une pente aléatoire (et une interception) pour l’effet de practicepour chaque participant by context combinaison . C'est bien, si c'est ce qu'ils veulent, mais je suppose qu'ils le souhaitent (practice:context|participants), ce qui signifie qu'il existe une pente aléatoire (et une interception) pour l'effet d'interaction de practice by contextchacun participant.

gung - Rétablir Monica
la source
4

Dans un modèle à effets aléatoires ou à effets mixtes, un effet aléatoire est utilisé lorsque vous souhaitez traiter l'effet observé comme s'il était issu d'une distribution de probabilité d'effets.

L'un des meilleurs exemples que je puisse donner concerne la modélisation des données d'essais cliniques issues d'un essai clinique multicentrique. Un effet de site est souvent modélisé comme un effet aléatoire. Cela est dû au fait que les quelque 20 sites réellement utilisés dans l’essai provenaient d’un groupe beaucoup plus vaste de sites potentiels. En pratique, la sélection n'a peut-être pas été faite au hasard, mais il peut toujours être utile de la traiter comme si elle l'était.

Bien que l'effet de site ait pu être modélisé comme un effet fixe, il serait difficile de généraliser les résultats à une population plus large si nous ne prenions pas en compte le fait que l'effet serait différent pour un ensemble sélectionné différent de 20 sites. Le traiter comme un effet aléatoire nous permet de l'expliquer de cette façon.

Michael Chernick
la source
1
-1 parce que cette réponse ne répond pas aux questions réelles ici.
amibe dit de réintégrer Monica