메인 콘텐츠로 건너뛰기
Colab에서 실행해 보기 Hugging Face 모델 성능을 W&B와의 원활한 통합으로 빠르게 시각화하세요. 하이퍼파라미터, 출력 지표, GPU 활용률과 같은 시스템 지표를 여러 모델 간에 비교하세요.

왜 W&B를 사용해야 하나요?

W&B를 사용할 때의 이점
  • 통합 대시보드: 모든 모델 지표와 예측 결과를 한곳에 모아 관리
  • 경량: Hugging Face와 연동하기 위해 코드 변경이 전혀 필요 없음
  • 접근성: 개인 및 학계 팀에 무료 제공
  • 보안성: 모든 Project는 기본적으로 비공개
  • 신뢰성: OpenAI, Toyota, Lyft 등 다양한 머신러닝 팀에서 사용
W&B를 머신러닝 모델을 위한 GitHub라고 생각해 보세요. 머신러닝 실험을 비공개 호스팅 대시보드에 안전하게 저장할 수 있습니다. 스크립트를 어디에서 실행하든, 모델의 모든 버전이 저장된다는 확신을 갖고 빠르게 실험을 반복할 수 있습니다. W&B의 경량 통합 기능은 어떤 Python 스크립트와도 함께 동작하며, 모델을 추적하고 시각화하기 위해 필요한 것은 무료 W&B 계정에 가입하는 것뿐입니다. Hugging Face Transformers 리포지토리에서는 Trainer에 계측을 추가하여, 각 로깅 단계마다 학습 및 평가 지표를 W&B에 자동으로 로깅하도록 설정해 두었습니다. 통합이 어떻게 동작하는지에 대한 더 자세한 내용은 다음을 참고하세요: Hugging Face + W&B Report.

설치, 임포트 및 로그인

이 튜토리얼에 필요한 Hugging Face 및 W&B 라이브러리와 GLUE 데이터셋, 학습 스크립트를 설치하세요.
!pip install datasets wandb evaluate accelerate -qU
!wget https://raw.githubusercontent.com/huggingface/transformers/refs/heads/main/examples/pytorch/text-classification/run_glue.py
# run_glue.py 스크립트는 transformers 개발 버전이 필요합니다
!pip install -q git+https://github.com/huggingface/transformers
계속하기 전에 무료 계정에 가입하세요.

API key 입력하기

가입을 마쳤다면 다음 셀을 실행한 뒤 링크를 클릭해 API key를 확인하고 이 노트북을 인증하세요.
import wandb
wandb.login()
필요에 따라 환경 변수를 설정해 W&B 로깅을 구성할 수 있습니다. Hugging Face 통합 가이드를 참고하세요.
# 선택 사항: 그래디언트와 파라미터 모두 로깅
%env WANDB_WATCH=all

모델 학습하기

다음으로, 다운로드한 학습 스크립트 run_glue.py를 실행하면 학습 과정이 자동으로 W&B 대시보드에 추적되는 것을 확인할 수 있습니다. 이 스크립트는 Microsoft Research Paraphrase Corpus(두 문장이 의미적으로 동등한지에 대해 사람이 주석을 단 문장 쌍으로 구성된 데이터셋)에서 BERT를 파인튜닝합니다.
%env WANDB_PROJECT=huggingface-demo
%env TASK_NAME=MRPC

!python run_glue.py \
  --model_name_or_path bert-base-uncased \
  --task_name $TASK_NAME \
  --do_train \
  --do_eval \
  --max_seq_length 256 \
  --per_device_train_batch_size 32 \
  --learning_rate 2e-4 \
  --num_train_epochs 3 \
  --output_dir /tmp/$TASK_NAME/ \
  --overwrite_output_dir \
  --logging_steps 50

대시보드에서 결과 시각화

위에 출력된 링크를 클릭하거나 wandb.ai에 접속해 실시간으로 결과가 들어오는 모습을 확인하세요. 브라우저에서 실행을 확인할 수 있는 링크는 모든 의존성이 로드된 후에 표시됩니다. 다음과 같은 출력 내용을 찾으세요: “wandb: View run at [URL to your unique run]” 모델 성능 시각화 수십 개의 실험을 한눈에 비교하고, 흥미로운 결과를 확대해 살펴보며, 고차원 데이터를 시각화할 수 있습니다.
모델 지표 대시보드
아키텍처 비교 다음은 BERT vs DistilBERT를 비교한 예시입니다. 자동 선 그래프 시각화를 통해, 서로 다른 아키텍처가 학습 전체에 걸쳐 평가 정확도에 어떤 영향을 미치는지 쉽게 확인할 수 있습니다.
BERT vs DistilBERT 비교

기본 설정만으로 핵심 정보를 손쉽게 추적하기

W&B는 각 실험마다 새로운 실행을 생성해 저장합니다. 기본적으로 다음 정보가 자동으로 저장됩니다:
  • 하이퍼파라미터: 모델 설정값이 Config에 저장됩니다
  • 모델 지표: 스트리밍되는 지표의 시계열 데이터가 Log에 저장됩니다
  • 터미널 로그: 명령줄 출력이 저장되며, 별도 탭에서 확인할 수 있습니다
  • 시스템 지표: GPU와 CPU 사용률, 메모리, 온도 등이 기록됩니다

더 알아보기