lisa-lab/pylearn2 — pull request #369 by nicholas-leonard (2013-06-17 19:26:09+00:00)
Title: Factor out weight initialization

This first pull is to demonstrate the potential application of
weight, bias and mask initializer objects for Layers. In the pylearn2.linear.initializer module, we
provide an example re-implementation of the Linear layer which
we initialize with all 4 kinds of Initiliazers, plus another that
tests the mask_weights constructor parameter. This test is called by calling: python initializer.py

The second step (not included in this pull request), will be
to modify all non-conv Layer sublcasses to make use of these
initializers.

The third step (not included in this pull request), will be to
add convolutional initializer (functions or distinct classes?) and
to modify all conv Layer subclasses to make use of them.

The main advantages of this pull request are that it reduces the amount of constructor parameters for Layer subclasses, it allows the initialisation of any Layer subclass with pretrained weights and biases, and it makes the initialization process easier to understand (because it is divided into different classes, and has more documentation).