YOLOv10 대 EfficientDet#
객체 탐지를 위한 최적의 신경망을 선택하는 일은 최신 컴퓨터 비전 시스템의 성공을 좌우하는 중요한 결정입니다. 이 분야에 큰 영향을 미친 두 가지 주요 아키텍처는 YOLOv10과 EfficientDet입니다. 두 모델 모두 계산 오버헤드를 최소화하면서 정확도를 높이는 것을 목표로 하지만, 이를 달성하는 아키텍처 접근 방식은 크게 다릅니다.
이 종합 가이드에서는 두 모델의 고유한 설계, 학습 방법론, 배포 특성을 자세히 살펴보고, 개발자와 ML 엔지니어가 비전 AI 애플리케이션에 대해 데이터 기반 결정을 내릴 수 있도록 돕습니다. 임베디드 엣지 AI 디바이스부터 강력한 클라우드 GPU에 이르는 하드웨어에서의 성능을 검토합니다.
YOLOv10: NMS 없는 설계의 선구자#
실시간 지연 시간의 한계를 넓히기 위해 개발된 YOLOv10은 YOLO 계열의 가장 지속적인 병목 현상 중 하나인 비최대 억제(NMS)를 해결했습니다. 이 후처리 단계를 제거해 지연 시간을 매우 예측 가능하게 만들었으며, 이는 자율 주행 차량과 고속 로보틱스에 중요합니다.
아키텍처 혁신#
YOLOv10은 NMS 없는 학습을 위해 일관된 이중 할당 방식을 도입했습니다. 학습 중에는 일대다 및 일대일 레이블 할당을 모두 활용해 네트워크가 풍부한 표현을 학습하도록 하며, 추론 중에는 객체마다 가장 적합한 단일 바운딩 박스를 기본 출력합니다. 또한 아키텍처에 효율성과 정확도를 종합적으로 고려한 설계를 적용하여 분류 헤드를 간소화하고 이전 버전에서 발생했던 계산 중복을 줄였습니다.
모델 세부 정보#
- 저자: Ao Wang, Hui Chen, Lihao Liu 외
- 조직: 칭화대학교
- 날짜: 2024-05-23
- 논문: YOLOv10: 실시간 엔드투엔드 객체 탐지
- GitHub: THU-MIG/yolov10
- 문서: YOLOv10 문서
YOLOv10은 NMS 단계를 제거하므로 바운딩 박스 필터링을 위한 사용자 지정 런타임 플러그인에 의존하지 않고도 ONNX 형식 및 NVIDIA TensorRT와 같은 형식으로 더 쉽게 내보낼 수 있습니다.
장점:
- 예측 가능한 추론: NMS를 제거하면 장면 내 객체 수와 관계없이 일관된 추론 시간을 보장합니다.
- 낮은 메모리 사용량: YOLOv10은 RT-DETR과 같은 Transformer 기반 모델에 비해 학습과 추론 모두에서 필요한 메모리가 훨씬 적습니다.
- 뛰어난 속도와 정확도의 균형: 성능 지표를 희생하지 않으면서 지연 시간이 짧아야 하는 시나리오에 맞게 특별히 최적화되었습니다.
단점:
- 단일 작업에 집중: 다양한 기능을 제공하는 Ultralytics 생태계와 달리, 기존 YOLOv10 저장소는 탐지에 집중하며 인스턴스 분할이나 자세 추정을 기본 지원하지 않습니다.
EfficientDet: 확장성과 균형#
Google Brain이 발표한 EfficientDet은 체계적인 네트워크 스케일링 관점에서 객체 탐지에 접근합니다. EfficientNet 이미지 분류 백본을 기반으로 새로운 특징 융합 메커니즘을 도입합니다.
아키텍처 혁신#
EfficientDet의 핵심은 간편하고 빠른 다중 스케일 특징 융합을 가능하게 하는 양방향 특징 피라미드 네트워크(BiFPN)입니다. 특징을 위에서 아래로만 더하는 기존 FPN과 달리, BiFPN은 양방향 교차 스케일 연결과 학습 가능한 가중치를 도입하여 각 입력 특징의 중요도를 학습합니다. 또한 EfficientDet은 백본, 특징 네트워크, 박스 및 클래스 예측 네트워크의 해상도, 깊이, 너비를 균일하게 조정하는 복합 스케일링 방식을 사용합니다.
모델 세부 정보#
- 저자: Mingxing Tan, Ruoming Pang, Quoc V. Le
- 기관: Google Brain
- 날짜: 2019-11-20
- 논문: EfficientDet: 확장 가능하고 효율적인 객체 탐지
- GitHub: Google AutoML EfficientDet
장점:
- 높은 효율성: 파라미터 대비 정확도 비율이 뛰어나 소형
-d0부터-d2변형 모델까지 매우 가볍습니다. - 체계적인 스케일링: 복합 스케일링을 사용하면 사용자의 정확한 계산 예산에 맞는 모델 크기를 쉽게 선택할 수 있습니다.
단점:
- 레거시 프레임워크 통합: 기존 구현은 구형 TensorFlow 버전에 크게 의존하므로 최신 배포 파이프라인이 복잡해질 수 있습니다.
- 느린 학습: EfficientDet을 처음부터 학습하는 과정은 매우 느린 것으로 알려져 있으며, YOLO 아키텍처의 빠른 수렴과 비교하면 세심한 하이퍼파라미터 튜닝이 필요합니다.
- 추론 속도: 파라미터 효율성은 높지만, 복잡한 BiFPN 연산으로 인해 표준 하드웨어에서 실제 추론 속도가 고도로 최적화된 YOLO 모델보다 느린 경우가 많습니다.
성능 및 벤치마크#
이 모델들의 실제 성능은 COCO 데이터셋과 같은 표준 벤치마크에서 검증할 수 있습니다. 아래 표는 파라미터 수, 부동소수점 연산(FLOPs), NVIDIA T4 GPU에서의 추론 지연 시간 간 주요 차이를 보여줍니다.
| 모델 | 크기 (픽셀) | mAP검증 50-95 | 속도 CPU ONNX (ms) | 속도 T4 TensorRT10 (ms) | 파라미터 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 38.5 | - | 1.84 | 2.3 | 6.7 |
| YOLOv10s | 640 | 46.3 | - | 2.49 | 7.2 | 21.6 |
| YOLOv10m | 640 | 51.1 | - | 4.74 | 15.4 | 59.1 |
| YOLOv10b | 640 | 52.5 | - | 5.74 | 19.1 | 92.0 |
| YOLOv10l | 640 | 53.2 | - | 7.28 | 24.4 | 120.3 |
| YOLOv10x | 640 | 54.4 | - | 10.70 | 29.5 | 160.4 |
| 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 |
위에서 보듯이 YOLOv10은 순수 추론 속도에서 상당한 이점을 유지합니다. 예를 들어 YOLOv10-S는 TensorRT 지연 시간이 단 2.49ms에 불과하면서 46.3 mAP를 달성합니다. EfficientDet-d3는 47.5 mAP로 비슷한 성능을 내지만 거의 20ms가 걸리므로, 실시간 비디오 스트리밍이나 빠르게 움직이는 제조 파이프라인에서는 YOLOv10이 훨씬 뛰어납니다.
사용 사례 및 권장 사항#
YOLOv10과 EfficientDet 중에서 선택할 때는 구체적인 프로젝트 요구 사항, 배포 제약, 선호하는 생태계를 고려해야 합니다.
YOLOv10을 선택해야 하는 경우#
YOLOv10은 다음과 같은 경우에 적합합니다:
- NMS가 필요 없는 실시간 탐지: 비최대 억제 없이 엔드 투 엔드 탐지를 활용하여 배포 복잡성을 줄일 수 있는 애플리케이션입니다.
- 속도와 정확도의 균형: 다양한 모델 규모에서 추론 속도와 탐지 정확도 간의 균형이 중요한 프로젝트입니다.
- 일관된 지연 시간이 필요한 애플리케이션: 로보틱스나 자율 시스템처럼 예측 가능한 추론 시간이 중요한 배포 시나리오입니다.
EfficientDet을 선택해야 하는 경우#
다음과 같은 경우 EfficientDet을 권장합니다.
- Google Cloud 및 TPU 파이프라인: EfficientDet이 기본 최적화된 Google Cloud Vision API 또는 TPU 인프라와 긴밀하게 통합된 시스템입니다.
- 복합 스케일링 연구: 네트워크 깊이, 너비, 해상도를 균형 있게 조정하는 효과를 연구하는 데 중점을 둔 학술 벤치마킹입니다.
- LiteRT를 통한 모바일 배포: Android 또는 임베디드 Linux 장치용으로 LiteRT(구 TensorFlow Lite) 내보내기가 필요한 프로젝트입니다.
Ultralytics(YOLO26)를 선택해야 하는 경우#
대부분의 신규 프로젝트에는 성능과 개발자 경험을 가장 잘 조합한 Ultralytics YOLO26을 권장합니다.
- NMS가 필요 없는 엣지 배포: 비최대 억제 후처리의 복잡성 없이 일관된 저지연 추론이 필요한 애플리케이션입니다.
- CPU 전용 환경: 전용 GPU 가속 기능이 없는 디바이스에서 YOLO26의 최대 43% 빠른 CPU 추론은 결정적인 이점을 제공합니다.
- 작은 객체 탐지: 항공 드론 이미지나 IoT 센서 분석과 같이 작은 객체의 정확도를 ProgLoss와 STAL이 크게 높여 주는 까다로운 시나리오입니다.
최신 표준: Ultralytics YOLO26의 등장#
YOLOv10이 획기적인 NMS 프리 패러다임을 도입하고 EfficientDet이 체계적인 스케일링을 보여준 이후에도 컴퓨터 비전 분야는 계속 발전해 왔습니다. 오늘 새로운 프로젝트를 시작하는 개발자에게 Ultralytics YOLO26은 명실상부한 최첨단 모델입니다. 2026년 1월에 출시된 YOLO26은 모든 장점을 결합해 Ultralytics Platform에서 세련된 프로덕션용 패키지로 제공합니다.
YOLO26이 경쟁 모델보다 뛰어난 이유#
- 엔드투엔드 NMS 프리 설계: YOLO26은 YOLOv10이 개척한 엔드투엔드 NMS 프리 설계를 선택적 일대일 헤드(
nms=False)로 제공하여 배포를 간소화하고 추론 속도를 높입니다. - 최대 43% 빠른 CPU 추론: 전용 가속기가 없는 엣지 디바이스에서 효율적으로 실행되도록 YOLO26을 특별히 최적화했습니다.
- 고급 MuSGD 옵티마이저: LLM 학습의 혁신에서 영감을 받은 YOLO26은 SGD와 Muon의 하이브리드 방식을 사용해 매우 안정적인 학습과 빠른 수렴을 구현하며, EfficientDet보다 학습 효율성을 크게 높입니다.
- ProgLoss + STAL: 이 개선된 손실 함수는 YOLOv10과 EfficientDet 모두에서 전통적으로 약점이었던 소형 객체 인식 성능을 크게 향상합니다.
- DFL 제거: Distribution Focal Loss를 제거하면 OpenVINO와 CoreML을 비롯해 거의 모든 하드웨어 형식으로 원활하게 내보낼 수 있습니다.
또한 YOLO26은 범용성이 탁월합니다. EfficientDet과 YOLOv10은 탐지 전용 모델이지만, YOLO26은 직관적인 Ultralytics Python 패키지 하나로 방향성 바운딩 박스, 이미지 분류, 인스턴스 분할을 원활하게 처리합니다.
Ultralytics를 통한 간편한 사용#
Ultralytics가 제공하는 체계적으로 관리되는 생태계는 원활한 개발자 경험을 보장합니다. 모델 학습, 검증, TensorRT 통합을 위한 내보내기에는 코드 몇 줄이면 충분합니다.
from ultralytics import YOLO
# 사전 학습된 YOLOv10 모델을 로드합니다(또는 YOLO26으로 기본 업그레이드합니다).
model = YOLO("yolov10n.pt")
# 사용자 지정 데이터셋으로 모델을 효율적으로 학습합니다.
model.train(data="coco8.yaml", epochs=50, imgsz=640)
# 추론을 실행하고 결과를 즉시 시각화합니다.
results = model("https://ultralytics.com/images/bus.jpg")
results[0].show()
# 빠른 배포를 위해 내보냅니다.
model.export(format="engine", quantize=16)결론#
YOLOv10과 EfficientDet을 비교할 때는 프레임워크 선호도와 속도 제약에 따라 선택이 크게 달라집니다. EfficientDet은 TensorFlow 생태계 내에서 체계적인 모델 스케일링 방식을 제공합니다. 하지만 YOLOv10은 NMS가 필요 없는 아키텍처 덕분에 실시간 성능이 더 뛰어나고 메모리 사용량이 적으며 배포 경로도 더 간단합니다.
최상의 성능 균형, 사용 편의성, 멀티태스크 활용성을 원한다면 Ultralytics Platform으로 업그레이드하고 YOLO26을 사용하는 것을 적극 권장합니다. YOLO26은 YOLOv10의 NMS 없는 혁신을 이어받고 MuSGD 옵티마이저와 같은 최첨단 학습 기법을 적용했으며, 전 세계의 방대한 커뮤니티가 지원하는 강력한 오픈 소스 프레임워크를 제공합니다.