Initial values in nlinfit or fitnlm

13 次查看(过去 30 天)
I am trying to run a non-linear multiple variable model in Matlab. The model has about 20 coefficients. I have been using 1s as my initial values in developing the model, and my model has an acceptable R2 value and good residual plots. However, I am not sure if the generated coefficients are sensitive to the initial values that were assigned by me.
This begs the question of whether one can check if the generated coefficient values are highly sensitive to the assigned initial values? Or one should do it manually, ie test the model with different set of initial values and compare the RMSE of the model?

采纳的回答

Star Strider
Star Strider 2017-6-26
A model with 20 parameters is likely going to be a challenge. If you have any doubts — and if you have the Global Optimization Toolbox — use the patternsearch (link) function to find the best parameter set. Another option is the genetic algorithm, the Global Optimization Toolbox ga (link) function.
I would also use the coefCI (link) function to determine if any of the confidence intervals for the coefficients (parameters) include zero, i.e. have opposite signs. If they do, they are not required for the model, since they are not statistically different from zero. This can help you ‘trim’ your model.
  22 个评论
Star Strider
Star Strider 2020-8-21
This should be a new Question.
It does not directly relate to the current thread. I am not going to respond to it further here.
Priya Goel
Priya Goel 2020-8-22
Yes. I am also of the opinion that it is deviation from the original topic.
Anyways, Thank you for your valuable time and inputs. These are very helpful for beginners (like me). You clarify doubts which otherwise remain unanswered for months.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Nonlinear Regression 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by