From: Dave Fournier on
On Wed, 11 Apr 2007 17:26:20 -0700, Dale McLerran <stringplayer_2(a)YAHOO.COM>
wrote:

>Dave,
>
>I tried your ADMB executable and I also fit the negative binomial
>mixed model in NLMIXED. Given my parameterization of the NBMM,
>I had no trouble obtaining convergence from starting values which
>were all zero for the mean model, 1 for the variance of the random
>intercept, 1/e for the variance of the random slope, and 0 for the
>covariance between the two random effects. I obtained a value for
>-LL=624.43, smaller than the value returned by the ADMB executable
>which returned -LL=624.55. I tried other starting values as well
>and obtained results that were quite consistent, unlike what Booth
>et al. observed. The estimate of the random slope effect and the
>estimate of the covariance were both very close to zero, and no
>standard error was produced for the covariance. Since the
>random slope is close to zero variance, then there can be
>no covariance, so a missing value for the standard error of the
>covariance is not unreasonable.
>
>I will state that ADMB returned results on my machine in about 45
>seconds vs 9 minutes, 11 seconds for NLMIXED. A lot of the time
>required by the NLMIXED procedure was spent on the last few
>iterations. I think that I could get the time for SAS down to
>something not too much greater than what I observed for ADMB.
>The ADMB results are for compiled code that may have been optimized
>for the problem, so I don't know that time comparisons are completely
>meaningful. But, I suspect that ADMB may be faster than the SAS
>NLMIXED procedure.
>
>One thing that I am not clear about is your parameterization of
>the random effect covariance structure. The file nbmm.par returns
>estimates in tmpL of
>
>-0.00729744 -0.763550 -7.92662
>
>What is the interpretation of these parameters? Since they are
>all negative, I know that none can be random effect variance
>estimates. I suspect that the last two are log(V(int)) and
>log(V(slope)), but I really can't tell. That would leave the
>first parameter in tmpL to be some function of the covariance,
>but what function?
>
>
>Dale McLerran
>
>
>--- Dave Fournier <otter(a)OTTER-RSCH.COM> wrote:
>
>> There is also a discussion of the Booth et al. paper and
>> a comparison of their SAS results with AD Model Builder's
>> random effects module at
>>
>> http://www.otter-rsch.com/admbre/examples/nbmm/nbmm.html
>>
>> as well as free ZINB MM software you can use with R
>>
>> http://www.otter-rsch.com/admbre/examples/glmmadmb/glmmADMB.html
>>
>> which was built with AD Model Builder to illustrate the power and
>> flexibility of the ADMB software
>>
>
>
>---------------------------------------
>Dale McLerran
>Fred Hutchinson Cancer Research Center
>mailto: dmclerra(a)NO_SPAMfhcrc.org
>Ph: (206) 667-2926
>Fax: (206) 667-5977

Dale,

The code on our web site is more general negative binomial model
code we had been developing for our R model. It was not optimized
for the epilepsy data, and does not exploit the simple structure of
that problem. That is why it took so long (45 seconds you say) to run.
Also it is calculating just the Laplace approximation not
adaptive Gauss-Hermite integration which may explain the difference in our
log-likelihood values. I have put the code
which we used for our paper which does exploit the simple structre
for this example up on my web site at

http://www.otter-rsch.com/admbre/examples/nbmm/newepil.zip

You can run a say 50 point adaptive gauss-Hermite integration with the
command

epil -ainp epil.par -gh 50

On my computer this take under 10 seconds so that it appears that
AD Model builder is about 50 times faster than SAS NLMIXED for this problem
and has a log-like value of
-624.418
I get the same value for 100 points as well. How many points did you use?
I look forward to hearing aobut the performance of your optimzed SAS code on
this problem.

Without the -gh 50 i.e. just Laplace approximation it takes under 5 seconds
and produces the estimate -624.551 as before.

To understand the results look in the epil.std file where the parameters
with their estimated standard deviations are reported.

Dave
From: Dale McLerran on
--- Dave Fournier <otter(a)OTTER-RSCH.COM> wrote:

