这段代码使用了torch.utils.tensorboard
中的SummaryWriter
来记录训练过程中的数据,并使用%tensorboard
魔法命令来启动Tensorboard服务,以便在浏览器中查看这些数据。
目录
1.在Colab中导入必要的库:
from torch.utils.tensorboard import SummaryWriter
1.1创建SummaryWriter接口
这会在当前目录下创建一个名为logs
的文件夹,也就是log_dir为logs,用于存储Tensorboard的日志数据。
writer = SummaryWriter('logs')
1.2在训练循环中记录数据
借助add_scalar( )函数记录标量。
writer.add_scalar('train_loss', loss_in.item(), total_train_step)
# ...
writer.add_scalar('test_loss', total_test_loss, i)
writer.add_scalar('当前测试集的准确率', accurate / len(test_data) * 100, i)
2.关闭SummaryWriter对象:
这会在训练结束后将所有数据写入日志文件。
writer.close()
3.浏览器显示Tensorboard的内容
3.1操作步骤
1.将上述代码在Colab运行,会在代码文件下增加一个名为“logs”的文件夹。
3.2添加魔法命令来启动Tensorboard服务
在你的代码 开头 的地方添加 %load_ext tensorboard 命令。%load_ext tensorboard
是一个 IPython 魔法命令,它用于加载 TensorBoard 扩展。
%load_ext tensorboard
3.3启动Tensorboard服务:
在代码的最后添加 %tensorboard --logdir logs
命令。%tensorboard --logdir logs
也是一个 IPython 魔法命令,它用于启动 TensorBoard 服务并指定日志目录,就可以在浏览器中查看训练数据。
%tensorboard --logdir logs
运行结果如下:
4.小结
免费版的Colab是有总体用量限额,用完了就没有。想无痛使用免费版 Colab,我下面总结了几个技巧。
- 在完成工作后及时关闭 Colab 标签页。
- 在没有实际工作需求时避免选用 GPU 或额外的内存,如果使用的话会减少用量限额。
为了避免达到 GPU
使用量上限,如果不使用 GPU,请切换为标准运行时。切换方法是:依次选择修改 > 笔记本设置>更改运行时类型,然后将“硬件加速器”设为“CPU”。