ziming-liu
3/24/2020 - 8:49 AM

tensorboard 基本用法


完整参见 
https://www.pytorchtutorial.com/pytorch-builtin-tensorboard/

记录 Scalars
我们常用的 loss、accuracy 等都是数值,我们在 Tensorboard 中记录数值的方法也很简单:


1
add_scalar(tag, scalar_value, global_step=None, walltime=None)
其中 tag 是这个常数值所属的标签(比如 training_loss 等)。常用的一个方法是将 tag 值设置为 section/plot 的格式,这样 Tensorboard 会按照 section 来给结果分组(下面有例子)。

global_step 是一个整数,通常是曲线图里的 x 轴,如果不设置则默认一直为 0。注意这里是不存在覆盖的,就是对于同一个 global_step 值,新的值不会覆盖旧的值,而是会同时画到图上。

walltime 就是记录的时间戳,默认是系统当前时间 time.time()。

对于 Fashion-MNIST 数据集,我们主要记录 Training 和 Testing 的 loss,以及 Testing Accuracy:


    # Record training loss from each epoch into the writer
    writer.add_scalar(\\'Train/Loss\\', loss.item(), epoch)
    writer.flush()
    
        
    # Record loss and accuracy from the test run into the writer
    writer.add_scalar(\\'Test/Loss\\', test_loss, epoch)
    writer.add_scalar(\\'Test/Accuracy\\', accuracy, epoch)
    writer.flush()