less than 1 minute read

Wandb 사용법

AI 학습 시에 간단하게 학습 프로세스를 시각화 해주는 툴이다. 추가로 sweep 기능을 사용하면 하이퍼파라미터에 대한 테스트를 지원해주어, 최적 값을 찾는데 유용하게 사용할 수 있다.

1. Wandb 홈페이지 접속

  1. wandb 계정 생성
  2. 로그인 후 프로젝트 생성
  3. 생성 시 발급되는 키 복사 -> 코드 내에서 wandb login시 필요
    • Key 위치: Settings > Danger Zone > API Keys

2. 학습 코드에 wandb 삽입

  1. 필요한 라이브러리 import
    import wandb
    from wandb.keras import WandbMetricsLogger
    
  2. wandb project initiation
    • wandb 프로젝트 명과 함께 저장하고 싶은 config 값들을 설정
wandb.init(
  project = "PROJECT NAME",
  config = {
    "BATCH_SIZE": 32,
    "N_EPOCHS": 100,
    "LOSS": "custom",
    "MODEL": "ViT",
    "LR_scheduler": "exp",
    "LR_EPOCHS":, 30,
    "init_LR": 1e-3,
    "l2_reg": 1e-4,
  }
)
config = wandb.config # 학습 코드에서 사용할 config를 동일하게 정의

wandb.run.name = f"{ckpt_name}" # wandb 프로젝트 내 run 이름을 지정

학습 코드에서 사용하는 프레임워크에 따라 metric logger를 설정

  • keras 사용 시,
    history = model.fit(train_ds,
              validation_data=val_ds,
              epochs = config.N_EPOCHS,
              batch_size = config.BATCH_SIZE,
              callbacks=[WandbMetricsLogger(), lf_scheduler])