title: Using the same script for training and serving (Estimator + hub)
body: <p>I want to use hub at training and serving, but I am getting a little confused how to do it on the same graph. Namely I have something like</p>
  
  <pre><code>def build_graph(..., mode, ...):
      tags_and_args= ... # one for training, one for serving
      if mode == 'training':
          hub.create_module_spec(module_fn, tags_and_args=tags_and_args)
          module_output = hub.Module(...)
          hub.register_module_for_export(module_fn, tags_and_args=tags_and_args)
  
          loss, output = ...
  
      else:
          module_output = hub.Module(XXX)
  </code></pre>
  
  <p>should I reload the module from disk? Therefore <code>XXX</code> will be the path where i saved it before. Or is it somehow saved as a graph object in memory?</p>
  
  <p>I will call my code as</p>
  
  <pre><code>estimator.train(...)
  exporter = hub.LatestModuleExporter(...)
  exporter.export(...)
  esimator.export_savedmodel(...)  # for serving
  </code></pre>