> On Wed, 11 Apr 2007 17:26:20 -0700, Dale McLerran
> <stringplayer_2(a)YAHOO.COM>
> wrote:
>
> >
> >What is the interpretation of these parameters? Since they are
> >all negative, I know that none can be random effect variance
> >estimates. I suspect that the last two are log(V(int)) and
> >log(V(slope)), but I really can't tell. That would leave the
> >first parameter in tmpL to be some function of the covariance,
> >but what function?
> >
> >
> >Dale McLerran
> >
> >
> >--- Dave Fournier <otter(a)OTTER-RSCH.COM> wrote:
> >
>
> Dale,
>
> The code on our web site is more general negative binomial model
> code we had been developing for our R model. It was not optimized
> for the epilepsy data, and does not exploit the simple structure of
> that problem. That is why it took so long (45 seconds you say) to
> run.
> Also it is calculating just the Laplace approximation not
> adaptive Gauss-Hermite integration which may explain the difference
> in our
> log-likelihood values. I have put the code
> which we used for our paper which does exploit the simple structre
> for this example up on my web site at
>
> http://www.otter-rsch.com/admbre/examples/nbmm/newepil.zip
>
> You can run a say 50 point adaptive gauss-Hermite integration with
> the
> command
>
> epil -ainp epil.par -gh 50
>
> On my computer this take under 10 seconds so that it appears that
> AD Model builder is about 50 times faster than SAS NLMIXED for this
> problem
> and has a log-like value of
> -624.418
> I get the same value for 100 points as well. How many points did you
> use?

I didn't specify the number of quadrature points. I just used the
NLMIXED default behavior which allows NLMIXED to adaptively
select the number of quadrature points.

> I look forward to hearing aobut the performance of your optimzed SAS
> code on
> this problem.

To be honest, I really am not interested in spending time to
optimize the NLMIXED. I have too many other things to do right
now. I am willing to cede that ADMB is faster than NLMIXED for
the given problem (and many other problems that you have presented
in the past in this forum).

>
> Without the -gh 50 i.e. just Laplace approximation it takes under 5
> seconds
> and produces the estimate -624.551 as before.
>
> To understand the results look in the epil.std file where the
> parameters
> with their estimated standard deviations are reported.
>

I think you mean the nbmm.std file. There is no epil.std file
produced. I had already looked at that file and the tmpL vector
is the same there as in the file nbmm.par. But neither informs
me how to interpret this vector. Since all of the values are
negative, this is not a covariance matrix estimate. However, I
think that it is a reparameterization of the covariance matrix.
I would note, too, that the file nbmm.std includes a parameter
sigma. What is this sigma? How does it enter the model?

Dale


---------------------------------------
Dale McLerran
Fred Hutchinson Cancer Research Center
mailto: dmclerra(a)NO_SPAMfhcrc.org
Ph: (206) 667-2926
Fax: (206) 667-5977
---------------------------------------



____________________________________________________________________________________
No need to miss a message. Get email on-the-go
with Yahoo! Mail for Mobile. Get started.
http://mobile.yahoo.com/mail
From: Dave Fournier on
On Thu, 12 Apr 2007 13:22:14 -0700, Dale McLerran <stringplayer_2(a)YAHOO.COM>
wrote:

