[R] Singular Gradient in nls

Katharine Mullen kate at few.vu.nl
Fri Mar 28 22:37:32 CET 2008


A QR decomposition is done on the weighted gradient matrix; if the
estimate of the rank that results is less than the number of columns in
the gradient (the number of nonlinear parameters), or less than the number
of rows (the number of observations), nls stops.

You can see the calls in the source code of nlsModel
(https://svn.r-project.org/R/trunk/src/library/stats/R/nls.R).

On Fri, 28 Mar 2008, glenn andrews wrote:

> //Referring to the response  posted many years ago, copied below, what
> is the specific criterium used for singularity of the gradient matrix?
> Is a Singular Value Decomposition used to determine the singular
> values?  Is it the gradient matrix condition number  or some other
> criterion for determining singularity?
> //
>
> //Glenn
> //
>
> /
> /
>
> /> What does the error 'singular gradient' mean during a nonlinear
> regression? /
>
> The gradient matrix to which the message refers is the derivative of
> the vector of predicted values with respect to the vector of
> parameters at the current parameter estimates. If you have 20
> observations and three parameters, this will be a matrix with 20 rows
> and three columns.
>
> For the model to be estimable in a region of the current estimates,
> this matrix must have full column rank. When it fails to have full
> column rank the "singular gradient" message is given and the
> iterations stop.
>
> Generally this indicates that the model is overparameterized or that
> the starting estimates were poorly chosen. Try using trace = TRUE in
> the call to nls and watching the progress of the iterations. This
> will often show that the estimates are wandering into unreasonable
> regions of the parameter space.
>
> --
> Douglas Bates                            bates at stat.wisc.edu
> Statistics Department                    608/262-2598
> University of Wisconsin - Madison        http://www.stat.wisc.edu/~bates/ <http://www.stat.wisc.edu/%7Ebates/>
> -.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
> r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html <http://www.ci.tuwien.ac.at/%7Ehornik/R/R-FAQ.html>
> Send "info", "help", or "[un]subscribe"
> (in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
> _._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
>
>
> 	[[alternative HTML version deleted]]
>
> ______________________________________________
> 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