In the paper "Learning Algorithms for the Classification Restricted Boltzmann Machine", a uniform distribution in the interval [-m**-0.5, m**-0.5] is used for the initialisation of the weight matrices (rbm.W and rbm.U).
However, in the initcrbm the following code is used:
M = math.max(m,n);
interval_max = math.pow(M,-0.5);
interval_min = -interval_max;
weights = torch.rand(m,n):mul( interval_min + (interval_max-interval_min) )
which initialises the weights using the interval [0, m**-0.5].
Should the calculation of the weights not be?
weights = torch.rand(m,n):mul(interval_max-interval_min):add(interval_min)
In the paper "Learning Algorithms for the Classification Restricted Boltzmann Machine", a uniform distribution in the interval
[-m**-0.5, m**-0.5]is used for the initialisation of the weight matrices (rbm.Wandrbm.U).However, in the
initcrbmthe following code is used:which initialises the weights using the interval
[0, m**-0.5].Should the calculation of the weights not be?