>--- Dave Fournier <otter(a)OTTER-RSCH.COM> wrote:
>
>> On Wed, 11 Apr 2007 17:26:20 -0700, Dale McLerran
>> <stringplayer_2(a)YAHOO.COM>
>> wrote:
>>
>> >
>> >What is the interpretation of these parameters? Since they are
>> >all negative, I know that none can be random effect variance
>> >estimates. I suspect that the last two are log(V(int)) and
>> >log(V(slope)), but I really can't tell. That would leave the
>> >first parameter in tmpL to be some function of the covariance,
>> >but what function?
>> >
>> >
>> >Dale McLerran
>> >
>> >
>> >--- Dave Fournier <otter(a)OTTER-RSCH.COM> wrote:
>> >
>>
>> Dale,
>>
>> The code on our web site is more general negative binomial model
>> code we had been developing for our R model. It was not optimized
>> for the epilepsy data, and does not exploit the simple structure of
>> that problem. That is why it took so long (45 seconds you say) to
>> run.
>> Also it is calculating just the Laplace approximation not
>> adaptive Gauss-Hermite integration which may explain the difference
>> in our
>> log-likelihood values. I have put the code
>> which we used for our paper which does exploit the simple structre
>> for this example up on my web site at
>>
>> http://www.otter-rsch.com/admbre/examples/nbmm/newepil.zip
>>
>> You can run a say 50 point adaptive gauss-Hermite integration with
>> the
>> command
>>
>> epil -ainp epil.par -gh 50
>>
>> On my computer this take under 10 seconds so that it appears that
>> AD Model builder is about 50 times faster than SAS NLMIXED for this
>> problem
>> and has a log-like value of
>> -624.418
>> I get the same value for 100 points as well. How many points did you
>> use?
>
>I didn't specify the number of quadrature points. I just used the
>NLMIXED default behavior which allows NLMIXED to adaptively
>select the number of quadrature points.
>
>> I look forward to hearing aobut the performance of your optimzed SAS
>> code on
>> this problem.
>
>To be honest, I really am not interested in spending time to
>optimize the NLMIXED. I have too many other things to do right
>now. I am willing to cede that ADMB is faster than NLMIXED for
>the given problem (and many other problems that you have presented
>in the past in this forum).
>
>>
>> Without the -gh 50 i.e. just Laplace approximation it takes under 5
>> seconds
>> and produces the estimate -624.551 as before.
>>
>> To understand the results look in the epil.std file where the
>> parameters
>> with their estimated standard deviations are reported.
>>
>
>I think you mean the nbmm.std file. There is no epil.std file
>produced. I had already looked at that file and the tmpL vector
>is the same there as in the file nbmm.par. But neither informs
>me how to interpret this vector. Since all of the values are
>negative, this is not a covariance matrix estimate. However, I
>think that it is a reparameterization of the covariance matrix.
>I would note, too, that the file nbmm.std includes a parameter
>sigma. What is this sigma? How does it enter the model?
>
>Dale
>

Dale,

I'm sorry, I did not mean to irritate you. I did not bring up the
matter of comparative timings -- you did, and implied that maybe
the ADMB code was faster because it was optimized for the problem.
I simply responded to that with the observation that the nbmm.exe
on the web site was not the optimized code we used in our
comparisons. Also you referred to the difference in log-likelihood values
which necessitated my bringing up the the matter of the optimized
model as only it could
do the Gauss-Hermite integration so that a comparison with SAS could be
done. Finally you first mentioned that you could do better with
optimzied SAS code for the model, not I, but I'm sure you have better things
to do with your time.

The file epil.std is in the zip file on my web site which I referred to in
my last post. I'll send it to you off list as I assume that everone else has
better things to do as well.

But ... you would think someone would be interested if ADMB is really 50
times faster than SAS for this problem (not saying it is yet of course) or
maybe people have nothing better to do than to watch their SAS programs running.

Dave
From: Dale McLerran on
--- Dave Fournier <otter(a)OTTER-RSCH.COM> wrote:
> >>
> >
> >I didn't specify the number of quadrature points. I just used the
> >NLMIXED default behavior which allows NLMIXED to adaptively
> >select the number of quadrature points.
> >
> >> I look forward to hearing aobut the performance of your optimzed
> SAS
> >> code on
> >> this problem.
> >
> >To be honest, I really am not interested in spending time to
> >optimize the NLMIXED. I have too many other things to do right
> >now. I am willing to cede that ADMB is faster than NLMIXED for
> >the given problem (and many other problems that you have presented
> >in the past in this forum).
> >
> >>
> >> Without the -gh 50 i.e. just Laplace approximation it takes under
> 5
> >> seconds
> >> and produces the estimate -624.551 as before.
> >>
> >> To understand the results look in the epil.std file where the
> >> parameters
> >> with their estimated standard deviations are reported.
> >>
> >
> >I think you mean the nbmm.std file. There is no epil.std file
> >produced. I had already looked at that file and the tmpL vector
> >is the same there as in the file nbmm.par. But neither informs
> >me how to interpret this vector. Since all of the values are
> >negative, this is not a covariance matrix estimate. However, I
> >think that it is a reparameterization of the covariance matrix.
> >I would note, too, that the file nbmm.std includes a parameter
> >sigma. What is this sigma? How does it enter the model?
> >
> >Dale
> >
>
> Dale,
>
> I'm sorry, I did not mean to irritate you.

