Weights & Biases를 활용한 YOLO 실험 추적 및 시각화#
객체 탐지 모델인 Ultralytics YOLO26은 다양한 컴퓨터 비전 애플리케이션의 핵심 요소가 되었습니다. 그러나 이러한 복잡한 모델을 학습하고, 평가하고, 배포하는 과정에서는 여러 가지 문제가 발생합니다. 주요 학습 지표 추적, 모델 변형 비교, 모델 동작 분석, 문제 감지에는 상당한 수준의 계측과 실험 관리가 필요합니다.
Watch: How to use Ultralytics YOLO26 with Weights and Biases
이 가이드에서는 향상된 실험 추적, 모델 체크포인트 관리 및 모델 성능 시각화를 위해 Ultralytics YOLO26을 Weights & Biases와 통합하는 방법을 소개합니다. 또한 Weights & Biases의 대화형 기능을 사용하여 통합을 설정하고, 학습하고, 결과를 시각화하는 방법도 설명합니다.
Weights & Biases#
Weights & Biases는 머신 러닝 실험을 추적, 시각화 및 관리하도록 설계된 최첨단 MLOps 플랫폼입니다. 전체 실험 재현성을 위한 학습 지표 자동 로깅, 간소화된 데이터 분석을 위한 대화형 UI, 다양한 환경에 배포할 수 있는 효율적인 모델 관리 도구를 제공합니다.
Weights & Biases를 활용한 YOLO26 학습#
Weights & Biases를 사용하면 YOLO26 학습 프로세스의 효율성과 자동화를 높일 수 있습니다. 이 통합을 통해 실험을 추적하고, 모델을 비교하며, 컴퓨터 비전 프로젝트를 개선하기 위한 데이터 기반 의사 결정을 내릴 수 있습니다.
설치#
필요한 패키지를 설치하려면 다음을 실행합니다:
# Install the required packages for Ultralytics YOLO and Weights & Biases
pip install -U ultralytics wandb
# Enable W&B logging for Ultralytics
yolo settings wandb=True설치 프로세스와 관련된 자세한 지침 및 모범 사례는 YOLO26 설치 가이드를 확인하시기 바랍니다. YOLO26에 필요한 패키지를 설치하는 동안 문제가 발생하면 일반적인 문제 가이드에서 해결 방법과 팁을 확인하세요.
Weights & Biases 구성#
필요한 패키지를 설치한 후 다음 단계는 Weights & Biases 환경을 설정하는 것입니다. 여기에는 Weights & Biases 계정을 생성하고 개발 환경과 W&B 플랫폼 간의 원활한 연결에 필요한 API 키를 가져오는 과정이 포함됩니다.
먼저 작업 공간에서 Weights & Biases 환경을 초기화합니다. 다음 명령을 실행한 후 표시되는 안내를 따르면 됩니다.
import wandb
# Initialize your Weights & Biases environment
wandb.login(key="YOUR_API_KEY")Weights & Biases 인증 페이지로 이동하여 API 키를 생성하고 가져옵니다. W&B에서 환경을 인증하라는 메시지가 표시되면 이 키를 사용합니다.
사용법: Weights & Biases를 활용한 YOLO26 학습#
Weights & Biases를 사용한 YOLO26 모델 학습 방법을 살펴보기 전에 Ultralytics에서 제공하는 YOLO26 모델을 확인하시기 바랍니다. 이를 통해 프로젝트 요구 사항에 가장 적합한 모델을 선택할 수 있습니다.
from ultralytics import YOLO
# Load a YOLO model
model = YOLO("yolo26n.pt")
# Train and Fine-Tune the Model
model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo26n")W&B 인수#
| 인수 | 기본값 | 설명 |
|---|---|---|
| project | None | 로컬과 W&B에 기록되는 프로젝트의 이름을 지정합니다. 이를 통해 여러 실행을 하나의 그룹으로 묶을 수 있습니다. |
| name | None | 학습 실행의 이름입니다. 하위 폴더를 생성할 때 사용되는 이름과 W&B 로깅에 사용되는 이름을 결정합니다. |
| save | True | 최상의 체크포인트를 W&B 모델 아티팩트로 업로드할지 여부를 결정합니다. |
Ultralytics에서 Weights & Biases 로깅을 활성화하거나 비활성화하려면 yolo settings 명령을 사용할 수 있습니다. 기본적으로 Weights & Biases 로깅은 비활성화되어 있습니다.
# Enable Weights & Biases logging
yolo settings wandb=True
# Disable Weights & Biases logging
yolo settings wandb=False출력 이해하기#
위의 사용 코드 스니펫을 실행하면 다음과 같은 주요 출력이 표시됩니다.
- 고유 ID가 포함된 새 실행 설정으로, 학습 프로세스의 시작을 나타냅니다.
- 레이어 수와 파라미터 수를 포함한 모델 구조의 간결한 요약입니다.
- 각 학습 에포크 동안 box loss, cls loss, box-distance loss, 정밀도, 재현율, mAP 점수와 같은 주요 지표가 정기적으로 업데이트됩니다.
- 학습이 끝나면 모델의 추론 속도와 전반적인 정확도 지표를 포함한 상세 지표가 표시됩니다.
- 학습 프로세스를 심층적으로 분석하고 시각화할 수 있는 Weights & Biases 대시보드 링크와 로컬 로그 파일 위치 정보가 제공됩니다.
Weights & Biases 대시보드 보기#
사용 코드 스니펫을 실행한 후 출력에 제공된 링크를 통해 Weights & Biases (W&B) 대시보드에 액세스할 수 있습니다. 이 대시보드에서는 YOLO26을 사용한 모델 학습 프로세스를 종합적으로 확인할 수 있습니다.
Weights & Biases 대시보드의 주요 기능#
-
실시간 지표 추적: 학습 중 변화하는 loss, 정확도, 검증 점수 등의 지표를 관찰하여 모델 튜닝에 즉각적인 인사이트를 얻을 수 있습니다. Weights & Biases를 사용하여 실험을 추적하는 방법 보기.
-
하이퍼파라미터 최적화: Weights & Biases는 학습률, 배치 크기 등의 주요 파라미터를 미세 조정하여 YOLO26의 성능을 향상하는 데 도움을 줍니다. 이를 통해 특정 데이터셋과 작업에 가장 적합한 구성을 찾을 수 있습니다.
-
비교 분석: 이 플랫폼에서는 서로 다른 학습 실행을 나란히 비교할 수 있습니다. 이를 통해 다양한 모델 구성의 영향을 평가하고 어떤 변경 사항이 성능을 향상하는지 파악할 수 있습니다.
-
학습 진행 상황 시각화: 주요 지표를 그래프로 표현하여 에포크 전반에 걸친 모델 성능을 직관적으로 이해할 수 있습니다. Weights & Biases가 검증 결과 시각화에 도움을 주는 방법 보기.
-
리소스 모니터링: CPU, GPU 및 메모리 사용량을 추적하여 학습 프로세스의 효율성을 최적화하고 워크플로의 잠재적인 병목 현상을 식별할 수 있습니다.
-
모델 아티팩트 관리: 모델 체크포인트에 액세스하고 공유하여 복잡한 프로젝트에서 간편한 배포와 팀원 간 협업을 지원합니다.
이러한 기능을 사용하면 YOLO26 모델의 학습을 효과적으로 추적, 분석 및 최적화하여 객체 탐지 작업에서 최고의 성능과 효율성을 확보할 수 있습니다.
요약#
이 가이드에서는 Ultralytics YOLO와 Weights & Biases의 통합을 살펴보았습니다. 이 통합을 통해 모델 학습 및 예측 결과를 효율적으로 추적하고 시각화할 수 있습니다. W&B의 강력한 기능을 활용하면 머신 러닝 워크플로를 간소화하고, 데이터 기반 의사 결정을 내리며, 모델 성능을 향상할 수 있습니다.
사용법에 대한 자세한 내용은 Weights & Biases 공식 문서를 참조하거나, 이 통합에 관한 YOLO VISION 2023의 Soumik Rakshit 프레젠테이션을 확인하시기 바랍니다.
또한 다양한 유용한 통합 기능을 자세히 알아보려면 Ultralytics 통합 가이드 페이지를 확인하시기 바랍니다. 여기에는 MLflow 및 Comet ML과 같은 통합이 포함됩니다.
FAQ#
Weights & Biases를 Ultralytics YOLO26과 통합하려면 다음을 수행합니다.
-
필요한 패키지를 설치합니다.
pip install -U ultralytics wandb yolo settings wandb=True -
Weights & Biases 계정에 로그인합니다.
import wandb wandb.login(key="YOUR_API_KEY") -
W&B 로깅을 활성화한 상태로 YOLO26 모델을 학습합니다.
from ultralytics import YOLO model = YOLO("yolo26n.pt") model.train(data="coco8.yaml", epochs=5, project="ultralytics", name="yolo26n")
그러면 지표, 하이퍼파라미터 및 모델 아티팩트가 W&B 프로젝트에 자동으로 기록됩니다.
-
주요 기능은 다음과 같습니다.
- 학습 중 실시간 지표 추적
- 하이퍼파라미터 최적화 도구
- 서로 다른 학습 실행의 비교 분석
- 그래프를 통한 학습 진행 상황 시각화
- 리소스 모니터링(CPU, GPU, 메모리 사용량)
- 모델 아티팩트 관리 및 공유
이러한 기능은 YOLO26 프로젝트에서 실험을 추적하고, 모델을 최적화하며, 보다 효과적으로 협업하는 데 도움을 줍니다.
W&B 통합을 사용하여 학습 스크립트를 실행한 후 다음을 수행합니다.
- W&B 대시보드 링크가 콘솔 출력에 제공됩니다.
- 링크를 클릭하거나 wandb.ai로 이동하여 계정에 로그인합니다.
- 프로젝트로 이동하여 상세 지표, 시각화 및 모델 성능 데이터를 확인합니다.
대시보드에서는 모델 학습 프로세스에 대한 인사이트를 제공하므로 YOLO26 모델을 효과적으로 분석하고 개선할 수 있습니다.
예. 다음 명령을 사용하여 W&B 로깅을 비활성화할 수 있습니다.
yolo settings wandb=False로깅을 다시 활성화하려면 다음을 사용합니다.
yolo settings wandb=True이를 통해 학습 스크립트를 수정하지 않고도 W&B 로깅을 사용할 시점을 제어할 수 있습니다.
Weights & Biases는 다음과 같은 방식으로 YOLO26 모델 최적화를 지원합니다.
- 학습 지표의 상세한 시각화 제공
- 서로 다른 모델 버전 간의 간편한 비교 지원
- 하이퍼파라미터 튜닝을 위한 도구 제공
- 모델 성능의 협업 분석 지원
- 모델 아티팩트 및 결과의 간편한 공유 지원
이러한 기능을 통해 연구자와 개발자는 더 빠르게 반복 작업을 수행하고 데이터 기반 의사 결정을 내려 YOLO26 모델을 개선할 수 있습니다.