[U] Week 2 - Monitoring tools

JaeJun Lee ·2022년 9월 29일
0

부스트캠프 AI Tech

목록 보기
14/30

Tensorboard

TensorFlow의 프로젝트로 만들어진 시각화 도구이다.

  • 학습 그래프, metric, 학습 결과의 시각화 지원
  • PyTorch도 연결 가능
    • DL 시각화 기본 도구
  • scalar: metric 등 상수 값의 연속(epoch)을 표시
  • graph: 모델의 computational graph 표시
  • histogram: weight 등 값의 분포를 표현
  • image: 예측 값과 실제 값을 비교 표시
  • mesh: 3D 형태의 데이터를 표현하는 도구
from torch.utils.tensorbaord import SummaryWriter

# 저장 경로 지정
wirter = SummaryWriter(f"{logs_base_dir}")

# scalar 값을 기록하는 데 카테고리/훈련모드 등과 같이 지정
writer.add_scalar(f"{Loss/train}", 저장할 값, x축의 값)

# 여러 값을 한 번에 저장할 시 방법
writer.add_scalars("Loss", {
"train": 저장할 값,
"test": 저장할 값
}, x축의 값)

# 값 기록
writer.flush()

weight & biases

머신러닝 실험을 원활히 지원하기 위한 상용도구

  • 협업, code versioning, 실험 결과 기록 등 제공
  • MLOps의 대표적인 툴로 저변 확대 중
  • 프로젝트로 접근하고 실험 log뿐만 아니라 batch_size, learning_rate 등도 기록 가능
!pip install wandb -q

config = {
"epochs": EPOCHS, 
"batch_size": BATCH_SIZE, 
"learning_rate": LEARNING_RATE
}

wandb.init(project="project", config=config)
# wandb.config.batch_size = BATCH_SIZE 처럼 설정도 가능

wandb.log({"accuracy": train_acc, "loss": train_loss})

0개의 댓글