Neural Network Toolbox™ Previous page   Next Page 
initnw
 Provide feedback about this page

Nguyen-Widrow layer initialization function

Syntax

Description

initnw is a layer initialization function that initializes a layer's weights and biases according to the Nguyen-Widrow initialization algorithm. This algorithm chooses values in order to distribute the active region of each neuron in the layer approximately evenly across the layer's input space. The values contain a degree of randomness, so they are not the same each time this function is called.

initnw(net,i) takes two arguments,

net
Neural network
i
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 initnw by calling newff or newcf.

To prepare a custom network to be initialized with initnw,

  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 'initnw'.

To initialize the network, call init. See newff and newcf for training examples.

Algorithm

The Nguyen-Widrow method generates initial weight and bias values for a layer so that the active regions of the layer's neurons are distributed approximately evenly over the input space.

Advantages over purely random weights and biases are

If these conditions are not met, then initnw uses rands to initialize the layer's weights and biases.

See Also

initwb, initlay, init


 Provide feedback about this page 

Previous page initlay initsompc Next page

 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS