Tensorboard에 log 기록 (Pytorch)
1. Docker image에 tensorboard 설치
pip install tensorboardX
2. 모델 학습하면서 log 기록
# SummaryWriter import
from tensorboardX import SummaryWriter
# train_log_dir : log 저장 장소
train_writer = SummaryWriter(logdir=train_log_dir)
##### 학습 중 log 저장 #####
# ex
train_writer.add_scalar('lr', optim.param_groups[0]['lr'], epoch)
train_writer.add_scalar('val_psnr', mean_psnr, epoch)
train_writer.add_images('result', image, epoch)
###########################
# 학습 종료 후 train_writer 종료
train_writer.close()
*기록 용어 간단 정리*
1. add_scalars
train_writer.add_scalars('변수 이름', 변수(y축), x축 값)
2. add_image
train_writer.add_image('변수 이름', image, x축 값)
image는 tensor image (c, h, w), numpy image (c, h, w)
3. add_images
train_writer.add_images('변수 이름', images, x축 값)
image는 tensor images (n, c, h, w), numpy images (n, c, h, w)
더 많은건 https://pytorch.org/docs/stable/tensorboard.htm 참고
Tensorboard 실행
3. docker run 할때 호스트와 포트를 연결
nvidia-docker run -v <마운트할 디렉토리> -p 6000-6010:6000-6010 -it --name <container 이름> --rm <이미지 이름>:<tag> /bin/bash
-p 6000-6010:6000-6010 는 6000~6010 사이 포트를 모두 연결
-p 6010:6010 는 6010포트를 연결
4. Tensorboard 실행
tensorboard --logdir=log위치 --port=연결한 포트번호
5. 웹 브라우저에서 http://서버주소:연결한 포트번호/ 접속
'개발환경 > Docker' 카테고리의 다른 글
[Docker] Docker를 이용한 모델 학습 루틴, image 관리 (2022 이전) (0) | 2022.06.19 |
---|---|
[Docker] 모델 학습을 위한 명령어 정리 (0) | 2022.05.17 |