Estoy haciendo un estudio de simulación que requiere estimaciones de arranque obtenidas de un modelo mixto lineal generalizado (en realidad, el producto de dos estimaciones para efectos fijos, una de un GLMM y otra de un LMM). Hacer bien el estudio requeriría alrededor de 1000 simulaciones con 1000 o 1500 repeticiones de arranque cada vez. Esto lleva una cantidad significativa de tiempo en mi computadora (muchos días).
How can I speed up the computation of these fixed effects?
Para ser más específico, tengo sujetos que se miden repetidamente de tres maneras, dando lugar a las variables X, M e Y, donde X e M son continuos e Y es binario. Tenemos dos ecuaciones de regresión Y ∗ = β 0 + β 1 X + β 2 M + ϵ 2 donde Y ∗ es la variable continua latente subyacente para Y y los errores no son iid. La estadística que queremos arrancar es α 1 β 2
. Por lo tanto, cada replicación de arranque requiere ajustar un LMM y un GLMM. Mi código R es (usando lme4)
stat=function(dat){
a=fixef(lmer(M~X+(X|person),data=dat))["X"]
b=fixef(glmer(Y~X+M+(X+M|person),data=dat,family="binomial"))["M"]
return(a*b)
}
Me doy cuenta de que obtengo la misma estimación para si solo lo ajusto como un modelo lineal, por lo que ahorra algo de tiempo, pero el mismo truco no funciona para β 2 .
¿Solo necesito comprar una computadora más rápida? :)
Rprof
.