DAMO-YOLO와 YOLOX#
실시간 컴퓨터 비전 분야는 끊임없이 발전하고 있습니다. 이러한 여정에서 주목할 만한 두 가지 이정표는 DAMO-YOLO와 YOLOX이며, 두 모델은 각각 고속·고정밀 객체 탐지 문제에 고유한 혁신을 제시했습니다. 두 모델 모두 오픈 소스 커뮤니티에 크게 기여했지만, 머신 러닝 엔지니어에게는 아키텍처 차이, 학습 방법론 및 적합한 배포 시나리오를 이해하는 것이 중요합니다.
이 종합 가이드에서는 두 모델의 기술적 세부 사항을 살펴보고, Ultralytics YOLO26 플랫폼과 같은 최신 대안이 오늘날의 프로덕션 환경에서 더 뛰어난 성능과 사용 편의성을 제공하는 이유를 설명합니다.
모델 개요#
DAMO-YOLO 세부 정보#
Alibaba Group 연구원 팀이 개발한 DAMO-YOLO는 자동화된 아키텍처 탐색을 활용하는 고효율 객체 검출 방법으로 소개되었습니다.
- 저자: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, Xiuyu Sun
- 조직: Alibaba Group
- 날짜: 2022-11-23
- Arxiv: https://arxiv.org/abs/2211.15444v2
- GitHub: https://github.com/tinyvision/DAMO-YOLO
- 문서: DAMO-YOLO 문서
YOLOX 세부 정보#
Megvii 연구원들이 개발한 YOLOX는 YOLO 시리즈를 앵커 프리 디자인으로 전환하여 아키텍처를 대폭 단순화하는 동시에 당시 더 나은 성능을 달성함으로써 연구 커뮤니티와 산업 커뮤니티 간의 간극을 좁히는 것을 목표로 했습니다.
- 저자: Zheng Ge, Songtao Liu, Feng Wang, Zeming Li, Jian Sun
- 조직: Megvii
- 날짜: 2021-07-18
- Arxiv: https://arxiv.org/abs/2107.08430
- GitHub: https://github.com/Megvii-BaseDetection/YOLOX
- 문서: YOLOX 문서
아키텍처 분석#
DAMO-YOLO 아키텍처#
DAMO-YOLO는 신경 아키텍처 탐색(NAS)에 크게 의존합니다. 핵심 구성 요소는 다음과 같습니다.
- MAE-NAS 백본: 추론 속도와 정확도 간의 최적의 균형을 제공하는 백본을 찾기 위해 최대 엔트로피 유도 탐색을 사용합니다.
- Efficient RepGFPN: 특징 융합에 맞게 조정된 대형 넥(neck) 설계로, 다양한 객체 크기에서 모델이 높은 정확도를 유지하도록 지원합니다.
- ZeroHead: 최종 예측 계층의 계산 오버헤드를 줄이는 단순하고 경량화된 탐지 헤드입니다.
YOLOX 아키텍처#
YOLOX는 구조적 단순성과 앵커가 필요 없는 설계에 중점을 두고 다른 접근 방식을 취했습니다.
- 앵커 프리 메커니즘: 사전 정의된 앵커 없이 바운딩 박스 좌표를 직접 예측함으로써 YOLOX는 필요한 설계 매개변수와 휴리스틱 조정을 줄입니다.
- 분리형 헤드: 분류와 회귀 작업을 서로 다른 특징 브랜치로 분리하여 수렴 속도와 전반적인 정확도를 향상합니다.
- SimOTA 레이블 할당: 정답에 양성 샘플을 동적으로 할당하는 고급 레이블 할당 전략으로, 학습 효율성을 향상합니다.
DAMO-YOLO가 엄격한 제약 조건에서 최적의 아키텍처를 찾기 위해 머신 기반 NAS 탐색을 활용하는 반면, YOLOX는 앵커가 필요 없는 헤드와 같은 세련된 수동 설계 단순화를 활용하여 객체 탐지 파이프라인을 간소화합니다.
성능 비교#
이러한 모델을 평가하려면 평균 정밀도(mAP), 추론 속도 및 매개변수 수를 살펴봐야 합니다. 아래에는 두 아키텍처의 표준 변형과 경량 변형을 비교한 상세한 표가 나와 있습니다.
| 모델 | 크기 (픽셀) | mAPval 50-95 | 속도 CPU ONNX (ms) | 속도 T4 TensorRT10 (ms) | 파라미터 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
| 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 |
YOLOXx는 51.1로 가장 높은 절대 mAP를 달성하는 반면, DAMO-YOLOl은 매개변수 수가 절반에도 미치지 않는 42.1M 대 99.1M으로 50.8 mAP라는 매우 경쟁력 있는 성능과 훨씬 빠른 TensorRT 실행 속도를 제공합니다.
학습 방법론#
DAMO-YOLO 학습#
DAMO-YOLO는 학습 중 복잡한 지식 증류 강화를 활용합니다. 일반적으로 대규모 "teacher" 모델을 먼저 학습한 다음, 해당 지식을 더 작은 "student" 모델에 증류합니다. 또한 동적 레이블 할당을 위해 AlignedOTA를 사용합니다. 매우 효과적이지만 이 다단계 학습 프로세스는 필요한 GPU 컴퓨팅 시간과 메모리 오버헤드를 크게 증가시킵니다.
YOLOX 학습#
YOLOX는 MixUp 및 Mosaic과 같은 강력한 데이터 증강 전략에 의존합니다. 그러나 저자들은 마지막 15 epoch 동안 이러한 강력한 증강을 중단하면 모델이 현실과의 격차를 줄여 최종 정확도 지표를 크게 향상할 수 있다는 사실을 발견했습니다.
이상적인 사용 사례#
- DAMO-YOLO: 서버 측 지식 증류 파이프라인을 지원할 수 있고, 대상 하드웨어(예: 특정 NVIDIA GPU)가 대형 넥 NAS 아키텍처의 이점을 직접적으로 얻는 고위험 산업 배포에 가장 적합합니다.
- YOLOX: 순수한 앵커 프리 접근 방식을 원하는 개발자에게 적합합니다. 매우 경량화된
YOLOXnano은 레거시 Android 기기, 엣지 컴퓨팅, 그리고 매개변수 수가 가장 중요한 제약 조건인 매우 제한적인 IoT 센서에서도 사용할 수 있습니다.
Ultralytics의 강점: YOLO26 출시#
DAMO-YOLO와 YOLOX는 뛰어난 이정표이지만, 오늘날 개발자들은 더욱 종합적이고 다목적이며 사용하기 쉬운 솔루션을 요구합니다. 이러한 요구를 충족하는 것이 Ultralytics Platform과 새롭게 출시된 Ultralytics YOLO26입니다.
2026년 1월에 출시된 YOLO26은 모든 컴퓨터 비전 작업에 가장 권장되는 모델입니다. 이전 아키텍처를 뛰어넘는 다양한 혁신을 도입합니다.
- 엔드 투 엔드 NMS 프리 설계: YOLO26은 비최대 억제(NMS) 후처리를 기본적으로 제거합니다. 이를 통해 기존 탐지 헤드에 내재된 지연 시간 병목을 피하면서 훨씬 더 간단하고 빠르게 배포할 수 있습니다.
- 최대 43% 더 빠른 CPU 추론: YOLO26은 Distribution Focal Loss (DFL)을 전략적으로 제거하고 계층을 최적화하여 CPU와 엣지 하드웨어에서 탁월한 속도를 제공합니다.
- MuSGD 옵티마이저: 대규모 언어 모델(LLM) 학습 기법에서 영감을 받은 YOLO26은 MuSGD 옵티마이저(SGD와 Muon의 하이브리드)를 도입하여 YOLOX의 기존 설정과 비교해 매우 안정적인 학습 실행과 훨씬 빠른 수렴을 실현합니다.
- ProgLoss + STAL: 이러한 고급 손실 함수는 소형 객체 인식 성능을 크게 향상하여 YOLO26을 드론 영상과 로보틱스에 훨씬 더 적합하게 만듭니다.
- 다목적성: 객체 탐지에만 엄격히 사용되는 DAMO-YOLO와 달리 YOLO26은 잘 유지 관리되는 동일한 생태계 내에서 인스턴스 세그멘테이션, 포즈 추정, 분류, 방향성 바운딩 박스(OBB)를 기본적으로 원활하게 처리합니다.
Ultralytics를 통한 간편한 사용#
Ultralytics Python API는 개발자 경험을 간소화합니다. 최첨단 YOLO26 모델을 학습하는 데 필요한 보일러플레이트 코드가 훨씬 적으며 DAMO-YOLO의 복잡한 지식 증류 파이프라인도 필요하지 않습니다. 또한 Ultralytics 모델은 대형 Transformer 기반 모델과 비교해 학습 중 CUDA 메모리 요구량이 매우 낮습니다.
from ultralytics import YOLO
# Load the latest Ultralytics YOLO26 nano model
model = YOLO("yolo26n.pt")
# Train the model on your custom dataset with one line of code
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run fast, NMS-free inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX or TensorRT seamlessly
model.export(format="onnx")Ultralytics Platform을 사용하면 데이터 버전 관리와 클라우드 GPU 프로비저닝을 자동으로 처리하면서 모델에 자동으로 주석을 추가하고 학습한 후 엣지에 배포할 수 있습니다.
결론#
DAMO-YOLO와 YOLOX 중 무엇을 선택할지는 구체적인 제약 조건에 따라 달라집니다. DAMO-YOLO는 NAS를 통해 특정 GPU에서 뛰어난 속도 대비 정확도를 제공하는 반면, YOLOX는 경량 엣지 시나리오에 적합한 깔끔한 앵커 프리 설계를 제공합니다.
그러나 활발한 커뮤니티를 갖춘 현대적이고 미래 지향적인 솔루션을 찾는 팀에게는 Ultralytics YOLO26 아키텍처가 확실한 선택입니다. NMS 프리 설계, 빠른 CPU 추론, 탐지·세그멘테이션·포즈 작업을 위한 통합 API를 갖춘 YOLO26은 연구에서 견고한 실제 프로덕션 환경으로 원활하게 전환하는 데 독보적인 성능을 제공합니다.
다른 최신 아키텍처를 살펴보려는 개발자에게는 Ultralytics YOLO11 또는 종합적인 Ultralytics 문서에서 제공하는 RT-DETR과 같은 Transformer 기반 모델도 확인해 보시기를 권장합니다.