title: Loading model in tensorflow only once
body: <p>I am loading the model as </p>
  
  <pre><code>def _load_model(model_filepath):
     model_exp = os.path.expanduser(model_filepath)
     if os.path.isfile(model_exp):
     print("loading model to graph")
     with gfile.FastGFile(model_exp, 'rb') as f:
        graph_def = tf.GraphDef()
        graph_def.ParseFromString(f.read())
        tf.import_graph_def(graph_def, name='')
  </code></pre>
  
  <p>and using this function in following code </p>
  
  <pre><code>tf.reset_default_graph()
  with tf.Session(config=tf.ConfigProto(log_device_placement=False)) as sess:
      _load_model(model_filepath=model_path)
      test_set = _get_test_data(input_directory)
      images, labels = _load_images_and_labels(test_set, image_size=160, batch_size=batch_size,                                                               
      num_threads=num_threads, num_epochs=1)
      init_op = tf.group(tf.global_variables_initializer(), 
      tf.local_variables_initializer())   
      sess.run(init_op)
      images_placeholder = tf.get_default_graph().get_tensor_by_name("input:0")
      embedding_layer = tf.get_default_graph().get_tensor_by_name("embeddings:0")
      phase_train_placeholder = tf.get_default_graph().get_tensor_by_name("phase_train:0")
  </code></pre>
  
  <p>On each api call i am reseting the default graph and loading model which takes long time.
  I want to load my model only once and use it in session with new graph
  how can i achieve this?</p>