[MLOps] AI 학습을 위한 Wandb 사용법
Wandb 사용법
AI 학습 시에 간단하게 학습 프로세스를 시각화 해주는 툴이다. 추가로 sweep
기능을 사용하면 하이퍼파라미터에 대한 테스트를 지원해주어, 최적 값을 찾는데 유용하게 사용할 수 있다.
1. Wandb 홈페이지 접속
- wandb 계정 생성
- 로그인 후 프로젝트 생성
- 생성 시 발급되는 키 복사 -> 코드 내에서 wandb login시 필요
- Key 위치: Settings > Danger Zone > API Keys
2. 학습 코드에 wandb 삽입
- 필요한 라이브러리 import
import wandb from wandb.keras import WandbMetricsLogger
- wandb project initiation
- wandb 프로젝트 명과 함께 저장하고 싶은
config
값들을 설정
- wandb 프로젝트 명과 함께 저장하고 싶은
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])