【问题标题】:Finding all checkpoints path in Tensorflow在 TensorFlow 中查找所有检查点路径
【发布时间】:2018-02-12 23:54:08
【问题描述】:

到目前为止,我在 Tensorflow 中使用保存和加载检查点仅用于加载最后一个检查点。通常我使用的代码是这样的:

ckpt = tf.train.get_checkpoint_state(load_dir)
if ckpt and ckpt.model_checkpoint_path:
    saver.restore(session, ckpt.model_checkpoint_path)
else:
    tf.gfile.DeleteRecursively(load_dir)
    tf.gfile.MakeDirs(load_dir)

但是,在我最近的实验中,我每 1000 次迭代保存一个检查点,并且我想在所有检查点上运行评估脚本,例如显示不同的验证指标如何进展。是否有任何简单的方法可以在 Tensorflow 中获取所有检查点,或者我只需要使用 os 相应地循环所有名称?

【问题讨论】:

    标签: python tensorflow


    【解决方案1】:

    您的代码 sn-p 中的 ckpt 对象是 CheckpointState 协议缓冲区。无需访问最新的模型路径 (ckpt.model_checkpoint_path),您可以使用以下方式遍历所有路径:

    for model_path in ckpt.all_model_checkpoint_paths:
        saver.restore(session, model_path)
        # Do the evaluation using the restored model
    

    【讨论】:

    • 我想我可以解析名称以找到它们来自哪个迭代,所以我接受这个作为答案。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多