SummaryWriter是PyTorch中的一个工具,用于将模型训练过程中的日志保存到TensorBoard中。可以通过使用SummaryWriter的add_scalar()方法来保存损失函数、准确率等标量信息,使用add_histogram()方法来保存权重、梯度等张量信息,使用add_image()方法来保存图像信息等。
下面是一个保存损失函数和准确率的示例代码:
from torch.utils.tensorboard import SummaryWriter
# 创建一个SummaryWriter对象
writer = SummaryWriter()
# 训练过程中保存损失函数和准确率
for epoch in range(num_epochs):
for i, (images, labels) in enumerate(train_loader):
# 计算损失函数
loss = ...
# 计算准确率
accuracy = ...
# 将损失函数和准确率保存到TensorBoard中
writer.add_scalar('Loss/train', loss, epoch * len(train_loader) + i)
writer.add_scalar('Accuracy/train', accuracy, epoch * len(train_loader) + i)
# 关闭SummaryWriter
writer.close()
上述代码中,我们使用add_scalar()方法将训练过程中的损失函数和准确率保存到TensorBoard中,并通过指定标签名和时间步来标识它们。在训练结束后,需要通过调用close()方法来关闭SummaryWriter对象。