YOLOX 대 EfficientDet: 기술 비교
정확도, 추론 속도 및 계산 비용의 균형을 맞추는 올바른 객체 감지 모델을 선택하는 것은 매우 중요한 결정입니다. 이 페이지에서는 Megvii의 고성능 앵커 프리 모델인 YOLOX와 Google의 확장 가능하고 효율적인 감지기 제품군인 EfficientDet 간의 자세한 기술 비교를 제공합니다. 컴퓨터 비전 프로젝트에 가장 적합한 모델을 선택하는 데 도움이 되도록 아키텍처 차이점, 성능 지표 및 이상적인 사용 사례를 자세히 살펴보겠습니다.
YOLOX: 고성능 앵커 프리(Anchor-Free) 감지
YOLOX는 Megvii에서 개발한 앵커 프리(anchor-free) 객체 감지 모델로, 최첨단 성능을 달성하면서 널리 사용되는 YOLO 아키텍처를 단순화하는 것을 목표로 합니다. 간소화되면서도 강력한 설계를 제공함으로써 학술 연구와 산업 응용 간의 간극을 해소하기 위해 도입되었습니다.
기술 세부 사항:
- 작성자: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, Jian Sun
- Organization: Megvii
- 날짜: 2021-07-18
- Arxiv: https://arxiv.org/abs/2107.08430
- GitHub: https://github.com/Megvii-BaseDetection/YOLOX
- 문서: https://yolox.readthedocs.io/en/latest/
아키텍처 및 주요 기능
YOLOX는 기존 YOLO 프레임워크에 몇 가지 중요한 수정 사항을 도입합니다.
- Anchor-Free Design: 미리 정의된 앵커 박스를 제거함으로써 YOLOX는 학습 프로세스를 단순화하고 튜닝해야 할 하이퍼파라미터 수를 줄입니다. 이 접근 방식은 다양한 객체 크기와 종횡비에 대한 일반화 성능을 향상시킬 수 있습니다.
- Decoupled Head: 분류 및 회귀에 결합된 헤드를 사용했던 이전 YOLO 모델과 달리 YOLOX는 분리된 헤드를 사용합니다. 이는 분류 및 위치 추정 작업을 분리하여 불일치 문제를 해결하고 수렴 속도와 정확도를 모두 향상시키는 것으로 나타났습니다.
- 고급 레이블 할당: YOLOX는 훈련 중에 각 ground-truth 객체에 대해 최적의 긍정적 샘플을 선택하는 동적 레이블 할당 전략인 SimOTA(Simplified Optimal Transport Assignment)를 통합합니다. 이는 정적 할당 규칙보다 더 발전된 접근 방식입니다.
- 강력한 데이터 증강: 이 모델은 MixUp 및 Mosaic과 같은 강력한 데이터 증강 기술을 활용하여 견고성과 성능을 향상시킵니다.
강점과 약점
강점:
- 높은 성능: YOLOX는 뛰어난 속도와 정확도의 균형을 이루어 동시대의 다른 최첨단 검출기와 경쟁력을 갖추고 있습니다.
- Anchor-Free 단순성: 앵커 프리 설계는 모델 복잡성과 앵커 박스 구성과 관련된 엔지니어링 노력을 줄입니다.
- 확립된 모델: 2021년부터 잘 알려진 모델로서 상당한 양의 커뮤니티 지원과 배포 예제를 사용할 수 있습니다.
약점:
- 추론 속도: 빠르지만, 특히 GPU 지연 시간을 고려할 때 Ultralytics YOLOv8 및 YOLO11과 같은 최신, 더 최적화된 아키텍처에 비해 뒤쳐질 수 있습니다.
- 작업 다양성: YOLOX는 주로 객체 탐지를 위해 설계되었습니다. Ultralytics와 같은 최신 프레임워크에서 표준으로 제공되는 인스턴스 분할, 포즈 추정 또는 분류와 같은 다른 비전 작업에 대한 기본 지원이 부족합니다.
- External Ecosystem: Ultralytics 생태계의 기본 부분이 아니므로 Ultralytics HUB와 같은 도구를 사용한 학습, 배포 및 통합에 더 많은 노력이 필요할 수 있습니다.
이상적인 사용 사례
YOLOX는 다음과 같은 경우에 적합합니다.
- 일반 객체 감지: 보안 시스템 또는 소매 분석과 같이 안정적이고 정확한 감지기가 필요한 애플리케이션.
- 연구 기준: 앵커 프리(anchor-free) 감지 방법 및 고급 레이블 할당 기술을 탐색하는 연구자들에게 훌륭한 기준 역할을 합니다.
- 산업 자동화: 탐지 정확도가 핵심 요구 사항인 제조 분야의 품질 관리와 같은 작업에 사용됩니다.
EfficientDet: 확장 가능하고 효율적인 객체 감지
Google Brain 팀에서 개발한 EfficientDet은 뛰어난 효율성을 위해 설계된 객체 감지 모델 제품군입니다. 새로운 아키텍처와 복합 스케일링 방법을 도입하여 리소스가 제한된 에지 장치에서 대규모 클라우드 서버로 확장하면서 뛰어난 정확도-효율성 비율을 유지할 수 있습니다.
기술 세부 사항:
- 작성자: Mingxing Tan, Ruoming Pang, Quoc V. Le
- Organization: Google
- 날짜: 2019-11-20
- Arxiv: https://arxiv.org/abs/1911.09070
- GitHub: https://github.com/google/automl/tree/master/efficientdet
- 문서: https://github.com/google/automl/tree/master/efficientdet#readme
아키텍처 및 주요 기능
EfficientDet의 디자인은 세 가지 주요 혁신 기술을 중심으로 합니다.
- EfficientNet Backbone: 특징 추출을 위해 매우 효율적인 EfficientNet을(를) 백본으로 사용합니다. EfficientNet 자체는 정확도와 FLOPs에 최적화하기 위해 신경망 아키텍처 검색을 사용하여 설계되었습니다.
- BiFPN (Bi-directional Feature Pyramid Network): 특징 융합을 위해 EfficientDet은 가중치가 적용된 양방향 특징 피라미드 네트워크인 BiFPN을 도입했습니다. 기존 FPN과 달리 BiFPN은 각 입력 특징에 대해 학습 가능한 가중치를 통합하여 더 적은 파라미터와 계산으로 더욱 풍부한 다중 스케일 특징 융합을 가능하게 합니다.
- Compound Scaling: EfficientDet은 백본, 특징 네트워크 및 예측 네트워크의 깊이, 너비 및 해상도를 균일하게 조정하는 Compound Scaling 방법을 사용합니다. 이를 통해 전체 모델 패밀리(D0~D7)에서 정확도와 컴퓨팅 리소스 간의 균형 잡히고 최적의 절충점을 보장합니다.
강점과 약점
강점:
- 최첨단 효율성: EfficientDet 모델은 파라미터 및 FLOPs 측면에서 매우 효율적이며, 종종 유사한 계산 예산으로 다른 모델보다 높은 정확도를 달성합니다.
- 확장성: 모델 제품군은 광범위한 옵션(D0-D7)을 제공하므로 특정 하드웨어 및 성능 요구 사항에 맞는 모델을 쉽게 선택할 수 있습니다.
- 높은 정확도: 더 큰 EfficientDet 모델은 COCO와 같은 표준 벤치마크에서 매우 높은 mAP 점수를 달성합니다.
약점:
- 높은 지연 시간: 낮은 FLOPs에도 불구하고 EfficientDet은 병렬 처리 하드웨어에 최적화된 YOLOX 또는 Ultralytics YOLO와 같은 모델에 비해 GPU에서 추론 지연 시간이 더 높을 수 있습니다.
- 학습 복잡성: 학습 프로세스는 Ultralytics와 같은 프레임워크에서 제공하는 간소화된 경험에 비해 더 많은 리소스를 필요로 하고 복잡할 수 있습니다.
- 제한적인 다용도성: YOLOX와 마찬가지로 EfficientDet은 객체 감지에 특화되어 있으며 다른 컴퓨터 비전 작업에 대한 통합 프레임워크를 제공하지 않습니다.
이상적인 사용 사례
EfficientDet은 특히 다음과 같은 경우에 적합합니다.
- Edge AI: 더 작은 변형(D0-D2)은 파라미터 수와 메모리가 중요한 리소스가 제한된 에지 장치에 배포하는 데 탁월합니다.
- 클라우드 응용 프로그램: 더 큰 변형(D5-D7)은 최대 정확도를 달성하는 것이 우선 순위이고 대기 시간이 덜 중요한 클라우드 기반 응용 프로그램에 적합합니다.
- 리소스 제한적 프로젝트: 실시간 지연 시간보다는 컴퓨팅 예산(FLOPs)이 주요 제약 조건인 모든 애플리케이션.
성능 및 벤치마크 비교
YOLOX와 EfficientDet을 비교할 때 속도, 정확도 및 효율성 간의 절충점이 분명해집니다. 아래 표는 COCO 데이터 세트에 대한 자세한 성능 분석을 제공합니다.
모델 | 크기 (픽셀) |
mAPval 50-95 |
속도 CPU ONNX (ms) |
속도 T4 TensorRT10 (ms) |
파라미터 (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
벤치마크에서 다음과 같은 주요 추세를 관찰할 수 있습니다.
- GPU 속도: YOLOX 모델은 유사하거나 더 낮은 mAP의 EfficientDet 모델에 비해 TensorRT를 사용하는 T4 GPU에서 일관되게 훨씬 낮은 지연 시간(더 빠른 속도)을 보여줍니다. 예를 들어 YOLOX-l은 EfficientDet-d4와 동일한 49.7 mAP를 달성하지만 3.5배 이상 빠릅니다.
- 파라미터 효율성: EfficientDet은 파라미터 및 FLOP 효율성이 뛰어납니다. EfficientDet-d3는 12.0M 파라미터만으로 47.5 mAP를 달성하는 반면, YOLOX-m은 유사한 46.9 mAP에 도달하기 위해 25.3M 파라미터가 필요합니다. 따라서 EfficientDet은 엄격한 모델 크기 제약 조건이 있는 환경에 강력한 후보입니다.
- 정확도 vs. 속도 절충: YOLOX는 GPU에서 실시간 추론을 요구하는 애플리케이션에 더 유리한 절충점을 제공합니다. EfficientDet은 최상위(D7)에서 매우 높은 정확도를 보이지만 지연 시간에서 상당한 손해를 보므로 더 큰 모델은 실시간 사용에 적합하지 않습니다.
Ultralytics YOLO: 권장되는 대안
YOLOX와 EfficientDet 모두 강력한 모델이지만, 현대 개발자와 연구자는 Ultralytics YOLO 생태계에서 더욱 강력한 솔루션을 찾는 경우가 많습니다. YOLOv8 및 최신 YOLO11과 같은 모델은 성능, 사용 편의성 및 다재다능성의 뛰어난 조합을 제공합니다.
- 사용 편의성: Ultralytics는 간단한 Python API, 광범위한 documentation 및 다양한 tutorials를 통해 간소화된 사용자 경험을 제공합니다.
- 잘 관리되는 에코시스템: 활발한 개발, 강력한 커뮤니티 지원, 잦은 업데이트 및 데이터 세트 관리 및 학습을 위한 Ultralytics HUB와 같은 통합 도구를 통해 이점을 누리십시오.
- 성능 균형: Ultralytics YOLO 모델은 속도와 정확도 간의 뛰어난 균형을 달성하여 엣지 장치에서 클라우드 서버에 이르기까지 다양한 실제 배포 시나리오에 적합합니다.
- 메모리 요구 사항: Ultralytics YOLO 모델은 일반적으로 훈련 및 추론 중에 메모리 사용량이 효율적이며, 더 복잡한 아키텍처보다 적은 CUDA 메모리를 필요로 하는 경우가 많습니다.
- 다재다능함: Ultralytics 모델은 단일 통합 프레임워크 내에서 인스턴스 분할, 이미지 분류, 자세 추정 및 방향이 지정된 경계 상자(OBB) 감지를 포함하여 감지 외에 여러 작업을 지원합니다.
- 학습 효율성: 효율적인 학습 프로세스, 다양한 데이터 세트에서 즉시 사용 가능한 사전 학습된 가중치, ClearML 및 Weights & Biases와 같은 실험 추적 도구와의 원활한 통합을 통해 이점을 얻으십시오.
사용 편의성과 강력한 생태계가 결합된 최첨단 성능을 찾는 사용자에게는 Ultralytics YOLO 모델을 살펴보는 것이 좋습니다.
결론: 어떤 모델을 선택해야 할까요?
YOLOX와 EfficientDet 중 선택은 프로젝트의 특정 우선순위에 크게 좌우됩니다.
-
YOLOX는 특히 GPU 기반 배포에 적합한 빠르고 정확한 객체 detector가 필요한 애플리케이션에 탁월한 선택입니다. 앵커 프리 설계는 detection 파이프라인의 특정 측면을 단순화하고 강력한 성능을 유지합니다.
-
EfficientDet은(는) 모델 파라미터 및 FLOPs와 같은 컴퓨팅 리소스가 주요 제약 조건인 시나리오에서 빛을 발합니다. 확장 가능한 아키텍처 덕분에 다양한 기능을 가진 다양한 하드웨어에 배포해야 하는 프로젝트에 적합한 선택입니다.
그러나 대부분의 최신 컴퓨터 비전 작업에서 YOLOv8 및 YOLO11과 같은 Ultralytics YOLO 모델이 가장 유리한 옵션을 제공합니다. 속도와 정확성의 뛰어난 균형을 제공하고 사용이 매우 간편하며 연구에서 생산에 이르기까지 개발을 가속화하는 포괄적인 생태계에서 지원됩니다. 다중 작업 다재다능성 덕분에 광범위한 AI 솔루션에 적합한 미래 보장형 선택입니다.
기타 모델 비교
이러한 모델과 다른 모델과의 비교에 관심이 있다면 다음 페이지를 확인해 보세요.
- YOLOv8 vs YOLOX
- YOLOv10 vs YOLOX
- RT-DETR vs YOLOX
- YOLOv8 vs EfficientDet
- YOLO11 vs EfficientDet
- RT-DETR vs EfficientDet
- YOLOv5 vs EfficientDet