Quand on me demande si je manque d’être le principal développeur de logiciels à modèles mixtes chez SAS, je réponds généralement par «oui et non». une partie de l'héritage fort qui a commencé avec le travail de Jim Goodnight sur PROC GLM et PROC VARCOMP dans les débuts de la société. Une grande gratitude va à Dave Delong, qui m'a initialement orienté dans cette direction, et à John Sall et Randy Tobias (notre plus récent Fellow ASA!), Qui ont fourni des éléments de code clés qui ont formé les débuts de PROC MIXED. Fait intéressant, le code de John était basé sur les travaux pionniers de Jennrich et Schluchter sur la modélisation de la structure de covariance (côté R du modèle mixte), tandis que le code de Randy se concentrait sur la généralisation de l'estimation REML des composantes de la variance (côté G du modèle mixte). Réunir les deux était un peu fortuit et s'est avéré fournir une technologie merveilleuse pour des applications aussi diverses que l'élevage des animaux, les essais cliniques, le contrôle de la qualité de la fabrication, l'évaluation de l'éducation, la modélisation spatio-temporelle et la génétique statistique.
Le «non» vient de la confiance dans le travail très impressionnant de nos gourous actuels: Oliver Schabenberger (PROC GLIMMIX), Chris Gotwalt (JMP), Paul Wright (EVAAS) et Tianlin Wang (PROC HPMIXED). Cela, ainsi que ma passion depuis une décennie pour la génomique et la vraie joie que procure le fait de diriger une équipe de haut niveau et de travailler avec tous les professionnels dévoués qui ont contribué au succès de JMP Genomics.
J'ai été étonné de voir à quel point la théorie des modèles mixtes est un thème unificateur dans les statistiques, englobant des méthodes telles que les méthodes empiriques de Bayes, la régression de crête, les séries chronologiques, le krigeage et les splines de lissage. Saviez-vous que vous pouvez adapter une machine à vecteurs de support à l'aide des fonctions de base radiales de PROC GLIMMIX? Dans les années 70, dans le cadre d’un retour en arrière à SAS, nous utilisons des composants de variance sur des composants principaux pour comparer quantitativement les sources de variabilité dans les données de puces à ADN. Plus récemment, nous avons étudié comment des modèles mixtes peuvent effectivement ajuster la stratification de la population dans les études d'association pangénomique. Donc, je ne peux pas sembler m'éloigner des modèles mixtes - pas que je le veuille vraiment!
Permettez-moi de conclure avec une curiosité de modèle mixte que je cherchais tout juste la semaine dernière. Considérez le code SAS suivant, qui compare un modèle de régression linéaire simple avec le même ajustement de modèle avec des effets aléatoires:
/ * simule des données pour une régression linéaire simple et compare des modèles fixes et aléatoires * /
% de graines = 2817340;
données xy;
faire pente = 1 à 5;
do nx = 1 à 10;
x1 = rannor (& seed);
x2 = rannor (& seed);
rep = 1 à 10;
y = x1 * pente + x2 * pente * 2 + rannor (& seed);
sortie;
fin;
fin;
fin;
courir;
ods exclut tout;
ods noresults;
proc données mixtes = méthode xy = ml;
par pente;
modèle y = x1 x2 / s;
ods output fitstatistics = fs covparms = cp solutionf = sf;
courir;
les ods n'en excluent aucun;
ods résultats;
titre "Ajuster les statistiques du modèle fixe";
proc sort des données = fs;
par descente;
courir;
proc print data = fs;
courir;
titre "Paramètres de covariance du modèle fixe";
proc print data = cp;
courir;
titre "Beta Hat de Fixed Model";
proc sort des données = sf;
par effet de pente;
courir;
proc print data = sf;
courir;
ods exclut tout;
ods noresults;
proc données mixtes = méthode xy = ml;
par pente;
modèle y = / s;
aléatoire x1 x2 / s;
ods output fitstatistics = fsr covparms = cpr solutionf = sfr solutionr = srr;
courir;
les ods n'en excluent aucun;
ods résultats;
titre "Fit Statistics from Random Model";
proc sort des données = fsr;
par descente;
courir;
proc print data = fsr;
courir;
titre "Paramètres de covariance à partir d'un modèle aléatoire";
proc sort des données = cpr;
par CovParm Slope;
courir;
proc print data = cpr;
courir;
titre "Beta Hat de Random Model";
proc print data = sfr;
courir;
titre "Gamma Hat from Random Model";
proc sort des données = srr;
par pente d'effet;
courir;
proc print data = srr;
courir;
Le deuxième appel PROC MIXED fait quelque chose que je n'aurais pas recommandé (jusqu'à la semaine dernière!) - d'utiliser des covariables simples dans une instruction RANDOM sans SUBJECT = effect. Il s'avère que les estimations gamma-hat (les BLUP empiriques) sont pratiquement identiques aux estimations bêta-hat du premier modèle de régression simple. La modélisation de la structure de covariance est donc intimement liée à la modélisation moyenne.
Si vous êtes vraiment dans des modèles mixtes (ou voudriez l'être), voici une question pour vous: pourquoi les estimations de la composante de variance du second modèle sont-elles approximativement égales au carré des pentes? Indice: la réponse n'est pas «oui et non».
William Idsardi a écrit:
Cet article est très intéressant et soulève une question à laquelle je m'interroge depuis un moment. Est-il prévu d’intégrer les fonctionnalités PROC GLIMMIX à JMP? Pour le moment, JMP est comme PROC MIXED en n'autorisant que les variables de réponse normales.
Martin Hermel a écrit:
Oui, ce serait trop cool d'avoir cette capacité. Il est possible de sélectionner une fonction de journal dans le modèle mixte ou REML avec un résultat binaire et des variables aléatoires, mais la procédure délivre alors un message d'erreur.
Martin Hermel a écrit:
Oui, ce serait trop cool de pouvoir utiliser GLIMMIX depuis JMP!