Borrar filtros
Borrar filtros

Method used by fitnlm to estimate coefficients

8 visualizaciones (últimos 30 días)
Alex el 26 de Feb. de 2024
Comentada: William Rose el 26 de Feb. de 2024
Hello everyone,
I came across the description of fitnlm (non-linear fit model), which states, "The coefficients are estimated using an iterative procedure starting from the initial values in the vector BETA0." I assume that the estimation is done through maximum likelihood, although it's not explicitly mentioned.
Could someone provide assistance with this question?
Best regards,

Respuesta aceptada

William Rose
William Rose el 26 de Feb. de 2024
By default, fitnlm() minimizes the sum squared error. It uses the Levenberg-Marquardt algorithm to find its way downhill. MInimizing the sum squared error is the max likelhihood esitmator (MLE), if the errors are normally distributed. fitnlm() also has options to change the above behavior. For example, you can specify weights for the errors. You can specify different error models - for example, you can specify that the errors are proportional to the magnitude of the (modeled) signal. I like that one, since I have had experiments and transducers where that seemed to be the case - the force signal got noiser as the force got larger. You can specify robust options, so that instead of minimizing the (weighted) sum squared error, it minimizes something else. Some of these robust options are the MLE for certain other error distributions that have heavier tails than the normal distribution. See here for more.
Good luck with your fitting.

Más respuestas (0)


Más información sobre Get Started with Curve Fitting Toolbox en Help Center y File Exchange.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by