ReduceLROnPlateau
class torch.optim.lr_scheduler.ReduceLROnPlateau(optimizer, mode='min', factor=0.1, patience=10, threshold=0.0001, threshold_mode='rel', cooldown=0, min_lr=0, eps=1e-08, verbose=False)
Reduce learning rate when a metric has stopped improving. Models
   often benefit from reducing the learning rate by a factor of 2-10
   once learning stagnates. This scheduler reads a metrics quantity
   and if no improvement is seen for a 'patience' number of epochs,
   the learning rate is reduced.
Parameters:
      * optimizer (Optimizer) -- Wrapped optimizer.
  * **mode** (*str*) -- One of *min*, *max*. In *min* mode, lr
    will be reduced when the quantity monitored has stopped
    decreasing; in *max* mode it will be reduced when the quantity
    monitored has stopped increasing. Default: 'min'.

  * **factor** (*float*) -- Factor by which the learning rate will
    be reduced. new_lr = lr * factor. Default: 0.1.
