如何指定张量流中两个连续检查点之间的间隔?里面没有选项tf.train.Saver
来指定这一点。每次,我使用不同数量的全局步骤运行模型时,我都会得到检查点之间的新间隔
The tf.train.Saver https://www.tensorflow.org/api_docs/python/tf/train/Saver是一个用于编写检查点的“被动”实用程序,并且仅当其他代码调用其时才编写检查点.save() https://www.tensorflow.org/api_docs/python/tf/train/Saver#save方法。因此,写入检查点的速率取决于您使用什么框架来训练模型:
-
如果您使用的是低级 TensorFlow API (tf.Session
)并编写自己的训练循环,您可以简单地插入调用Saver.save()
在你自己的代码中。一种常见的方法是根据迭代计数来执行此操作:
for i in range(NUM_ITERATIONS):
sess.run(train_op)
# ...
if i % 1000 == 0:
saver.save(sess, ...) # Write a checkpoint every 1000 steps.
-
如果您正在使用tf.train.MonitoredTrainingSession https://www.tensorflow.org/api_docs/python/tf/train/MonitoredTrainingSession,它会为您写入检查点,您可以在构造函数中指定检查点间隔(以秒为单位)。默认情况下,它每 10 分钟保存一个检查点。要将其更改为每分钟,您可以执行以下操作:
with tf.train.MonitoredTrainingSession(..., save_checkpoint_secs=60):
# ...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)