I'm sorry if I sounded irritated. That was not at all how I felt.
I thought that I just said that I didn't have the time right now
to attempt any optimization of a negative binomial mixed model.

> I did not bring up the
> matter of comparative timings -- you did, and implied that maybe
> the ADMB code was faster because it was optimized for the problem.

Yes, I did bring up the issue of comparative timings. Even
without knowing whether the ADMB executable was optimized somehow
for the particular problem, I ceded that ADMB was probably faster
than NLMIXED. I really don't know how much faster ADMB is. That
might need some impartial party to examine. I just stated that
ADMB did appear faster, but that I could not really tell what part
of that might have been due to better routines under the hood for
ADMB and what might have been due to some optimization for this
particular problem. But I'll take your word for it that you have
not optimized the ADMB code for this problem.

> I simply responded to that with the observation that the nbmm.exe
> on the web site was not the optimized code we used in our
> comparisons. Also you referred to the difference in log-likelihood
> values
> which necessitated my bringing up the the matter of the optimized
> model as only it could
> do the Gauss-Hermite integration so that a comparison with SAS could
> be
> done. Finally you first mentioned that you could do better with
> optimzied SAS code for the model, not I, but I'm sure you have better
> things
> to do with your time.

As a matter of fact, yes, because I am not paid for any work that
I do here. I have about five different projects that all want
analysis done yesterday, not tomorrow. I am really under the gun
and it does not serve my interests right now to pursue any NLMIXED
optimization. It is not that I have no interest in the matter.
I don't have the time to invest in attempting to optimize NLMIXED
to have better performance.

>
> The file epil.std is in the zip file on my web site which I referred
> to in
> my last post. I'll send it to you off list as I assume that everone
> else has
> better things to do as well.

Thanks for the off-list mail. I did look at it. The model fitted
there was apparently the intercept only model. No complaints about
that. In epil.std, there are parameters identified as log_sigma
and log_alpha. After the EBLUPS, there are estimates of sigma and
alpha. So, I know what is the interpretation of the parameters in
epil.std.

But in the file nbmm.std which is generated by the downloadable
executable, we have

index name value std dev
1 b -1.3225e+000 1.1974e+000
2 b 8.8428e-001 1.3115e-001
3 b -9.2839e-001 4.0178e-001
4 b 4.7270e-001 3.5287e-001
5 b -2.6842e-001 1.7322e-001
6 b 3.3629e-001 2.0425e-001
7 tmpL -7.2974e-003 2.0001e-001
8 tmpL -7.6355e-001 1.3554e-001
9 tmpL -7.9266e+000 4.9398e+002
10 log_alpha 2.0092e+000 2.3599e-001

followed by EBLUPS and then a couple of estimates identified again
as sigma and alpha. My understanding of the nbmm.std file is that
the model fit was the random intercept and slope model. But I
can't tell from the labels for parameters 7, 8, and 9 (which are
all labeled as tmpL) what the parameter interpretation is. I
would not be able to report these results simply because I don't
understand them. I believe that these three parameters all are
part of a parameterization of the random effect covariance matrix.
But I just do not know what is produced here.


>
> But ... you would think someone would be interested if ADMB is really
> 50
> times faster than SAS for this problem (not saying it is yet of
> course) or
> maybe people have nothing better to do than to watch their SAS
> programs running.

I am certainly not against ADMB. But certainly you recognize that
any new language, even if it can run a program faster than the
competition, has learning costs associated which may not make it
profitable to invest in the "better" program. It depends on how
often the program is to be used, among other factors. And if it
takes more of my time to write the program than it does to execute
the program, there is not much incentive to get the new, faster
software.

