C'est plus une question conceptuelle, mais comme je l'utilise, R
je ferai référence aux packages de R
. Si l'objectif est d'adapter un modèle linéaire à des fins de prédiction, puis de faire des prédictions là où les effets aléatoires pourraient ne pas être disponibles, y a-t-il un avantage à utiliser un modèle à effets mixtes, ou faut-il plutôt utiliser un modèle à effet fixe?
Par exemple, si j'ai des données sur le poids par rapport à la taille avec d'autres informations, et que je construis le modèle suivant en utilisant lme4
, où le sujet est un facteur à niveaux ( ):
mod1 <- lmer(weight ~ height + age + (1|subject), data=df, REML=F)
Ensuite, je veux pouvoir prédire le poids du modèle en utilisant de nouvelles données de taille et d'âge. De toute évidence, la variance par sujet dans les données originales est saisie dans le modèle, mais est-il possible d'utiliser ces informations dans la prédiction? Disons que j'ai de nouvelles données sur la taille et l'âge et que je veux prédire le poids, je peux le faire comme suit:
predict(mod1,newdata=newdf) # newdf columns for height, age, subject
Cela utilisera predict.merMod
, et je peux soit inclure une colonne pour les (nouveaux) sujets newdf
, soit définir re.form =~0
. Dans le premier cas, on ne sait pas exactement ce que le modèle fait avec les «nouveaux» facteurs sujets, et dans le second cas, la variance par sujet capturée dans le modèle sera-t-elle simplement ignorée (moyenne sur) pour la prédiction?
Dans les deux cas, il me semble qu'un modèle linéaire à effet fixe pourrait être plus approprié. En effet, si ma compréhension est correcte, alors un modèle à effet fixe devrait prédire les mêmes valeurs que le modèle mixte, si l'effet aléatoire n'est pas utilisé dans la prédiction. Cela devrait-il être le cas? Ce R
n'est pas le cas, par exemple:
mod1 <- lmer(weight ~ height + age + (1|subject), data=df, REML=F)
predict(mod1,newdata=newdf, re.form=~0) # newdf columns for height, age, subject
donne des résultats différents pour:
mod2 <- lm(weight ~ height + age, data=df)
predict(mod2,newdata=newdf) # newdf columns for height, age
la source
Réponses:
Expérience de pensée simple: vous avez mesuré le poids et la taille de 5 nourrissons après la naissance. Et vous l'avez à nouveau mesuré à partir des mêmes bébés après deux ans. Pendant ce temps, vous avez mesuré le poids et la taille de votre petite fille presque chaque semaine, ce qui lui a valu 100 paires de valeurs. Si vous utilisez un modèle d'effets mixtes, il n'y a pas de problème. Si vous utilisez un modèle à effets fixes, vous accordez un poids excessif aux mesures de votre fille, au point où vous obtiendrez presque le même modèle si vous n'utilisiez que des données d'elle. Il est donc non seulement important pour l'inférence de modéliser correctement les mesures répétées ou les structures d'incertitude, mais également pour la prédiction. En général, vous n'obtenez pas les mêmes prédictions d'un modèle à effets mixtes et d'un modèle à effets fixes (avec des hypothèses violées).
Vous ne pouvez pas prévoir pour des sujets qui ne faisaient pas partie des données originales (de formation). Encore une expérience de pensée: le nouveau sujet est obèse. Comment le modèle pourrait-il savoir qu'il se situe à l'extrémité supérieure de la distribution des effets aléatoires?
Si je vous comprends bien, alors oui. Le modèle vous donne une estimation de la valeur attendue pour la population (notez que cette estimation est toujours conditionnelle aux sujets d'origine).
la source
You can't predict for subjects which were not part of the original (training) data
; la définitionre.form=~0
et la prévision de la valeur attendue de la population ne me permettent-elles pas de faire exactement cela? Certes, le modèle n'utilise aucune information spécifique au sujet dans la prédiction, mais est-il juste de dire que l'estimation d'un modèle à effets mixtes sera toujours plus précise que celle d'un modèle à effet fixe équivalent où la variation spécifique au sujet était ignoré?re.form=~0
vous donne la prédiction au niveau de la population, qui est la meilleure que vous puissiez faire pour de nouveaux sujets.glmmLasso
package en R. L'auteur du package, Andreas Groll, a déclaré que la procédure glmmLasso utilise uniquement les effets fixes pour faire des prédictions pour de nouveaux sujets et des effets fixes + aléatoires pour les sujets existants dans la prochaine période.