[R] Confindence interval for Levenberg-Marquardt fit

joerg van den hoff j.van_den_hoff at fzd.de
Wed Feb 21 13:10:56 CET 2007


On Wed, Feb 21, 2007 at 11:09:52AM +0000, Prof Brian Ripley wrote:
> Well, the algorithm used does not affect the confidence interval (provided 
> it works correctly), but what is nls.ml (presumably in some package you 
> have not mentioned) and why would I want to use an old-fashioned 
> algorithm?
is'nt this a bit strong? in what respect do you consider levenberg-marquardt
(going back to the 19-forties, I think) as old-fashioned (especially
in comparsion to the `nls' standard gauss-newton approach (both gentlemen
seem to have done their major work a bit longer ago :-))?
AFAICS levenberg-marquardt is generally appreciated for it's rapid
convergence achieved by a smooth transition from an
inverse-hessian approach to steepest descent. my own experience
with non-linear least squares minimization using this algorithm
are positive as well, but
I have not tried out the levenberg-marquardt
implementation in package `minpack.lm' (which originates from netlib.org)
and don't know if it's good. but in any case there sure are implementations
around (e.g. in the CERN MINUIT library) which have proven to be
of high quality.

`nls' sure is a _very_ valuable function, but not necessarily the
"last word" with regards to the chosen algorithm(s).


> 
> You could start nls at the solution you got from nls.ml and use confint() 
> on that.
maybe one should look at profile.nls and confint.nls and see what information
of the usual `nls' object is actually used for the confidence intervall
computation and mimick this for the `nls.lm' output? at a (admittedly)
quick glance it seems that only parameters, std.errs. and the fitted/residual
values are needed which should all be provided by nls.lm as well.
maybe one could even try to map the nls.lm results into a structure of class 
`nls' (although this would not be a clean solution, probably) in order
to use `confint.nls'?

> 
> On Wed, 21 Feb 2007, Michael Dondrup wrote:
> 
> > Dear all,
> > I would like to use the Levenberg-Marquardt algorithm for non-linear
> > least-squares regression using function nls.lm. Can anybody help  me to
> >   find a a way to compute confidence intervals on the  fitted
> > parameters as it is possible for nls (using confint.nls, which does not
> > work for nls.lm)?
> >
> > Thank you for your help
> > Michael
> 
>



More information about the R-help mailing list