[R] [Re: Significance of confidence intervals in the Non-Linear Least Squares Program.]
glenn andrews
ga at aggies.com
Fri Mar 28 00:43:57 CET 2008
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.
>>
>
>
>
More information about the R-help
mailing list