Learning rate scheduler, which adaptively changes the learning rate
based on the training progress.
Base class of a learning rate scheduler
The training progress is presented by num_update, which can be roughly
viewed as the number of minibatches executed so far. Its value is
non-decreasing, and increases at most by one.
The exact value is the upper bound of the number of updates applied to
Int, the maximal number of updates applied to a weight.