I've got to say, too, that when looking at examples which you post
on your web site, I don't find ADMB to be intuitive. The response
vector is separated from the fixed effect design matrix, random
effect design matrix, and subject indicator vector. Also, when
I look at the code in

http://www.otter-rsch.com/admbre/examples/nbmm/nbmm.tpl

I find it much more difficult to understand than the SAS code
shown below:


proc nlmixed data=nbmm_epil;
parms b0=0 b1=0 b2=0 b3=0 b4=0 b5=0 k=1 log_s2u=0 log_s2u2=-1 rho=0;
eta_nb = b0 + b1*x1 + b2*x2 + b3*x3 + b4*x4 + b5*x5 + u1 + u2*z2;
mean = exp(eta_nb);
like = exp(lgamma(y+(1/k)) - lgamma(y+1) - lgamma(1/k) +
y*log(k*mean) - (y+(1/k))*log(1+k*mean));
loglike = log(like);
model y ~ general(loglike);
random u1 u2 ~ normal([0,0], [exp(2*log_s2u),
rho*exp(log_s2u + log_s2u2),
exp(2*log_s2u2)])
subject=subject;
estimate "s2u" exp(2*log_s2u);
estimate "s2u2" exp(2*log_s2u2);
estimate "cov" rho*exp(log_s2u + log_s2u2);
estimate "alpha" 1/k;
run;


It is not my intent to be contentious. I think you probably have
a good product. ADMB does execute faster than NLMIXED, and you
have argued in the past that there are problems that ADMB can
solve that NLMIXED cannot. I don't really know if that is or is
not true. I have found NLMIXED to be pretty flexible.

One last point. I know that you did not make the claim that NLMIXED
had difficulty estimating the NBMM model with both random intercept
and random slope in the epilepsy data. That was straight from
Booth, et al. But since you are hanging out in SAS-L promoting
ADMB here and pointedly stating that ADMB does better in this
particular model/data problem, I thought that I should see if the
problem reported by Booth was a problem with NLMIXED or with the
way that Booth parameterized the NLMIXED code. I believe that it
is a problem with the way that Booth parameterized the NLMIXED
code since I had no trouble with convergence. But I can imagine
a different parameterization of the random effect covariance matrix
causing considerable problems with convergence. That is why you
and I both employ a design in which the covariance is parameterized
as exp(log_var). That really protects against estimation problems
when the variance is at or near zero, doesn't it?!

Dale


---------------------------------------
Dale McLerran
Fred Hutchinson Cancer Research Center
mailto: dmclerra(a)NO_SPAMfhcrc.org
Ph: (206) 667-2926
Fax: (206) 667-5977
---------------------------------------



____________________________________________________________________________________
Looking for earth-friendly autos?
Browse Top Cars by "Green Rating" at Yahoo! Autos' Green Center.
http://autos.yahoo.com/green_center/
From: Jeff Miller on
I don't really have time to get too much into this either right now...and
have only been skimming these posts. But, I am interested.

