[Docker] docker에서 tensorboard 실행

happy_quokka·2024년 1월 3일
0

Docker

목록 보기
6/7

tensorboard란

  • 시각화 도구로 딥러닝 모델을 학습하면서 생성된 log를 시각화해주는 도구
  • tensorflow의 시각화 도구지만 tensorboardX를 사용하면 PyTorch와 같은 다른 딥러닝 프레임워크에서도 TensorBoard를 사용할 수 있다

tensorboard 사용방법

1. docker container 생성

  • docker에서 tensorboard를 사용하기 위해서는 docker container를 생성할 때 port를 설정해주어야한다
  • -p 옵션으로 port를 설정해 준다
  • tensorboard가 6006포트를 default로 하기 때문에 6006 port로 설정하였다
$ docker run -it -v /home/nahye/pytorch_docker:/workspace --name "torch_tensorboard" -p 6006:6006 pytorch/pytorch /bin/bash

port를 설정하지 않고도 tensorboard를 사용할 수 있다. tensorflow가 설치되어 있고 실행할 때 port를 6006으로 사용하면 된다

2. 라이브러리 설치

  • container 안에서 아래의 명령어를 통해 tensorboard를 사용할 수 있도록 라이브러리를 설치한다
  • tensorboard는 tensorflow에서 나온 것이기 때문인지 tensorflow도 설치해야한다
# pip install tensorboardX
# pip install tensorflow

3. tensorboard 실행

# tensorboard --logdir=./output --port 6006 --host=0.0.0.0
  • --logdir
    • 시각화하고 싶은 로그 데이터가 있는 폴더 위치
    • 해당 폴더 안의 event file이 실행된다
  • --port
    • 연결할 port 번호
    • container를 생성할 때 지정한 port 번호 사용
  • --host=0.0.0.0
    • TensorBoard를 모든 IP 주소에서 접근 가능하도록 설정
    • 이 옵션을 추가하지 않으면 TensorBoard가 기본적으로 로컬에서만 접속할 수 있게 되어 외부에서 접근할 수 없다

4. tensorboard 실행 화면

  • 3번의 명령어를 입력하면 terminal에 주소가 뜬다
  • 그 주소를 클릭하여 연결해도 되고 웹사이트에 http://0.0.0.0:6006를 입력하여 실행된 것을 볼 수 있다

  • 이런 식으로 코드에서 tensorboardX의 SummaryWriter에 add_scalar 해준 값들을 그래프로 확인할 수 있다

0개의 댓글