Ultralytics YOLO 모델로 훈련, 검증, 예측, 내보내기 및 벤치마크하는 방법을 알아보세요!

Ultralytics YOLO 모델로 훈련, 검증, 예측, 내보내기 및 벤치마크하는 방법을 알아보세요!
Ultralytics의 세계로 뛰어들어 다양한 YOLO 모델에 사용할 수 있는 다양한 모드를 살펴보겠습니다. 사용자 정의 객체 탐지 모델을 훈련하든 세분화 작업을 수행하든, 이러한 모드를 이해하는 것은 중요한 단계입니다. 바로 시작해 봅시다!
Ultralytics 문서를 통해 모델 학습, 검증, 예측, 내보내기, 벤치마크 또는 추적 등 모델에 활용할 수 있는 다양한 모드를 확인할 수 있습니다. 이러한 각 모드는 고유한 목적을 수행하며 모델의 성능과 배포를 최적화하는 데 도움이 됩니다.
먼저 훈련 모드를 살펴보겠습니다. 여기에서 모델을 구축하고 개선합니다. 문서에서 자세한 지침과 비디오 가이드를 찾을 수 있으므로 사용자 정의 모델 훈련을 쉽게 시작할 수 있습니다.
모델 훈련은 모델에 새로운 데이터 세트를 제공하여 다양한 패턴을 학습하도록 하는 것을 포함합니다. 훈련이 완료되면 모델을 실시간으로 사용하여 훈련된 새로운 객체를 감지할 수 있습니다. 훈련 프로세스를 시작하기 전에 데이터 세트를 YOLO 형식으로 주석을 다는 것이 필수적입니다.
다음으로 유효성 검사 모드에 대해 자세히 살펴보겠습니다. 유효성 검사는 하이퍼파라미터를 조정하고 모델이 제대로 작동하는지 확인하는 데 필수적입니다. Ultralytics는 자동 설정, 다중 메트릭 지원 및 Python API와의 호환성을 포함한 다양한 유효성 검사 옵션을 제공합니다. 아래 명령을 사용하여 명령줄 인터페이스(CLI)를 통해 직접 유효성 검사를 실행할 수도 있습니다.
검증은 다음에 중요합니다:
Ultralytics는 또한 사용자가 Python 스크립트에 복사하여 붙여넣을 수 있는 사용자 예제를 제공합니다. 이러한 예제에는 이미지 크기, 배치 크기, 장치(CPU 또는 GPU) 및 IoU(Intersection over Union)와 같은 파라미터가 포함됩니다.
모델을 훈련하고 검증했으면 이제 예측을 수행할 차례입니다. 예측 모드를 사용하면 새로운 데이터에 대한 추론을 실행하고 모델이 작동하는 것을 볼 수 있습니다. 이 모드는 실제 데이터에 대한 모델의 성능을 테스트하는 데 적합합니다.
아래의 Python 코드 스니펫을 사용하면 이미지에 대한 예측을 실행할 수 있습니다!
검증 및 예측 후 모델을 배포할 수 있습니다. 내보내기 모드를 사용하면 모델을 ONNX 또는 TensorRT와 같은 다양한 형식으로 변환하여 다양한 플랫폼에서 더 쉽게 배포할 수 있습니다.
마지막으로 벤치마크 모드가 있습니다. 벤치마킹은 다양한 시나리오에서 모델의 성능을 평가하는 데 필수적입니다. 이 모드는 리소스 할당, 최적화 및 비용 효율성에 대한 정보에 입각한 결정을 내리는 데 도움이 됩니다.
벤치마크를 실행하려면 설명서에 제공된 사용자 예제를 사용할 수 있습니다. 이러한 예제는 ONNX 및 TensorRT를 포함한 주요 메트릭 및 내보내기 형식을 다룹니다. 정수 양자화(INT8) 또는 부동 소수점 양자화(FP16)와 같은 매개변수를 지정하여 다양한 설정이 성능에 미치는 영향을 확인할 수도 있습니다.
벤치마킹의 실제 사례를 살펴보겠습니다. PyTorch 모델을 벤치마킹할 때 RTX 3070 GPU에서 68밀리초의 추론 속도가 나타납니다. TorchScript로 내보낸 후 추론 속도는 4밀리초로 떨어져 상당한 개선을 보여줍니다.
ONNX 모델의 경우 21밀리초의 추론 속도를 달성합니다. CPU(Intel i9 13세대)에서 이러한 모델을 테스트하면 다양한 결과가 나타납니다. TorchScript는 115밀리초에 실행되는 반면 ONNX는 84밀리초로 더 나은 성능을 보입니다. 마지막으로 Intel 하드웨어에 최적화된 OpenVINO는 23밀리초의 놀라운 속도를 달성합니다.
벤치마킹은 서로 다른 하드웨어 및 내보내기 형식이 모델 성능에 미치는 영향을 보여줍니다. 특히 사용자 지정 하드웨어나 엣지 장치에 모델을 배포할 계획이라면 모델을 벤치마킹하는 것이 중요합니다. 이 프로세스를 통해 모델이 대상 환경에 최적화되어 가능한 최고의 성능을 제공할 수 있습니다.
요약하자면, Ultralytics 문서의 모드는 YOLO 모델을 훈련, 검증, 예측, 내보내기 및 벤치마킹하는 데 유용한 강력한 도구입니다. 각 모드는 모델을 최적화하고 배포를 준비하는 데 중요한 역할을 합니다.
저희 커뮤니티를 탐색하고 참여하여 프로젝트에서 제공된 코드 스니펫을 사용해 보는 것을 잊지 마세요. 이러한 도구를 통해 고성능 모델을 만들고 모든 환경에서 효율적으로 실행되도록 할 수 있습니다.