Example #1
0
 def export_ops(self, name):
   """Exports ops to collections."""
   self._name = name
   ops = {util.with_prefix(self._name, "cost"): self._cost}
   if self._is_training:
     ops.update(lr=self._lr, new_lr=self._new_lr, lr_update=self._lr_update)
     if self._rnn_params:
       ops.update(rnn_params=self._rnn_params)
   for name, op in ops.items():
     tf.add_to_collection(name, op)
   self._initial_state_name = util.with_prefix(self._name, "initial")
   self._final_state_name = util.with_prefix(self._name, "final")
   util.export_state_tuples(self._initial_state, self._initial_state_name)
   util.export_state_tuples(self._final_state, self._final_state_name)
Example #2
0
 def import_ops(self):
     """Imports ops from collections."""
     if self._is_training:
         self._train_op = tf.get_collection_ref("train_op")[0]
         self._lr = tf.get_collection_ref("lr")[0]
         self._new_lr = tf.get_collection_ref("new_lr")[0]
         self._lr_update = tf.get_collection_ref("lr_update")[0]
         rnn_params = tf.get_collection_ref("rnn_params")
         if self._cell and rnn_params:
             params_saveable = tf.contrib.cudnn_rnn.RNNParamsSaveable(
                 self._cell,
                 self._cell.params_to_canonical,
                 self._cell.canonical_to_params,
                 rnn_params,
                 base_variable_scope="Model/RNN")
             tf.add_to_collection(tf.GraphKeys.SAVEABLE_OBJECTS,
                                  params_saveable)
     self._cost = tf.get_collection_ref(util.with_prefix(
         self._name, "cost"))[0]
     num_replicas = FLAGS.num_gpus if self._name == "Train" else 1
     self._initial_state = util.import_state_tuples(
         self._initial_state, self._initial_state_name, num_replicas)
     self._final_state = util.import_state_tuples(self._final_state,
                                                  self._final_state_name,
                                                  num_replicas)