#pytorch #tensorboard #torch
#pytorch #tensorboard #torch
Вопрос:
Я хотел сравнить несколько запусков, которые я выполнял в цикле, создавая новые экземпляры SummaryWriter, подобные этому:
for experiment_name in experiments:
logger = SummaryWriter(self._log_path, comment=experiment_name)
...
for epoch in range(5):
...
logger.add_scalar("Epoch Loss", loss, epoch)
...
logger.close()
В пути к журналу я получил несколько таких файлов:
events.out.tfevents.1609675249.nlp-vm.13735.0
events.out.tfevents.1609679736.nlp-vm.13735.1
events.out.tfevents.1609687200.nlp-vm.13735.2
events.out.tfevents.1609691662.nlp-vm.13735.3
events.out.tfevents.1609699158.nlp-vm.13735.4
events.out.tfevents.1609703743.nlp-vm.13735.5
events.out.tfevents.1609711308.nlp-vm.13735.6
events.out.tfevents.1609716054.nlp-vm.13735.7
Но Tensorboard отображает все прогоны как один:
Не могли бы вы сказать, что я должен сделать, чтобы исправить это, и могу ли я сделать это без повторного запуска всех экспериментов?
Ответ №1:
Файлы событий, которые у меня есть в одной папке, должны быть отдельными, а имя папки будет отображаться как имя эксперимента.
Также найдено важное примечание в SummaryWriter
документации:
- комментарий (строка): суффикс log_dir комментария, добавленный к значению по умолчанию
log_dir
. Еслиlog_dir
присваивается, этот аргумент не имеет никакого эффекта.
Ответ №2:
Вы можете объединить имя эксперимента при регистрации новой точки данных. Что-то вроде:
logger.add_scalar('%s Epoch Loss' % experiment_name, loss, epoch)
Комментарии:
1. Могло бы сработать, но таким образом я не смог бы сравнивать прогоны. Я нашел решение, напишу его в новом комментарии)