You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

5.8 KiB

comments description keywords
true YOLOv8 모델 검증 가이드. 검증 설정 및 측정 항목을 사용하여 YOLO 모델의 성능을 평가하는 방법에 대해 알아보세요. Python 및 CLI 예제가 포함되어 있습니다. Ultralytics, YOLO 문서, YOLOv8, 검증, 모델 평가, 하이퍼파라미터, 정확도, 측정 항목, Python, CLI

Ultralytics YOLO로 모델 검증하기

Ultralytics YOLO 생태계 및 통합

도입

검증은 훈련된 모델의 품질을 평가할 수 있게 해주는 기계학습 파이프라인에서 중요한 단계입니다. Ultralytics YOLOv8의 Val 모드는 모델의 객체 탐지 성능을 평가하기 위한 강력한 도구 및 측정 항목 모음을 제공합니다. 이 가이드는 Val 모드를 효과적으로 사용하여 모델의 정확성과 신뢰성을 보장하는 방법에 대한 완벽한 리소스 역할을 합니다.

왜 Ultralytics YOLO로 검증을 해야 할까요?

YOLOv8의 Val 모드를 사용하는 이점은 다음과 같습니다:

  • 정밀도: mAP50, mAP75, mAP50-95와 같은 정확한 측정 항목으로 모델을 종합적으로 평가합니다.
  • 편의성: 훈련 설정을 기억하는 내장 기능을 활용하여 검증 절차를 단순화합니다.
  • 유연성: 같거나 다른 데이터셋과 이미지 크기로 모델을 검증할 수 있습니다.
  • 하이퍼파라미터 튜닝: 검증 측정 항목을 사용하여 모델의 성능을 더 잘 조율합니다.

Val 모드의 주요 기능

YOLOv8의 Val 모드가 제공하는 주목할 만한 기능들은 다음과 같습니다:

  • 자동화된 설정: 모델은 훈련 구성을 기억하여 간단하게 검증이 가능합니다.
  • 멀티-메트릭 지원: 다양한 정확도 측정 항목을 기반으로 모델을 평가합니다.
  • CLI 및 Python API: 검증을 위해 명령 줄 인터페이스 또는 Python API 중에서 선택할 수 있습니다.
  • 데이터 호환성: 훈련 단계에서 사용된 데이터셋과 사용자 정의 데이터셋 모두와 원활하게 작동합니다.

!!! Tip "팁"

* YOLOv8 모델은 훈련 설정을 자동으로 기억하므로 `yolo val model=yolov8n.pt`나 `model('yolov8n.pt').val()`만으로 같은 이미지 크기와 원본 데이터셋에서 쉽게 검증할 수 있습니다.

사용 예제

COCO128 데이터셋에서 훈련된 YOLOv8n 모델의 정확도를 검증합니다. 모델은 훈련 데이터와 인자를 모델 속성으로 유지하므로 인자가 필요 없습니다. 전체 내보내기 인자 목록은 아래의 인자 섹션을 참고하세요.

!!! Example "예제"

=== "Python"

    ```python
    from ultralytics import YOLO

    # 모델 로드
    model = YOLO('yolov8n.pt')  # 공식 모델을 로드합니다
    model = YOLO('path/to/best.pt')  # 사용자 정의 모델을 로드합니다

    # 모델 검증
    metrics = model.val()  # 인자가 필요 없음, 데이터셋과 설정이 기억됩니다
    metrics.box.map    # map50-95
    metrics.box.map50  # map50
    metrics.box.map75  # map75
    metrics.box.maps   # 각 카테고리의 map50-95가 포함된 목록
    ```
=== "CLI"

    ```bash
    yolo detect val model=yolov8n.pt  # 공식 모델 검증
    yolo detect val model=path/to/best.pt  # 사용자 정의 모델 검증
    ```

인자

YOLO 모델의 검증 설정은 모델의 성능을 검증 데이터셋에서 평가하기 위한 다양한 하이퍼파라미터 및 구성을 의미합니다. 이러한 설정은 모델의 성능, 속도, 정확성에 영향을 미칠 수 있습니다. 일반적인 YOLO 검증 설정에는 배치 크기, 훈련 중 검증이 수행되는 빈도 및 모델 성능을 평가하기 위해 사용되는 측정 항목이 포함됩니다. 검증 과정에 영향을 줄 수 있는 다른 요소로는 검증 데이터셋의 크기와 구성 및 모델이 사용되는 구체적인 작업이 있습니다. 모델이 검증 데이터셋에서 잘 수행되고 있고 과적합을 감지하고 방지하기 위해서는 이러한 설정을 신중하게 조정하고 실험하는 것이 중요합니다.

Key Value Description
data None 데이터 파일 경로 예: coco128.yaml
imgsz 640 입력 이미지의 크기를 정수로 지정
batch 16 배치 당 이미지 수 (-1은 AutoBatch에 해당)
save_json False 결과를 JSON 파일로 저장
save_hybrid False 라벨의 하이브리드 버전(라벨 + 추가 예측)을 저장
conf 0.001 탐지를 위한 객체 신뢰도 임계값
iou 0.6 NMS 용 교차 영역과 합친 영역(IoU)의 임계값
max_det 300 이미지 당 최대 탐지 개수
half True 반정밀도(FP16) 사용
device None 사용할 장치 예: cuda의 device=0/1/2/3이나 device=cpu
dnn False ONNX 추론에 OpenCV DNN 사용
plots False 훈련 중 플롯 표시
rect False 최소한의 패딩을 위해 각 배치가 직사각형 val로 조정됨
split val 검증을 위해 사용되는 데이터셋 분할, 예: 'val', 'test', 혹은 'train'