class_docstr: Steps the learning rate over training time.
  
  To set a step schedule, pass as arguments ``step_config`` and ``change``. The schedule
  will set the learning rate at ``step[i]`` to ``change[i]``. For example, the call:
  
  .. code-block:: python
  
      schedule = Schedule(step_config=[2, 6], change=[0.6, 0.4])
  
  will set the learning rate to 0.6 at step 2, and to 0.4 at step 6.
class_docstr_tok: ["Steps","the","learning","rate","over","training","time",".","To","set","a","step","schedule",",","pass","as","arguments","``","step_config","``","and","``","change","``",".","The","schedule","will","set","the","learning","rate","at","``","step","[","i","]","``","to","``","change","[","i","]","``",".","For","example",",","the","call",":","..","code-block",":",":","python","schedule","=","Schedule","(","step_config=","[","2",",","6","]",",","change=","[","0.6",",","0.4","]",")","will","set","the","learning","rate","to","0.6","at","step","2",",","and","to","0.4","at","step","6","."]
docstr: Returns the current learning rate given the epoch and initial learning rate.
  
  Arguments:
      learning_rate (float): Initial learning rate
      epoch (int): Current epoch, used to calculate the adjusted learning rate
  
  Returns:
      (float): The adjusted learning rate
docstr_tok: ["Returns","the","current","learning","rate","given","the","epoch","and","initial","learning","rate",".","Arguments",":","learning_rate","(","float",")",":","Initial","learning","rate","epoch","(","int",")",":","Current","epoch",",","used","to","calculate","the","adjusted","learning","rate","Returns",":","(","float",")",":","The","adjusted","learning","rate"]
code: def get_learning_rate(self, learning_rate, epoch):
      """
      Returns the current learning rate given the epoch and initial learning rate.
  
      Arguments:
          learning_rate (float): Initial learning rate
          epoch (int): Current epoch, used to calculate the adjusted learning rate
  
      Returns:
          (float): The adjusted learning rate
      """
      if epoch in self.step_config:
          # steps will store the current lr
          self.steps = self.change[self.step_config.index(epoch)]
      if self.steps == 0:
          return learning_rate
      else:
          return self.steps
  
imports: from __future__ import division
  from neon import NervanaObject
  from neon.util.persist import load_class
  import logging
  import numpy
label_desc: Use image node_id 2 for calling the StepSchedule obj's underlying member method code with example usage: obj.get_learning_rate(learning_rate, epoch) and returns: learning_rate, self