콘텐츠로 건너뛰기

YOLOv6.0과 YOLOX: 산업용 속도와 앵커 없는 정밀도에 대한 심층 분석

최적의 객체 감지 아키텍처를 선택하는 것은 컴퓨터 비전 시스템의 효율성과 기능에 영향을 미치는 중요한 결정입니다. 이 기술 비교에서는 실시간 감지 환경을 형성한 두 가지 영향력 있는 모델인 YOLOv6.0과 YOLOX를 살펴봅니다. 아키텍처 혁신, 벤치마크 성능 메트릭, 다양한 배포 시나리오에 대한 적합성을 분석합니다.

YOLOv6.0: 산업 효율성을 위한 설계

저자: 추이 리, 룰루 리, 이페이 겅, 홍량 장, 멩 청, 보 장, 자이단 케, 샤오밍 쉬, 샹샹 추
조직: Meituan
날짜: 2023-01-13
아카이브: YOLOv6 v3.0: 본격적인 리로딩
GitHub: YOLOv6
Docs: Ultralytics YOLOv6 문서

메이투안의 비전 AI 부서에서 개발한 YOLOv6.0은 하드웨어 리소스에 제약이 많지만 실시간 속도는 타협할 수 없는 산업용 애플리케이션을 위해 명시적으로 설계되었습니다. 표준 GPU 하드웨어에서 물체 감지 파이프라인의 처리량을 극대화하는 데 중점을 둡니다.

아키텍처 및 주요 기능

YOLOv6.0은 추론 비용을 늘리지 않고 정확도를 높이기 위해 일련의 '공짜 가방'을 도입했습니다.

  • 재파라미터화 가능한 백본: 훈련(풍부한 기능 캡처) 중에는 복잡한 다중 분기 구조를 허용하고 추론 중에는 단순하고 빠른 단일 경로 구조로 축소되는 EfficientRep 백본을 활용합니다.
  • 앵커 지원 훈련(AAT): 추론 중에는 모델이 앵커 없는 감지기로 작동하지만, 훈련 중에는 앵커 기반 보조 분기를 사용하여 수렴을 안정화하고 성능을 개선합니다.
  • 자가 증류: 학생 모델이 자체 교사 모델의 예측을 통해 학습하여 외부 의존성 없이 정확도를 개선하는 지식 증류 기법입니다.

강점과 약점

YOLOv6.0의 가장 큰 강점은 지연 시간 최적화에 있습니다. 다음과 같이 최적화하면 NVIDIA GPU에서 뛰어난 추론 속도를 달성할 수 있습니다. TensorRT로 최적화할 경우 NVIDIA GPU에서 뛰어난 추론 속도를 달성하므로 처리량이 많은 공장 자동화 및 스마트 시티 감시에 적합한 강력한 후보입니다. 또한 양자화 인식 트레이닝(QAT)을 지원하므로 정밀도 요구 사항이 낮은 엣지 디바이스에 배포하는 데 도움이 됩니다.

그러나 이 모델은 다소 전문화되어 있습니다. 광범위한 프레임워크에서 볼 수 있는 기본 멀티태스크 다용도성이 부족하며, 거의 전적으로 탐지에만 초점을 맞추고 있습니다. 또한, 이 모델의 에코시스템은 강력하지만 Ultralytics 모델을 둘러싼 커뮤니티보다 규모가 작아 틈새 데이터 세트에 대한 타사 자습서 및 사전 학습된 가중치의 가용성이 제한될 가능성이 있습니다.

YOLOv6 대해 자세히 알아보기

YOLOX: 단순성과 앵커 없는 혁신

저자 Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, Jian Sun
조직: Megvii
날짜: 2021-07-18
아카이브 : YOLO : 2021년에 YOLO 시리즈를 넘어서
GitHub: Megvii-BaseDetection/YOLOX
문서: YOLOX 문서

욜록스는 앵커가 필요 없는 디텍터를 주류 YOLO 제품군에 도입함으로써 패러다임의 전환을 가져왔습니다. 미리 정의된 앵커 박스가 필요하지 않아 설계 프로세스가 간소화되고 다양한 물체 형태에 대한 일반화가 개선되었습니다.

아키텍처 및 주요 기능

YOLOX는 몇 가지 고급 기술을 통합하여 깔끔한 아키텍처를 유지하면서 성능을 향상시킵니다:

  • 분리된 헤드: 결합된 헤드(분류 및 로컬라이제이션 기능 공유)를 사용했던 이전 YOLO 버전과 달리 YOLOX는 이러한 작업을 분리하여 더 빠른 융합과 더 나은 정확도를 이끌어냅니다.
  • SimOTA 라벨 할당: 훈련 프로세스를 최적의 전송 문제로 취급하는 고급 동적 라벨 할당 전략으로, 비용을 최소화하는 방식으로 양성 샘플을 기준 진실에 자동으로 할당합니다.
  • 강력한 증강: 이 기능은 MixUp 및 모자이크 증강을 많이 활용하여 사전 학습된 백본 없이도 모델이 강력한 기능을 학습할 수 있습니다.

강점과 약점

YOLOX는 정밀도와 연구 유연성이 뛰어납니다. 앵커가 없는 특성 덕분에 비정상적인 종횡비를 가진 물체를 감지하는 데 특히 효과적이며, 이러한 시나리오에서 앵커 기반 동급 제품보다 성능이 뛰어난 경우가 많습니다. 또한 YOLOX-Nano 모델은 매우 가볍기 때문에(1M 매개변수 미만) 초저전력 마이크로컨트롤러에 이상적입니다.

