YOLO11 학습 수준 향상: Comet ML로 로깅 프로세스 간소화
파라미터, 메트릭, 이미지 예측, 모델 체크포인트와 같은 주요 학습 세부 정보를 로깅하는 것은 머신 러닝에서 필수적입니다. 이는 프로젝트의 투명성을 유지하고, 진행 상황을 측정 가능하게 하며, 결과를 반복 가능하게 합니다.
참고: Ultralytics YOLO 모델 학습 로그 및 메트릭에 Comet ML을 사용하는 방법 🚀
Ultralytics YOLO11은 Comet ML과 완벽하게 통합되어 YOLO11 객체 감지 모델의 학습 프로세스의 모든 측면을 효율적으로 캡처하고 최적화합니다. 이 가이드에서는 설치 프로세스, Comet ML 설정, 실시간 통찰력, 사용자 정의 로깅 및 오프라인 사용법을 다루어 YOLO11 학습이 철저하게 문서화되고 뛰어난 결과를 위해 미세 조정되도록 합니다.
Comet ML
Comet ML은 머신 러닝 모델 및 실험을 추적, 비교, 설명 및 최적화하기 위한 플랫폼입니다. 모델 학습 중에 메트릭, 파라미터, 미디어 등을 기록하고 미적으로 보기 좋은 웹 인터페이스를 통해 실험을 모니터링할 수 있습니다. Comet ML은 데이터 과학자가 더 빠르게 반복하고, 투명성과 재현성을 향상시키며, 프로덕션 모델 개발을 지원합니다.
YOLO11과 Comet ML의 강력한 기능 활용
Ultralytics YOLO11과 Comet ML을 결합하면 다양한 이점을 얻을 수 있습니다. 여기에는 간소화된 실험 관리, 빠른 조정을 위한 실시간 통찰력, 유연하고 맞춤화된 로깅 옵션, 인터넷 액세스가 제한된 경우 실험을 오프라인으로 로깅하는 기능이 포함됩니다. 이 통합을 통해 데이터 기반 의사 결정을 내리고, 성능 메트릭을 분석하고, 뛰어난 결과를 얻을 수 있습니다.
설치
필수 패키지를 설치하려면 다음을 실행합니다:
설치
# Install the required packages for YOLO11 and Comet ML
pip install ultralytics comet_ml torch torchvision
Comet ML 구성
필수 패키지를 설치한 후 가입하고 Comet API 키를 받아 구성해야 합니다.
Comet ML 구성
# Set your Comet Api Key
export COMET_API_KEY=YOUR_API_KEY
그런 다음 Comet 프로젝트를 초기화할 수 있습니다. Comet은 API 키를 자동으로 감지하고 설정을 진행합니다.
Comet 프로젝트 초기화
import comet_ml
comet_ml.login(project_name="comet-example-yolo11-coco128")
Google Colab 노트북을 사용하는 경우 위의 코드는 초기화를 위해 API 키를 입력하라는 메시지를 표시합니다.
사용법
사용 지침을 살펴보기 전에 Ultralytics에서 제공하는 다양한 YOLO11 모델을 확인하십시오. 이는 프로젝트 요구 사항에 가장 적합한 모델을 선택하는 데 도움이 될 것입니다.
사용법
from ultralytics import YOLO
# Load a model
model = YOLO("yolo11n.pt")
# Train the model
results = model.train(
data="coco8.yaml",
project="comet-example-yolo11-coco128",
batch=32,
save_period=1,
save_json=True,
epochs=3,
)
훈련 코드를 실행하면 Comet ML은 Comet 작업 공간에 실험을 생성하여 실행을 자동으로 추적합니다. 그런 다음 YOLO11 모델 훈련 프로세스의 자세한 로깅을 볼 수 있는 링크가 제공됩니다.
Comet은 추가 구성 없이 mAP 및 손실과 같은 메트릭, 하이퍼파라미터, 모델 체크포인트, 대화형 혼동 행렬 및 이미지 바운딩 박스 예측과 같은 데이터를 자동으로 기록합니다.
Comet ML 시각화를 통한 모델 성능 이해
YOLO11 모델이 훈련을 시작하면 Comet ML 대시보드에서 볼 수 있는 내용을 살펴보겠습니다. 대시보드는 모든 작업이 수행되는 곳이며 시각 자료와 통계를 통해 자동으로 기록된 다양한 정보를 제공합니다. 다음은 간단한 둘러보기입니다.
실험 패널
Comet ML 대시보드의 실험 패널 섹션은 세그먼트 마스크 손실, 클래스 손실, 정밀도 및 평균 평균 정밀도와 같은 다양한 실행 및 해당 메트릭을 구성하고 표시합니다.
메트릭
메트릭 섹션에서는 여기에 표시된 것처럼 전용 창에 표시되는 테이블 형식으로 메트릭을 검사할 수도 있습니다.
대화형 오차 행렬
오차 행렬 탭에서 볼 수 있는 오차 행렬은 모델의 분류 정확도를 평가하는 대화형 방법을 제공합니다. 올바른 예측과 잘못된 예측에 대한 세부 정보를 제공하여 모델의 강점과 약점을 파악할 수 있습니다.
시스템 메트릭
Comet ML은 학습 프로세스의 병목 현상을 식별하는 데 도움이 되도록 시스템 메트릭을 기록합니다. 여기에는 GPU 사용률, GPU 메모리 사용량, CPU 사용률 및 RAM 사용량과 같은 메트릭이 포함됩니다. 이는 모델 학습 중 리소스 사용의 효율성을 모니터링하는 데 필수적입니다.
Comet ML 로깅 사용자 정의
Comet ML은 환경 변수를 설정하여 로깅 동작을 유연하게 사용자 정의할 수 있도록 지원합니다. 이러한 구성을 통해 특정 요구 사항 및 기본 설정에 맞게 Comet ML을 조정할 수 있습니다. 다음은 몇 가지 유용한 사용자 정의 옵션입니다.
이미지 예측 로깅
Comet ML이 실험 중에 기록하는 이미지 예측 수를 제어할 수 있습니다. 기본적으로 Comet ML은 유효성 검사 세트에서 100개의 이미지 예측을 기록합니다. 그러나 이 숫자를 요구 사항에 맞게 변경할 수 있습니다. 예를 들어 200개의 이미지 예측을 기록하려면 다음 코드를 사용하십시오.
import os
os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
배치 로깅 간격
Comet ML을 사용하면 이미지 예측 배치를 기록하는 빈도를 지정할 수 있습니다. COMET_EVAL_BATCH_LOGGING_INTERVAL
환경 변수는 이 빈도를 제어합니다. 기본 설정은 1이며, 모든 유효성 검사 배치에서 예측을 기록합니다. 이 값을 조정하여 다른 간격으로 예측을 기록할 수 있습니다. 예를 들어 4로 설정하면 4번째 배치마다 예측을 기록합니다.
import os
os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
오차 행렬 로깅 비활성화
경우에 따라 모든 유효성 검사 세트에서 오차 행렬을 기록하지 않을 수 있습니다. epoch. 이 기능을 비활성화하려면 COMET_EVAL_LOG_CONFUSION_MATRIX
환경 변수를 "false"로 설정하십시오. 오차 행렬은 학습이 완료된 후에 한 번만 기록됩니다.
import os
os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
오프라인 로깅
인터넷 접속이 제한된 상황에서는 Comet ML이 오프라인 로깅 옵션을 제공합니다. 이 기능을 활성화하려면 COMET_MODE
환경 변수를 "offline"으로 설정할 수 있습니다. 실험 데이터는 로컬 디렉터리에 저장되며, 인터넷 연결이 가능할 때 Comet ML에 업로드할 수 있습니다.
import os
os.environ["COMET_MODE"] = "offline"
요약
이 가이드에서는 Comet ML을 Ultralytics의 YOLO11과 통합하는 방법을 안내했습니다. 설치부터 사용자 정의에 이르기까지 실험 관리 간소화, 실시간 인사이트 확보, 프로젝트 요구 사항에 맞게 로깅을 조정하는 방법을 배웠습니다.
YOLO11과의 통합에 대한 더 많은 정보를 얻으려면 Comet ML 공식 문서를 살펴보십시오.
또한 YOLO11의 실제 적용, 특히 이미지 분할 작업에 대해 더 자세히 알고 싶다면 Comet ML을 사용한 YOLO11 미세 조정에 대한 이 자세한 가이드에서 모델 성능을 향상시키기 위한 귀중한 정보와 단계별 지침을 제공합니다.
또한 Ultralytics와의 다른 흥미로운 통합을 탐색하려면 다양한 리소스와 정보를 제공하는 통합 가이드 페이지를 확인하십시오.
FAQ
Ultralytics YOLO11 학습을 위해 Comet ML을 어떻게 통합합니까?
Comet ML을 Ultralytics YOLO11과 통합하려면 다음 단계를 따르십시오.
-
필수 패키지 설치:
pip install ultralytics comet_ml torch torchvision
-
Comet API 키 설정:
export COMET_API_KEY=YOUR_API_KEY
-
python 코드에서 Comet 프로젝트 초기화:
import comet_ml comet_ml.login(project_name="comet-example-yolo11-coco128")
-
YOLO11 모델을 훈련하고 메트릭 기록:
from ultralytics import YOLO model = YOLO("yolo11n.pt") results = model.train( data="coco8.yaml", project="comet-example-yolo11-coco128", batch=32, save_period=1, save_json=True, epochs=3, )
자세한 내용은 Comet ML 구성 섹션을 참조하십시오.
YOLO11과 함께 Comet ML을 사용하면 어떤 이점이 있습니까?
Ultralytics YOLO11을 Comet ML과 통합하면 다음과 같은 이점이 있습니다:
- 실시간 인사이트 모니터링: 학습 결과에 대한 즉각적인 피드백을 받아 신속하게 조정할 수 있습니다.
- 광범위한 메트릭 로깅: mAP, 손실, 하이퍼파라미터 및 모델 체크포인트와 같은 필수 메트릭을 자동으로 캡처합니다.
- 오프라인 실험 추적: 인터넷에 연결할 수 없는 경우 로컬에서 학습 실행을 로깅합니다.
- 다양한 학습 실행 비교: 대화형 Comet ML 대시보드를 사용하여 여러 실험을 분석하고 비교합니다.
이러한 기능을 활용하여 더 나은 성능과 재현성을 위해 머신 러닝 워크플로를 최적화할 수 있습니다. 자세한 내용은 Comet ML 통합 가이드를 참조하십시오.
YOLO11 학습 중 Comet ML의 로깅 동작을 어떻게 사용자 정의합니까?
Comet ML은 환경 변수를 사용하여 로깅 동작을 광범위하게 사용자 정의할 수 있습니다.
-
로깅되는 이미지 예측 수 변경:
import os os.environ["COMET_MAX_IMAGE_PREDICTIONS"] = "200"
-
배치 로깅 간격 조정:
import os os.environ["COMET_EVAL_BATCH_LOGGING_INTERVAL"] = "4"
-
오차 행렬 로깅 비활성화:
import os os.environ["COMET_EVAL_LOG_CONFUSION_MATRIX"] = "false"
더 많은 사용자 정의 옵션은 Comet ML 로깅 사용자 정의 섹션을 참조하십시오.
Comet ML에서 YOLO11 학습에 대한 자세한 메트릭 및 시각화를 어떻게 볼 수 있습니까?
YOLO11 모델 학습이 시작되면 Comet ML 대시보드에서 광범위한 메트릭 및 시각화에 액세스할 수 있습니다. 주요 기능은 다음과 같습니다.
- 실험 패널: 세그먼트 마스크 손실, 클래스 손실 및 평균 정밀도를 포함하여 다양한 실행 및 해당 메트릭을 봅니다.
- 지표: 자세한 분석을 위해 표 형식으로 지표를 검토합니다.
- 대화형 오차 행렬: 대화형 오차 행렬로 분류 정확도를 평가합니다.
- 시스템 지표: GPU 및 CPU 사용률, 메모리 사용량 및 기타 시스템 지표를 모니터링합니다.
이러한 기능에 대한 자세한 개요는 Comet ML 시각화를 통한 모델 성능 이해 섹션을 참조하십시오.
YOLO11 모델을 학습할 때 Comet ML을 사용하여 오프라인 로깅을 할 수 있습니까?
예, Comet ML에서 다음을 설정하여 오프라인 로깅을 활성화할 수 있습니다. COMET_MODE
환경 변수를 "offline"으로 설정합니다:
import os
os.environ["COMET_MODE"] = "offline"
이 기능을 사용하면 실험 데이터를 로컬에 기록할 수 있으며, 인터넷 연결이 가능할 때 나중에 Comet ML에 업로드할 수 있습니다. 이는 인터넷 액세스가 제한된 환경에서 작업할 때 특히 유용합니다. 자세한 내용은 오프라인 로깅 섹션을 참조하십시오.