12-02-2011 08:43 PM
I run my model via proc mixed and the code is as follows:
proc mixed data=temp method=ml;
class treat time id;
model var1=treat time time*treat/s;
repeated time /type=ar(1) subject=id R rcorr;
I also run my model via proc iml. I have the likelihood functions prewritten. I try to optimize the likelihood through "nlpnrr/nlpnra" function. For my estimated parameters, I then find the Hessian computed at the estimated parameters through 'nlpfdd' function. Once I get the Hessian I am interested in taking the inverse of the hessian multiplied by minus, which is basically the Information Matrix. This Information matrix is the Variance-Covariance Matrix and the On-Diagonal elements give us the variance (Square root of it gives the standard error of the estimates).
Ideally, this two methods should give me the same results because PROC MIXED also minimizes -2 times loglikelihood by using a ridge-stabilized Newton-Raphson algorithm. In fact, the parameter estimates are pretty close (the difference could be neglected). However, the variance of the parameter estimates are different. I add a multiple (the heading ridge from the optimization procedure) of the identity matrix to the Hessian formula, but it doesn't help, even make it worse.
This bothers me a while and I couldn't figure out why this happens. Any help would be great, and appreciated.