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 这个目录下的日志数据