단점은 같은 수준의 정확도를 제공하는 YOLOv6 또는 YOLO11 같은 최신 모델에 비해 YOLOX는 FLOPs 측면에서 계산 비용이 더 많이 들 수 있다는 점입니다. 훈련 파이프라인은 효과적이기는 하지만 복잡한 동적 라벨 할당 계산으로 인해 속도가 느려질 수 있으며, 일반적으로 고도로 최적화된 Ultralytics 구현에 비해 훈련 중에 더 많은 GPU 메모리를 필요로 합니다.

YOLOX에 대해 자세히 알아보세요

성능 비교: 메트릭 및 분석

다음 표는 COCO 데이터 세트의 주요 성능 메트릭을 일대일로 비교한 것입니다.

모델크기
(픽셀)
mAPval
50-95
속도
CPU ONNX
(ms)
속도
T4 TensorRT10
(ms)
파라미터
(M)
FLOPs
(B)
YOLOv6.0n64037.5-1.174.711.4
YOLOv6.0s64045.0-2.6618.545.3
YOLOv6.0m64050.0-5.2834.985.8
YOLOv6.0l64052.8-8.9559.6150.7
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

분석

이 데이터는 디자인 철학의 뚜렷한 차이를 보여줍니다. YOLOv6.0 는 하드웨어 인식 효율성에서 우위를 점하고 있습니다. 예를 들어 YOLOv6-3.0n 는 T4 GPU에서 동급 모델의 일반적인 벤치마크보다 훨씬 빠른 1.17ms라는 놀라운 추론 시간을 달성했습니다. 그리고 YOLOv6-3.0l 또한 가장 큰 욜록스 모델(YOLOXx)의 정확도(52.8 대 51.1 mAP)를 거의 절반으로 사용하면서도 플롭.

YOLOX는 반대로 초경량 부문에서 우승했습니다. 그리고 YOLOXnano 는 100만 개 미만의 파라미터로, 최신 감지기가 거의 복제하지 못하므로 컴퓨팅 속도보다는 메모리 스토리지가 주요 병목 현상인 특정 IoT 애플리케이션에 매우 적합합니다. 그러나 범용 감지의 경우, YOLOv6 비슷한 정확도를 위해 더 많은 파라미터가 필요한 경향이 있습니다.

하드웨어 고려 사항

배포 대상이 최신 NVIDIA GPU (예: Jetson Orin, T4, A100)인 경우, 특수 백본으로 인해 YOLOv6.0이 더 나은 처리량을 제공할 가능성이 높습니다. 스토리지 제한이 매우 엄격한 일반 CPU 또는 레거시 임베디드 시스템을 대상으로 하는 경우 YOLOX Nano가 더 적합할 수 있습니다.

Ultralytics의 장점: YOLO11을 선택해야 하는 이유

YOLOv6 특정 틈새 시장을 위한 강력한 솔루션을 제공합니다, Ultralytics YOLO11 은 최첨단 연구의 결정체로, 대다수의 개발자에게 속도, 정확성, 유용성의 탁월한 균형을 제공합니다.

탁월한 활용성 및 에코시스템

바운딩 박스 감지에만 집중하는 경쟁사와 달리 YOLO11 인스턴스 세분화, 포즈 추정, OBB(지향 객체 감지), 분류 등 다양한 컴퓨터 비전 작업을 기본적으로 지원합니다. 이를 통해 개발자는 단일 프레임워크로 복잡한 다단계 문제를 해결할 수 있습니다.

또한, Ultralytics 에코시스템은 적극적으로 유지 관리되어 최신 Python 버전, PyTorch 업데이트 및 다음과 같은 배포 대상과의 호환성을 보장합니다. CoreML, OpenVINOONNX.

효율성 및 사용 편의성

YOLO11 훈련 효율을 위해 설계되었으며, 일반적으로 트랜스포머 기반 대안(예: RT-DETR)이나 이전 YOLO 버전보다 적은 GPU 메모리를 필요로 합니다. 따라서 연구자들은 소비자용 하드웨어에서 더 큰 규모의 모델을 훈련할 수 있습니다. Python API는 간단하게 설계되어 사용자가 단 몇 줄의 코드만으로 설치부터 추론까지 진행할 수 있습니다:

from ultralytics import YOLO

# Load the YOLO11 model (n, s, m, l, or x)
model = YOLO("yolo11n.pt")

# Perform inference on an image
results = model("path/to/image.jpg")

# Export to ONNX for deployment
model.export(format="onnx")

실제 성능 균형

벤치마크 결과, YOLO11 지속적으로 더 높은 mAP 점수가 YOLOv6 및 YOLOX보다 비슷하거나 더 빠른 추론 속도를 보여줍니다. 이러한 "파레토 최적" 성능 덕분에 자율 주행 차량에서 의료 영상 분석에 이르는 다양한 애플리케이션에 권장되는 제품입니다.

결론

YOLOv6.0과 YOLOX를 비교할 때, 특정 제약 조건에 따라 선택이 크게 달라집니다. 밀리초 수준의 지연 시간이 중요한 엄격한 산업용 GPU 배포에는 YOLOv6.0이 적합합니다. 앵커가 없는 아키텍처에 대한 연구와 나노 모델을 통한 극도로 제약적인 스토리지 환경에서는 YOLOX가 여전히 확실한 선택입니다.

하지만 최고 수준의 성능과 사용하기 쉽고 기능이 풍부한 플랫폼을 결합한 미래 지향적인 솔루션을 찾는 개발자에게는 최고의 선택입니다, Ultralytics YOLO11 이 최종 승자입니다. 여러 작업을 원활하게 처리하는 기능과 광범위한 문서화 및 광범위한 배포 지원이 결합되어 개념에서 프로덕션까지 개발 라이프사이클을 가속화합니다.

다른 비교를 통해 다음과 비교하여 Ultralytics 모델이 어떻게 비교되는지 살펴보세요. RT-DETR 또는 YOLOv7.


댓글