Example #1
0
 def export_ops(self, name):
     """Exports ops to collections."""
     self._name = name
     # import pdb;pdb.set_trace()
     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, config):
     """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")
         """ opaque_params,
             num_layers,
             num_units,
             input_size,
             input_mode=CUDNN_INPUT_LINEAR_MODE,
             direction=CUDNN_RNN_UNIDIRECTION,
             scope=None,
             name='cudnn_rnn_saveable'"""
         import pdb;pdb.set_trace()
         if self._cell and rnn_params:
             params_saveable = tf.contrib.cudnn_rnn.CudnnLSTMSaveable(
                     opaque_params = None,
                     num_layers=config.num_layers,
                     num_units=config.hidden_size,
                     input_size=config.hidden_size,
                     input_mode=CUDNN_INPUT_LINEAR_MODE,
                     direction=CUDNN_RNN_UNIDIRECTION,
                     scope="Model/RNN",
                     name='cudnn_rnn_saveable'
                     )
             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)