Method used by fitnlm to estimate coefficients
2 次查看(过去 30 天)
显示 更早的评论
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,
0 个评论
采纳的回答
William Rose
2024-2-26
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.
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Get Started with Curve Fitting Toolbox 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!