How to decide the range for weights and bias based on input data set ?

1 次查看(过去 30 天)
Based on input data, can we decide the range for weights and bias in neural network ? Like weight should be between (-1,1). Thank you

采纳的回答

Greg Heath
Greg Heath 2014-8-28
You can but you do not have to. By default, variables are normalized to [-1,1] and the initial weights are automatically determined using the Widrow-Nguyen Algorithm. If you really want to, look up the logic for the algorithm.
If all weights are initially zero, train will automatically initialize them. If you train multiple nets in a loop, after the first pass the weights will be nonzero and train will just continue using the final weights obtained from the previous loop.
To prevent this, use the function configure to initialize weights before each call of train.
Hope this helps.
Thank you for formally accepting my answer
Greg
  2 个评论
Greg Heath
Greg Heath 2014-8-28
You might be interested in my thread "Nonsaturating Initial Weights" in comp.ai.neural-nets.
Suresh
Suresh 2014-8-28
Hi Greg, thank you very much for answer. Matlab neural networks uses Windrow-Nguyen algorithm for weight initialization. Still, if there is any formula to find range of weights and bias please share. Thank you

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Sequence and Numeric Feature Data Workflows 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by