diff options
author | GaetanMarceauCaron <gaetan.marceau-caron@inria.fr> | 2016-04-15 17:18:46 +0300 |
---|---|---|
committer | GaetanMarceauCaron <gaetan.marceau-caron@inria.fr> | 2016-04-15 17:18:46 +0300 |
commit | 4a72160aade7d3c286643dfe270b75810c775ab8 (patch) | |
tree | 4b53170472031b56c2d08dc3df632a7d8a919b30 | |
parent | 0575d389496c71350ca304bd80e0b97153ad8fdb (diff) |
Adding a default value for gamma depending on the minibatch size
-rw-r--r-- | README.md | 2 |
1 files changed, 1 insertions, 1 deletions
@@ -233,7 +233,7 @@ The algorithm is defined in Riemannian metrics for neural networks I: feedforwar To use this module, simply replace `nn.Linear(ninput,noutput)` with `nnx.QDRiemaNNLinear(ninput,noutput)`. As always, the step-size must be chosen accordingly. Two additional arguments are also possible: -* gamma (default=0.01): determine the update rate of the metric for a minibatch setting, i.e., (1-gamma) * oldMetric + gamma newMetric. Smaller minibatches require a smaller gamma. +* gamma (default=0.01): determine the update rate of the metric for a minibatch setting, i.e., (1-gamma) * oldMetric + gamma newMetric. Smaller minibatches require a smaller gamma. A default value depending on the size of the minibatches is `gamma = 1. - torch.pow(1.-1./nTraining,miniBatchSize)` where `nTraining` is the number of training examples of the dataset and `miniBatchSize` is the number of training examples per minibatch. * qdFlag (default=true): Whether to use the quasi-diagonal reduction (true) or only the diagonal (false). The former should be better. To implement a natural gradient descent, one should also use a module for generating the pseudo-labels. |