pytorch 利用tensorboard顯示loss,acc曲線等
運行環境:
python3.6.9
pytorch1.13.1
cuda10.0
cudnn7.5.1
tensorboard顯示
運行PointRCNN算法進行training,得出events.out.tfevents.1592297776.hkd-Precision-7920-Tower
打開終端輸入:tensorboard --logdir path/to/tensorboard_logs/
會有輸出:TensorBoard 1.6.0 at http://iccd:6006 (Press CTRL+C to quit)
將上述鏈接複製到瀏覽器中打開便可以顯示該訓練參數(tensorboard)
tensorboard記錄
from tensorboard_logger import Logger
logger = Logger(logdir="./tensorboard_logs", flush_secs=10)
...
def train(net, optimizer):
for epoch in range(epoch_nums):
net.train()
for batch_idx, (inputs, targets) in enumerate(trainloader):
inputs = Variable(inputs, requires_grad=True).cuda()
targets = targets.cuda()
optimizer.zero_grad()
outputs = net(inputs)
loss = criterion(outputs, targets)
loss.backward()
optimizer.step()
train_loss += loss.item()
...
# 記錄所需的變量
logger.log_value('avg_loss', train_loss/(batch_idx+1), epoch*len(trainloader) + batch_idx)
logger.log_value('loss', loss.item(), epoch*len(trainloader) + batch_idx)
logger.log_value('acc', 100. * correct / total, epoch*len(trainloader) + batch_idx)