[R] [Re: Significance of confidence intervals in the Non-Linear Least Squares Program.]

From: glenn andrews <ga_at_aggies.com>
Date: Thu, 27 Mar 2008 18:43:57 -0500

What should I be looking for in the output of the nls() routine that alerts me to the fact that the Hessian is potentially ill-conditioned?

Glenn

Peter Dalgaard wrote:

> glenn andrews wrote:
>
>> Thanks for the response. I was not very clear in my original request.
>>
>> What I am asking is if in a non-linear estimation problem using
>> nls(), as the condition number of the Hessian matrix becomes larger,
>> will the t-values of one or more of the parameters being estimated in
>> general become smaller in absolute value -- that is, are low t-values
>> a sign of an ill-conditioned Hessian?
>>
>
> In a word: no. Ill-conditioning essentially means that there are one
> or more directions in parameter space along which estimation is
> unstable. Along such directions you get a large SE, but also a large
> variability of the estimate, resulting in t values at least in the
> usual "-2 to +2" range. The large variation may swamp a true effect
> along said direction, though.
>
>> Typical nls() ouput:
>>
>> Formula: y ~ (a + b * log(c * x1^d + (1 - c) * x2^d))
>>
>> Parameters:
>> Estimate Std. Error t value Pr(>|t|) a 0.11918 0.07835 1.521
>> 0.1403 b -0.34412 0.27683 -1.243 0.2249 c 0.33757 0.13480
>> 2.504 0.0189 *
>> d -2.94165 2.25287 -1.306 0.2031
>> Glenn
>>
>> Prof Brian Ripley wrote:
>>
>>
>>
>>> On Wed, 26 Mar 2008, glenn andrews wrote:
>>>
>>>
>>>
>>>> I am using the non-linear least squares routine in "R" -- nls. I
>>>> have a
>>>> dataset where the nls routine outputs tight confidence intervals on
>>>> the
>>>> 2 parameters I am solving for.
>>>>
>>>
>>> nls() does not ouptut confidence intervals, so what precisely did
>>> you do?
>>> I would recommend using confint().
>>>
>>> BTW, as in most things in R, nls() is 'a' non-linear least squares
>>> routine: there are others in other packages.
>>>
>>>
>>>
>>>> As a check on my results, I used the Python SciPy leastsq module on
>>>> the
>>>> same data set and it yields the same answer as "R" for the
>>>> coefficients. However, what was somewhat surprising was the the
>>>> condition number of the covariance matrix reported by the SciPy
>>>> leastsq
>>>> program = 379.
>>>>
>>>> Is it possible to have what appear to be tight confidence intervals
>>>> that
>>>> are reported by nls, while in reality they mean nothing because of the
>>>> ill-conditioned covariance matrix?
>>>>
>>>
>>> The covariance matrix is not relevant to profile-based confidence
>>> intervals, and its condition number is scale-dependent whereas the
>>> estimation process is very much less so.
>>>
>>> This is really off-topic here (it is about misunderstandings about
>>> least-squares estimation), so please take it up with your
>>> statistical advisor.
>>>
>>>
>>
>>
>> ______________________________________________
>> R-help_at_r-project.org mailing list
>> https://stat.ethz.ch/mailman/listinfo/r-help
>> PLEASE do read the posting guide
>> http://www.R-project.org/posting-guide.html
>> and provide commented, minimal, self-contained, reproducible code.
>>
>
>
>



R-help_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code. Received on Thu 27 Mar 2008 - 23:46:00 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Fri 28 Mar 2008 - 08:30:25 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive