如何解决Tensorboard中的HParams,运行ID和命名
在训练Seq2Seq模型期间,我正在使用SummaryWriter.add_hparams(params,values)
记录超参数。我的跑步以2020-09-10 14-50-27
之类的时间戳命名。在Tensorboard的HParams选项卡中,一切看起来都很好,但是HParam试用版ID不同。他们还有另一个数字字符串,像这样:2020-09-10 14-50-27/1599742915.9712806
。这些也以不同的运行方式出现在“标量”选项卡中,这非常不方便。有没有办法改变这种额外的命名或阻止它们出现在“标量”选项卡中?我这样使用pytorch及其摘要编写器:
params = {
'max_epochs' : max_epochs,'learning_rate': learning_rate,'batch_size': batch_size,'optimizer_name': optimizer_name,'dropout_fc': dropout_fc
}
values = {
'hparam/hp_total_time': t1_stop - t0_start,'hparam/score' : best_score
}
tb.add_hparams(params,values)
解决方法
正如 Aniket 提到的,您的问题描述中不足以完全确定问题是什么。
但是,如果您使用的是 Pytorch,我怀疑您可能指的是 this issue 中也报告的行为。 add_hparams
方法在调用时创建一个具有当前时间戳的新子文件夹,在您的情况下为 1599742915.9712806
。
TensorBoard 使用分层文件夹结构来组织(分组)运行,这就是 2020-09-10 14-50-27/1599742915.9712806
和 2020-09-10 14-50-27
显示为不同运行的原因。
根据我上面提到的问题,似乎没有一种“官方”的方式来修改这种行为,但是如果您阅读评论,您会发现一些已提议提供帮助的自定义类。