How to choose "Nlocmin,Nlocmax" in non linear regression and curve fitting?

1 次查看(过去 30 天)
How can one choose "Nlocmin and Nlocmax" values for non linear regression using ANN feedforwardnet in the code mentioned by Greg sir??
Link to the thread
2. Estimate, by trial and error, the minimum number of hidden nodes necessary for successfully approximating the underlying input-output transformation. For a smooth function with Nlocmin local minima and Nlocmax local maxima, a reasonable lower
bound is H >= 2*max(Nlocmin,Nlocmax). Sometimes it is prudent to count endpoint extrema as 1/2 a local extremum. The addition of real-world noise, interference and measurement error should not change that minimum number. However, the contamination may make it difficult to identify the significant error-free extrema.
Thanks
Kishore

采纳的回答

Greg Heath
Greg Heath 2015-3-28
编辑:Greg Heath 2015-3-28
Plot the target and count the number of local extrema.
This will only work for relatively smooth functions.
Otherwise use the search over
Hmin:dH:Hmax < Hub
with a preference for Hmax << Hub
For details, search NEWSGROUP and ANSWERS using
greg Hub
Hope this helps
Thank you for formally accepting my answer
Greg
  2 个评论
Kishore
Kishore 2015-3-30
编辑:Kishore 2015-3-30
1) What should be the criteria for selecting number of hidden neurons
Hub ?? or Ndof ??
2) I put 2 for loops in my code one for varying number of neurons and one for Ntrails, i ran the code for until i get the Ndof as negative quantity..
i get this result
R2 values for H = 0 to 3 and Ntrails = 1 to 10
0.753160684721697 0.815846821332570 0.935058715861745 0.954252137206118
0.753160684721697 0.815846821332570 0.935884289937718 0.980321755267376
0.753160684721697 0.815846821332570 0.917201138717953 0.997488719109723
0.753160684721697 0.815846821332570 0.930553054754834 0.960149651411815
0.753160684721697 0.762563239630275 0.951581078215140 0.993348125338601
0.753160684721697 0.815846821332570 0.900031911479721 0.979790825957402
0.753160684721697 0.815846821332570 0.885977723609531 0.998753726801378
0.753160684721697 0.815846821332570 0.895716885586277 0.999055291675377
0.753160684721697 0.815846821332570 0.931318496839154 0.960757183796528
0.753160684721697 0.779425009498547 0.918015150082236 0.947511177559573
my question is that how to choose particular number of hidden layers and Ntrails and how to reproduce the same R2??
suppose if i choose H=3 and Ntrails = 8 where i am getting R2 as 0.999
Thanks
Kishore
Greg Heath
Greg Heath 2015-4-4
1. Initialize the random number state before the loops and choose the 38th after that
2. Store the random number state before each design
3. Store the random number state and corresponding net if the new MSE is smaller than the previous minimum.

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by