I can say that I had problems with the quasi-Newton in SAS and wound up
switching to R for that reason. I was able to converge successfully quite
frequently in a Monte Carlo using the BFGS and Nelder-Mead (in place of
SAS's quasi-Newton). Yes, it was a bit slower but it was worth it. They
worked fine for the ZIP, NB-ZIP, Hurdle, and NB-Hurdle. (Of course, NB-ZIP,
as usual, had the most convergence problems but not anything ridiculous
(except in one condition but that's a different story)).

I'm far from being an optimization-expert. Any comments on this that might
persuade me to try SAS again without having to spend hours programming stuff
would that ideally be built in the the proc?

Thanks,
Jeff

-----Original Message-----
From: SAS(r) Discussion [mailto:SAS-L(a)LISTSERV.UGA.EDU] On Behalf Of Dale
McLerran
Sent: Thursday, April 12, 2007 8:26 PM
To: SAS-L(a)LISTSERV.UGA.EDU
Subject: Re: PAPER ON ZERO-INFLATED NEGATIVE bINOM

--- Dave Fournier <otter(a)OTTER-RSCH.COM> wrote:
> >>
> >
> >I didn't specify the number of quadrature points. I just used the
> >NLMIXED default behavior which allows NLMIXED to adaptively select
> >the number of quadrature points.
> >
> >> I look forward to hearing aobut the performance of your optimzed
> SAS
> >> code on
> >> this problem.
> >
> >To be honest, I really am not interested in spending time to optimize
> >the NLMIXED. I have too many other things to do right now. I am
> >willing to cede that ADMB is faster than NLMIXED for the given
> >problem (and many other problems that you have presented in the past
> >in this forum).
> >
> >>
> >> Without the -gh 50 i.e. just Laplace approximation it takes under
> 5
> >> seconds
> >> and produces the estimate -624.551 as before.
> >>
> >> To understand the results look in the epil.std file where the
> >> parameters with their estimated standard deviations are reported.
> >>
> >
> >I think you mean the nbmm.std file. There is no epil.std file
> >produced. I had already looked at that file and the tmpL vector
> >is the same there as in the file nbmm.par. But neither informs
> >me how to interpret this vector. Since all of the values are
> >negative, this is not a covariance matrix estimate. However, I
> >think that it is a reparameterization of the covariance matrix.
> >I would note, too, that the file nbmm.std includes a parameter
> >sigma. What is this sigma? How does it enter the model?
> >
> >Dale
> >
>
> Dale,
>
> I'm sorry, I did not mean to irritate you.

I'm sorry if I sounded irritated. That was not at all how I felt.
I thought that I just said that I didn't have the time right now
to attempt any optimization of a negative binomial mixed model.

> I did not bring up the
> matter of comparative timings -- you did, and implied that maybe
> the ADMB code was faster because it was optimized for the problem.

Yes, I did bring up the issue of comparative timings. Even
without knowing whether the ADMB executable was optimized somehow
for the particular problem, I ceded that ADMB was probably faster
than NLMIXED. I really don't know how much faster ADMB is. That
might need some impartial party to examine. I just stated that
ADMB did appear faster, but that I could not really tell what part
of that might have been due to better routines under the hood for
ADMB and what might have been due to some optimization for this
particular problem. But I'll take your word for it that you have
not optimized the ADMB code for this problem.

> I simply responded to that with the observation that the nbmm.exe
> on the web site was not the optimized code we used in our
> comparisons. Also you referred to the difference in log-likelihood
> values
> which necessitated my bringing up the the matter of the optimized
> model as only it could
> do the Gauss-Hermite integration so that a comparison with SAS could
> be
> done. Finally you first mentioned that you could do better with
> optimzied SAS code for the model, not I, but I'm sure you have better
> things
> to do with your time.

As a matter of fact, yes, because I am not paid for any work that
I do here. I have about five different projects that all want
analysis done yesterday, not tomorrow. I am really under the gun
and it does not serve my interests right now to pursue any NLMIXED
optimization. It is not that I have no interest in the matter.
I don't have the time to invest in attempting to optimize NLMIXED
to have better performance.

>
> The file epil.std is in the zip file on my web site which I referred
> to in
> my last post. I'll send it to you off list as I assume that everone
> else has
> better things to do as well.

Thanks for the off-list mail. I did look at it. The model fitted
there was apparently the intercept only model. No complaints about
that. In epil.std, there are parameters identified as log_sigma
and log_alpha. After the EBLUPS, there are estimates of sigma and
alpha. So, I know what is the interpretation of the parameters in
epil.std.

But in the file nbmm.std which is generated by the downloadable
executable, we have

index name value std dev
1 b -1.3225e+000 1.1974e+000
2 b 8.8428e-001 1.3115e-001
3 b -9.2839e-001 4.0178e-001
4 b 4.7270e-001 3.5287e-001
5 b -2.6842e-001 1.7322e-001
6 b 3.3629e-001 2.0425e-001
7 tmpL -7.2974e-003 2.0001e-001
8 tmpL -7.6355e-001 1.3554e-001
9 tmpL -7.9266e+000 4.9398e+002
10 log_alpha 2.0092e+000 2.3599e-001

followed by EBLUPS and then a couple of estimates identified again
as sigma and alpha. My understanding of the nbmm.std file is that
the model fit was the random intercept and slope model. But I
can't tell from the labels for parameters 7, 8, and 9 (which are
all labeled as tmpL) what the parameter interpretation is. I
would not be able to report these results simply because I don't
understand them. I believe that these three parameters all are
part of a parameterization of the random effect covariance matrix.
But I just do not know what is produced here.


>
> But ... you would think someone would be interested if ADMB is really
> 50
> times faster than SAS for this problem (not saying it is yet of
> course) or
> maybe people have nothing better to do than to watch their SAS
> programs running.

I am certainly not against ADMB. But certainly you recognize that
any new language, even if it can run a program faster than the
competition, has learning costs associated which may not make it
profitable to invest in the "better" program. It depends on how
often the program is to be used, among other factors. And if it
takes more of my time to write the program than it does to execute
the program, there is not much incentive to get the new, faster
software.

I've got to say, too, that when looking at examples which you post
on your web site, I don't find ADMB to be intuitive. The response
vector is separated from the fixed effect design matrix, random
effect design matrix, and subject indicator vector. Also, when
I look at the code in

http://www.otter-rsch.com/admbre/examples/nbmm/nbmm.tpl

I find it much more difficult to understand than the SAS code
shown below:


proc nlmixed data=nbmm_epil;
parms b0=0 b1=0 b2=0 b3=0 b4=0 b5=0 k=1 log_s2u=0 log_s2u2=-1 rho=0;
eta_nb = b0 + b1*x1 + b2*x2 + b3*x3 + b4*x4 + b5*x5 + u1 + u2*z2;
mean = exp(eta_nb);
like = exp(lgamma(y+(1/k)) - lgamma(y+1) - lgamma(1/k) +
y*log(k*mean) - (y+(1/k))*log(1+k*mean));
loglike = log(like);
model y ~ general(loglike);
random u1 u2 ~ normal([0,0], [exp(2*log_s2u),
rho*exp(log_s2u + log_s2u2),
exp(2*log_s2u2)])
subject=subject;
estimate "s2u" exp(2*log_s2u);
estimate "s2u2" exp(2*log_s2u2);
estimate "cov" rho*exp(log_s2u + log_s2u2);
estimate "alpha" 1/k;
run;


It is not my intent to be contentious. I think you probably have
a good product. ADMB does execute faster than NLMIXED, and you
have argued in the past that there are problems that ADMB can
solve that NLMIXED cannot. I don't really know if that is or is
not true. I have found NLMIXED to be pretty flexible.

One last point. I know that you did not make the claim that NLMIXED
had difficulty estimating the NBMM model with both random intercept
and random slope in the epilepsy data. That was straight from
Booth, et al. But since you are hanging out in SAS-L promoting
ADMB here and pointedly stating that ADMB does better in this
particular model/data problem, I thought that I should see if the
problem reported by Booth was a problem with NLMIXED or with the
way that Booth parameterized the NLMIXED code. I believe that it
is a problem with the way that Booth parameterized the NLMIXED
code since I had no trouble with convergence. But I can imagine
a different parameterization of the random effect covariance matrix
causing considerable problems with convergence. That is why you
and I both employ a design in which the covariance is parameterized
as exp(log_var). That really protects against estimation problems
when the variance is at or near zero, doesn't it?!

Dale


---------------------------------------
Dale McLerran
Fred Hutchinson Cancer Research Center
mailto: dmclerra(a)NO_SPAMfhcrc.org
Ph: (206) 667-2926
Fax: (206) 667-5977
---------------------------------------



____________________________________________________________________________
________
Looking for earth-friendly autos?
Browse Top Cars by "Green Rating" at Yahoo! Autos' Green Center.
http://autos.yahoo.com/green_center/