class_docstr: Abstract base class for training hooks.
    
code: def __init__(self, params, model_dir, run_config):
      tf.train.SessionRunHook.__init__(self)
      Configurable.__init__(
          self, params, tf.contrib.learn.ModeKeys.TRAIN
      )
      self._model_dir = model_dir
      self._run_config = run_config
  
imports: from __future__ import absolute_import
  from __future__ import division
  from __future__ import print_function
  from __future__ import unicode_literals
  import abc
  import os
  import numpy
  import six
  import yaml
  import tensorflow
  from tensorflow.python.training.basic_session_run_hooks import SecondOrStepTimer
  from tensorflow.python.training import session_manager
  from tensorflow.python.client import timeline
  from tensorflow import gfile
  from seq2seq.configurable import Configurable, abstractstaticmethod
  from seq2seq import graph_utils, global_vars
label_desc: Use image node_id 1 to create a new TrainingHook object from inherited base classes: tf.train, Configurable with example: obj = TrainingHook(params, model_dir, run_config)