Main Content


By weight and bias layer initialization function




initwb is a layer initialization function that initializes a layer’s weights and biases according to their own initialization functions.

initwb(net,i) takes two arguments,


Neural network


Index of a layer

and returns the network with layer i’s weights and biases updated.

Network Use

You can create a standard network that uses initwb by calling perceptron or linearlayer.

To prepare a custom network to be initialized with initwb,

  1. Set net.initFcn to 'initlay'. This sets net.initParam to the empty matrix [], because initlay has no initialization parameters.

  2. Set net.layers{i}.initFcn to 'initwb'.

  3. Set each net.inputWeights{i,j}.initFcn to a weight initialization function. Set each net.layerWeights{i,j}.initFcn to a weight initialization function. Set each net.biases{i}.initFcn to a bias initialization function. Examples of initialization functions are rands (for weights and biases) and midpoint (for weights only).

To initialize the network, call init.


Each weight (bias) in layer i is set to new values calculated according to its weight (bias) initialization function.

Version History

Introduced before R2006a