Skip to content

TensorBoard

一个数据可视化工具包

常用的功能

  1. 保存网络的结构图
  2. 保存训练过程中的损失loss,验证机的accuracy准确率、还有学习率变化等
  3. 保存权重数值的分布
  4. 保存预测图片的一些信息

在pytorch中使用tensorboard

  1. 安装tensorboard

    shell
    pip install tensorboard
  2. python
     from torch.utils.tensorboard import SummaryWriter
  3. 创建SummaryWriter实例,可以在训练过程中不断地往这个 writer 写数据。

    python
    writer = SummaryWriter(log_dir='logs/exp1')  # 日志文件会保存在 runs/exp1 目录下
  4. 写入训练数据,写标量(如 loss 和 accuracy)

    python
    for epoch in range(100):
        loss = some_loss_value
        acc = some_accuracy_value
        writer.add_scalar('Loss/train', loss, epoch)
        writer.add_scalar('Accuracy/train', acc, epoch)
  5. 关闭writer

    python
     writer.close()
  6. 启动TensorBoard,文件夹名 和

    shell
     tensorboard --logdir=logs

    比如项目文件夹为

    csharp
     my_project/
     ├── train.py
     ├── logs/
     │   └── exp1/
     │       └── events.out.tfevents.123456...
      1. 在代码里你写的是:SummaryWriter(log_dir="logs/exp1")
      1. 启动 TensorBoard 时,可以写:tensorboard --logdir=logs,代表着看logs下的多个实例结果;如果 --logdir=logs/exp1,则代表着只会显示 logs/exp1 这个目录下的日志数据