DAMO-YOLO vs YOLOv10: 효율적인 실시간 객체 detect의 진화
컴퓨터 비전 분야는 실시간 객체 탐지 아키텍처의 급속한 진화를 목격해왔다. YOLO YOLOv10을 비교해 보면 모델 설계에 있어 두 가지 상이한 철학이 관찰됩니다: 자동화된 아키텍처 탐색 대 엔드투엔드 NMS 최적화입니다. 둘 다 정확도와 속도의 한계를 넓히고 있지만, 그 기반 구조와 이상적인 사용 사례는 크게 다릅니다.
YOLO: 대규모 신경망 구조 탐색
Alibaba Group이 개발한 DAMO-YOLO는 구조적 효율성을 위한 자동화된 발견을 활용하는 데 중점을 둔 강력한 detect기로 등장했습니다.
- 작성자: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, Xiuyu Sun
- 날짜: 2022년 11월 23일
- Arxiv:2211.15444v2
- GitHub:YOLO
건축 하이라이트
DAMO-YOLO는 성능과 지연 시간의 균형을 맞추기 위해 신경망 아키텍처 검색(NAS)에 크게 의존합니다. MAE-NAS라고 불리는 이 백본은 엄격한 계산 예산 하에서 다목적 진화 검색을 사용하여 최적의 레이어 깊이와 너비를 찾습니다.
다양한 스케일 간의 특징 융합을 처리하기 위해 본 모델은 효율적인 RepGFPN(재매개변수화된 일반화 특징 피라미드 네트워크)을 활용합니다. 이 헤비넥(heavy-neck) 설계는 복잡한 공간적 계층 구조 추출에 특히 탁월하여 항공 이미지 분석과 같은 시나리오에서 유용합니다. 또한YOLO ZeroHead를YOLO . 이는 훈련 중 강력한 증류 강화 프로세스에 의존하여 최종 예측 레이어의 복잡성을 크게 줄인 간소화된 탐지 헤드입니다.
증류 훈련
DAMO-YOLO는 종종 다단계 지식 증류(knowledge distillation) 프로세스를 활용합니다. 이는 더 작은 "학생" 모델을 안내하기 위해 더 무거운 "교사" 모델을 학습시켜 더 높은 mAP (평균 정밀도)를 추출하지만, 필요한 GPU 컴퓨팅 시간을 상당히 증가시킵니다.
YOLOv10: 선구적인 엔드투엔드 객체 탐지
1년 반 후에 출시된 YOLOv10 추론 과정에서 비최대 억제(NMS)의 필요성을 완전히 제거함으로써 패러다임 전환을 YOLOv10 .
- 저자: Ao Wang, Hui Chen, Lihao Liu 외
- 조직:조직: 칭화 대학교
- 날짜: 2024년 5월 23일
- Arxiv:2405.14458
- 문서:Ultralytics YOLOv10
건축 하이라이트
YOLOv10 두드러진 특징은 NMS 일관된 이중 할당을 통해 훈련이 YOLOv10 . 기존 탐지기는 단일 객체에 대해 중복되는 여러 경계 상자를 예측하므로 중복을 걸러내기 NMS 필요합니다. 이 후처리 단계는 특히 에지 디바이스에서 병목 현상을 유발합니다. YOLOv10 모델이 객체당 하나의 정확한 경계 상자를 자연스럽게 예측하도록 함으로써 이 문제를 YOLOv10 .
저자들은 또한 효율성과 정확도를 종합적으로 고려한 모델 설계에 주력했습니다. 기존 아키텍처의 계산적 중복성을 세밀히 분석하여 백본과 헤드를 최적화함으로써 FLOPs와 매개변수 수를 줄였습니다. 이 경량화된 설계 덕분에 YOLOv10 TensorRT RT와 같은 형식으로 내보낼 때 탁월한 추론 지연 YOLOv10 . TensorRT 이나 OpenVINO과 같은 형식으로 내보낼 때 탁월한 추론 지연 시간을 보장합니다.
성능 및 벤치마크
아래 표는 COCO 대한 원시 성능 지표를 보여줍니다. 각 열에서 가장 우수한 값은 굵은 글씨로 강조 표시되어 있습니다.
| 모델 | 크기 (픽셀) | 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 |
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92.0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 12.2 | 56.9 | 160.4 |
YOLO 정확도 측면에서 경쟁력을YOLO 반면, YOLOv10 더 낮은 지연 시간과 현저히 작은 모델 가중치를 제공합니다. 예를 들어, YOLOv10s는 DAMO-YOLOs(46.0%)보다 약간 높은 mAP 46.7%)를 달성하면서도 절반 미만의 매개변수(720만 vs 1630만)를 사용합니다. 낮은 메모리 요구사항 덕분에 YOLOv10 임베디드 시스템에 매우 유연한 YOLOv10 .
훈련 효율성과 사용성
학술 연구에서 실제 생산 환경으로 전환할 때 사용 편의성은 가장 중요한 요소입니다.YOLO 다단계 증류 과정과 복잡한 NAS 구성은 엔지니어링 팀에게 가파른 학습 곡선을 요구할 수 있습니다.
반대로, YOLOv10은 Ultralytics python SDK에 완전히 통합되어 엄청난 이점을 얻습니다. 사용자 정의 모델 학습에는 최소한의 상용구 코드만 필요합니다. Ultralytics는 데이터 증강, 하이퍼파라미터 튜닝 및 실험 추적을 자동으로 처리합니다.
from ultralytics import YOLO
# Load a pretrained YOLOv10 nano model
model = YOLO("yolov10n.pt")
# Train on a custom dataset with built-in validation
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image seamlessly
prediction = model("path/to/image.jpg")
prediction[0].show()
신속한 시제품 제작
Ultralytics 활용하면 개발자는 단 몇 줄의 코드로 프로토타입에서 완전히 내보낸 ONNX 전환할 수 있으며, 기존 프레임워크에서 요구하는 복잡한 환경 설정을 우회할 수 있습니다.
실제 사용 사례
- 스마트 리테일 (DAMO-YOLO): DAMO-YOLO의 정확도는 GPU가 풍부하고 실시간 NMS 병목 현상이 관리 가능한 고객 행동 분석을 위한 고밀도 서버 환경에 적합합니다.
- 자율 주행 차량 (YOLOv10): NMS-free 아키텍처는 결정론적이고 예측 가능한 지연 시간을 보장하며, 이는 자율 주행의 안전 시스템에 매우 중요합니다.
- 산업 자동화 (YOLOv10): 빠르게 움직이는 조립 라인에서 결함을 detect하려면 방대한 VRAM을 소비하지 않고 실시간 추론 속도를 극대화하는 모델이 필요하며, 이는 YOLOv10을 엣지 배포에 적합한 후보로 만듭니다.
사용 사례 및 권장 사항
DAMO-YOLO와 YOLOv10 중 선택은 특정 프로젝트 요구 사항, 배포 제약 조건 및 생태계 선호도에 따라 달라집니다.
YOLO 선택해야 할 때
DAMO-YOLO는 다음 경우에 강력한 선택입니다.
- 고처리량 비디오 분석: 배치-1 처리량이 주요 지표인 고정 NVIDIA GPU 인프라에서 고FPS 비디오 스트림을 처리합니다.
- 산업 제조 라인: 조립 라인의 실시간 품질 검사와 같이 전용 하드웨어에서 엄격한 GPU 지연 시간 제약이 있는 시나리오.
- 신경망 아키텍처 탐색 연구: 자동화된 아키텍처 탐색(MAE-NAS) 및 효율적인 재매개변수화된 백본이 detect 성능에 미치는 영향 연구.
10 선택해야 할 때
YOLOv10 다음에 YOLOv10 :
- NMS-Free 실시간 detect: NMS(Non-Maximum Suppression) 없이 엔드투엔드 detect의 이점을 얻어 배포 복잡성을 줄이는 애플리케이션.
- 균형 잡힌 속도-정확도 절충: 다양한 모델 규모에서 추론 속도와 detect 정확도 사이의 강력한 균형이 필요한 프로젝트.
- 일관된 지연 시간 애플리케이션: 로봇 공학 또는 자율 시스템과 같이 예측 가능한 추론 시간이 중요한 배포 시나리오.
Ultralytics YOLO26)를 선택해야 할 때
대부분의 신규 프로젝트에 대해 Ultralytics 성능과 개발자 경험의 최적 조합을 제공합니다:
- NMS-Free 엣지 배포: NMS(Non-Maximum Suppression) 후처리 복잡성 없이 일관되고 낮은 지연 시간의 추론을 요구하는 애플리케이션.
- CPU 전용 환경: 전용 GPU 가속이 없는 장치에서 YOLO26의 최대 43% 더 빠른 CPU 추론이 결정적인 이점을 제공합니다.
- 작은 객체 detect: 항공 드론 이미지 또는 IoT 센서 분석과 같이 ProgLoss 및 STAL이 작은 객체에 대한 정확도를 크게 향상시키는 까다로운 시나리오.
차세대: Ultralytics 등장
YOLOv10 NMS 없는 탐지의 토대를 YOLOv10 , 이 기술은 빠르게 진화해 왔습니다. 현대적 응용을 위해 Ultralytics 모델은 이전 세대의 장점을 취합하여 생산 환경에 맞게 개선함으로써 탁월한 성능과 사용성을 제공합니다.
YOLO26은 엄격한 네이티브 엔드투엔드 설계를 특징으로 하여, 에지 디바이스 전반에 걸친 더 단순한 배포 파이프라인을 위해 NMS 제거했습니다. 또한 분포 초점 손실(DFL)의 제거로 저전력 에지 AI 하드웨어와의 호환성이 획기적으로 개선되었습니다.
훈련 측면에서 YOLO26은 대규모 언어 모델(LLM) 훈련 기법에서 영감을 받은 하이브리드 방식인 MuSGD 최적화기를 도입했습니다. 이는 보다 안정적인 훈련과 빠른 수렴을 보장합니다. ProgLoss + STAL 손실 함수와 결합된 YOLO26은 야생동물 보호 및 드론 운영에 핵심적인 기능인 소형 물체 인식에서 놀라운 개선을 보여줍니다.
결정적으로, YOLO26은 단순한 객체 detect기가 아닙니다. 이것은 인스턴스 segmentation, 잔차 로그 우도 추정(RLE)을 사용하는 자세 추정, 그리고 Oriented Bounding Boxes (OBB)를 위한 특수 각도 손실을 기본적으로 지원하며, 전반적으로 작업별 개선 사항을 제공합니다. 이전 모델보다 최대 43% 더 빠른 CPU 추론 속도를 제공하여, 민첩한 엔지니어링 팀을 위한 최고의 선택입니다.
YOLO26 모델의 중앙 집중식 관리, 주석 작업 및 클라우드 훈련을 위해 Ultralytics 컴퓨터 비전 라이프사이클 전체를 간소화하는 직관적인 인터페이스를 제공합니다.
다른 최근 발전을 탐구하는 데 관심 있는 개발자들은 고유한 아키텍처 솔루션이 필요한 시나리오를 위해 Ultralytics YOLO11 또는 트랜스포머 기반 RT-DETR 프레임워크를 평가할 수도 있습니다.