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