Training a network

Setting the hyper-parameters

When you have defined the architecture and the weights of a DBN, you are ready to train it. You can train it manually stepping one epoch at a time, or automatically if you just want a fully trained network. In both cases, the first thing to do is to set the training hyper-parameters.

Hyper-parameters are those numbers and coefficients with which you can "customize" the training algorithm. They are called hyper to distinguish them from the weights of the DBN, that are sometimes called "parameters". For instance, Contrastive Divergence depends on the following hyper-parameters:

At the right of the "std. dev." field you will find a "init" button. It is not necessary to initialize the weights before training the network, because they will be initialized automatically anyway. This button is meant to analyse the network before the training.

Launching the training

When you have chosen the hyper-parameters (or if you want to accept the default ones), you can start training the DBN with one of the two buttons after the "Hyper-parameters" fieldset:

While training the network, you will see that a chart is updated plotting the reconstruction error against the number of epochs.