【问题标题】:How to overwrite checkpoint of same global step for Tensorboard?如何覆盖 Tensorboard 相同全局步骤的检查点?
【发布时间】:2022-03-25 12:42:22
【问题描述】:

如果您从特定时期(相同的全局步骤)恢复训练并运行 tensorboard,则 tensorboard (add_scalar) 最终会为该特定全局步骤绘制 2 个点。

例如,我想尝试测试在训练中途改变学习率是否会提高/降低准确性:

Plot example

同一时间步的图被绘制了两次(我从最新纪元后面 +15 个纪元恢复)。

在网上搜索,找不到任何可以要求 Tensorboard 覆盖之前保存的新检查点的命令。我的期望是 Tensorboard 会知道覆盖相同的全局步骤点,但它会将其绘制在一起。

【问题讨论】:

  • 当你重新开始一个实验时,tensorboard 会创建一个新的事件文件。当您运行 tensorboard 来显示它时,它只是从 2 个文件(旧实验和您以 -15 个 epoch 开始的新实验)加载数据,而不考虑任何重叠。您可能需要在 Tensorboard github 存储库本身上打开一个问题。
  • 是的,我想知道事件文件是否不能覆盖在同一个全局步骤上,这是可行的。我认为深度学习从业者使用旧时代做一些实验是很常见的,但惊讶于 Tensorboard 不支持它。如果有人有解决方法/解决方案,我将等待几天再将问题提交给 Tensorboard。

标签: tensorflow deep-learning pytorch tensorboard


【解决方案1】:

您可以删除运行脚本的日志文件(在创建模型之前)。 然后它将被创建为空。 或者您可以在日志名称中添加时间:

import time
NAME = 'my_cnn-{}'.format(int(time.time()))
tensorboard = TensorBoard(log_dir='logs/{}'.format(NAME))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-07-28
    • 2018-09-20
    • 1970-01-01
    • 1970-01-01
    • 2014-09-27
    • 1970-01-01
    • 1970-01-01
    • 2019-03-14
    相关资源
    最近更新 更多