class_docstr: DecayLearningRate learning rate decay
  new_lr = (lr - end_lr) * (1 - epoch/decay_steps)**power + end_lr
  Args:
      learning_rate(float): initial learning rate
      step_each_epoch(int): steps each epoch
      epochs(int): total training epochs
      factor(float): Power of polynomial, should greater than 0.0 to get learning rate decay. Default: 0.9
      end_lr(float): The minimum final learning rate. Default: 0.0.
class_docstr_tok: ["DecayLearningRate","learning","rate","decay","new_lr","=","(","lr","-","end_lr",")","*","(","1","-","epoch\/decay_steps",")","*","*","power","+","end_lr","Args",":","learning_rate","(","float",")",":","initial","learning","rate","step_each_epoch","(","int",")",":","steps","each","epoch","epochs","(","int",")",":","total","training","epochs","factor","(","float",")",":","Power","of","polynomial",",","should","greater","than","0.0","to","get","learning","rate","decay",".","Default",":","0.9","end_lr","(","float",")",":","The","minimum","final","learning","rate",".","Default",":","0.0","."]
code: def __init__(
      self,
      learning_rate,
      step_each_epoch,
      epochs,
      factor=0.9,
      end_lr=0,
      **kwargs,
  ):
      super(DecayLearningRate, self).__init__()
      self.learning_rate = learning_rate
      self.epochs = epochs + 1
      self.factor = factor
      self.end_lr = 0
      self.decay_steps = step_each_epoch * epochs
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from __future__ import unicode_literals
  from paddle.optimizer import lr
  from .lr_scheduler import CyclicalCosineDecay, OneCycleDecay, TwoStepCosineDecay
label_desc: Use image node_id 1 to create a new DecayLearningRate object from inherited base classes: object with example: obj = DecayLearningRate(learning_rate, step_each_epoch, epochs, factor, end_lr)