在cpu上,textum培训代码(https://github.com/tensorflow/models/tree/master/research/textsum)运行完美。
要在gpu上运行代码以便更快地进行训练,我已将“cpu”更改为“gpu”以下4行:https://github.com/tensorflow/models/blob/master/research/textsum/seq2seq_attention.py#L84 https://github.com/tensorflow/models/blob/master/research/textsum/seq2seq_attention_model.py#L149 https://github.com/tensorflow/models/blob/master/research/textsum/seq2seq_attention_model.py#L217 https://github.com/tensorflow/models/blob/master/research/textsum/seq2seq_attention_model.py#L228
模型仍在训练中,但是再次在cpu上,而不是在gpu上。 (我使用nvidia-smi检查过)
如果需要更改任何其他内容以便在gpu上进行训练,请告诉我。
更改这行代码将帮助您在GPU上训练模型
textsum / seq2seq_attention.py
# change this line
# tf.app.flags.DEFINE_integer('num_gpus', 0, 'Number of gpus used.')
tf.app.flags.DEFINE_integer('num_gpus', 1, 'Number of gpus used.')
textsum / seq2seq_attention_model.py
# if self._num_gpus > 1:
# self._cur_gpu = (self._cur_gpu + 1) % (self._num_gpus-1)
self._cur_gpu = (self._cur_gpu + 1) % (self._num_gpus-1 if self._num_gpus > 1 else self._num_gpus)
参考问题link