This notebook demonstrates and allows you to play with the LeNet model.

The first cell loads the example in a new cell. Execute it.

Then, you can look at that example and run it to define the model.

Next, there is a cell that runs the model. It allows you to play with some of the hyper-parameters.

You can change the example code itself. You can reload the original code in a new cell by running the load cell again.

This example takes about 9m to execute on a GTX750 Ti with CuDNN v5.

To see the other files used by lenet.py run in a new cell: %load logistic_sgd.py or %load mlp.py.

Two possible changes you could try:

  • change the non linearity of the convolution to a rectifier unit,
  • add an extra mlp layer,
  • limit the number of training epochs to iterate more rapidly on code change.

In [ ]:
%load lenet.py

In [ ]:
evaluate_lenet5(learning_rate=0.1, n_epochs=200,
                dataset='mnist.pkl.gz',
                nkerns=[20, 50], batch_size=500)