MATLAB: Ill-conditioned Jacobian using nlinfit

jacobiannlinfitnonlinear

When I use nlinfit function I get the warning:
Warning: The Jacobian at the
solution is ill-conditioned,
and some model parameters
may not be estimated well
(they are not identifiable).
Use caution in making
predictions.
Because I am working with the medical images, I cannot guess my starting values at each of the pixel, because there are more than 10k of them. In that case, I'm using automated selection of these values. For the most of them it works fine. However, in some cases I get the warnings like that, but the fitted curve looks also fine. How can I know if these estimated parameters are good? Fitted curve looks good, but I'm wondering if there are only these possible values for the parameters. How can I overcome this? Is there any other function to use for a non-linear fitting without getting this warning?
Thanks.
Donatas

Best Answer

You may have too many parameters. Expand the outputs from nlinfit so that you can use nlparci. If any of the 95% confidence intervals for your parameters include zero (confidence bounds of opposite signs for the same parameter), that parameter is probably not necessary in the model, especially if you are getting a good fit to your data. If you decide to change your model to eliminate those parameters, do so one parameter at a time. If all of your parameters are significant (95% confidence intervals do not include zero), then just ignore the warning.
I do not have sufficient expertise in image processing to suggest any specific changes to your model.