class_docstr: Tests learning rate decay function.
    
class_docstr_tok: ["Tests","learning","rate","decay","function","."]
code: def test_decay_without_min(self):
      decay_fn = training_utils.create_learning_rate_decay_fn(
          decay_type="exponential_decay",
          decay_steps=10,
          decay_rate=0.9,
          start_decay_at=100,
          stop_decay_at=1000,
          staircase=False,
      )
  
      initial_lr = 1.0
      with self.test_session() as sess:
          # Should not decay before start_decay_at
          np.testing.assert_equal(
              sess.run(decay_fn(initial_lr, 50)), initial_lr
          )
          # Proper decay
          np.testing.assert_almost_equal(
              sess.run(decay_fn(initial_lr, 115)),
              initial_lr * 0.9 ** (15.0 / 10.0),
          )
          # Should not decay past stop_decay_at
          np.testing.assert_almost_equal(
              sess.run(decay_fn(initial_lr, 5000)),
              initial_lr * 0.9 ** ((1000.0 - 100.0) / 10.0),
          )
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from __future__ import unicode_literals
  import tempfile
  import tensorflow
  import numpy
  from seq2seq.contrib import rnn_cell
  from seq2seq.data import input_pipeline
  from seq2seq.test import utils
  from seq2seq.training import utils
label_desc: Use image node_id 2 for calling the TestLRDecay obj's underlying member method code with example usage: obj.test_decay_without_min() without return types