YOLOv7과 DAMO-YOLO#
실시간 객체 검출 분야는 끊임없이 발전하고 있으며, 연구자와 엔지니어는 속도와 정확도 사이의 최적 균형을 찾기 위해 노력하고 있습니다. 이 기술 비교에서는 2022년에 등장한 주목할 만한 두 아키텍처인 YOLOv7과 DAMO-YOLO를 심층적으로 살펴봅니다. 두 모델은 모델 학습, 아키텍처 설계, 배포와 관련된 서로 다른 과제를 해결하며 컴퓨터 비전 분야에 새로운 개념을 도입했습니다.
모델 배경 및 기술 세부 정보#
두 모델의 아키텍처를 자세히 살펴보기 전에 모델의 기원을 이해하는 것이 중요합니다. 두 모델은 모두 선도적인 연구 그룹에서 개발되었으며, 실시간 객체 검출의 한계를 넓히기 위해 고급 방법론을 도입했습니다.
YOLOv7 세부 정보#
YOLO 계열의 연장선에서 개발된 YOLOv7은 추론 비용을 늘리지 않으면서 정확도를 크게 높이기 위해 학습 가능한 "bag-of-freebies" 개념을 도입했습니다.
- 저자: Chien-Yao Wang, Alexey Bochkovskiy, Hong-Yuan Mark Liao
- 기관: 대만 중앙연구원 정보과학연구소
- 날짜: 2022-07-06
- Arxiv: https://arxiv.org/abs/2207.02696
- GitHub: https://github.com/WongKinYiu/yolov7
- 문서: https://docs.ultralytics.com/models/yolov7
DAMO-YOLO 세부 정보#
Alibaba Group의 연구자들이 개발한 DAMO-YOLO는 다양한 하드웨어에 적합한 고효율 모델을 구축하기 위해 신경망 아키텍처 탐색(NAS)과 고급 지식 증류에 중점을 두었습니다.
- 저자: 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
아키텍처 혁신#
YOLOv7: 그래디언트 경로 분석 및 재매개변수화#
YOLOv7은 확장 효율 계층 집계 네트워크(E-ELAN)에 중점을 둡니다. 저자들은 네트워크의 그래디언트 경로를 분석해 E-ELAN을 설계했으며, 이를 통해 원래의 그래디언트 경로를 저하시키지 않고 네트워크가 지속적으로 학습할 수 있도록 했습니다. 또한 YOLOv7은 추론 중 모델 재매개변수화를 효과적으로 활용하고 계층을 원활하게 융합해 FLOPs를 줄이고 실행 시간을 단축합니다. 따라서 최신 GPU에서 실시간 추론을 수행하는 데 매우 적합합니다.
DAMO-YOLO: 신경망 아키텍처 탐색 및 RepGFPN#
DAMO-YOLO는 지연 시간 제약 조건하에서 신경망 아키텍처 탐색(NAS)을 적극적으로 활용한다는 점에서 차별화됩니다. MAE-NAS라는 프레임워크를 사용해 모바일 디바이스나 특정 엣지 가속기와 같은 하드웨어에 맞는 최적의 백본을 탐색합니다. 넥에는 효율적인 RepGFPN(재매개변수화된 일반화 특징 피라미드 네트워크)을 도입하고, 예측 헤드의 계산 부담을 최소화하기 위해 ZeroHead 설계를 적용합니다.
YOLOv7은 아키텍처 자체의 강력한 최적화에 의존하는 반면, DAMO-YOLO는 복잡한 다단계 지식 증류 과정에 크게 의존합니다. 대형 교사 모델을 학습해 더 작은 학생 모델에 지식을 증류해야 하므로, 학습 단계에서 계산 비용이 커질 수 있습니다.
성능 및 지표 비교#
이 모델들을 비교할 때는 mAP(평균 정밀도), 추론 속도, 모델 복잡도를 살펴보는 것이 중요합니다.
| 모델 | 크기 (픽셀) | mAP검증 50-95 | 속도 CPU ONNX (ms) | 속도 T4 TensorRT10 (ms) | 파라미터 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
| 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 |
위 표는 YOLOv7이 높은 정확도가 필요한 영역(YOLOv7x)까지 원활하게 확장되는 반면, DAMO-YOLO는 제약된 환경을 위한 고도로 최적화된 초소형 모델을 제공한다는 점을 보여줍니다.
학습 효율성 및 메모리 요구 사항#
두 아키텍처의 주요 차이는 학습 방법론에 있습니다. DAMO-YOLO는 증류에 의존하므로 새 모델을 처음부터 학습하거나 사용자 지정 컴퓨터 비전 데이터셋으로 파인튜닝할 때 VRAM과 GPU 연산 시간이 훨씬 더 많이 필요한 경우가 많습니다.
반면 YOLOv8 및 이후 버전처럼 Ultralytics 생태계에서 기본 지원되는 모델은 메모리 요구량이 낮도록 고도로 최적화되어 있습니다. 개발자는 메모리 부족 오류 없이 일반 소비자용 하드웨어에서 더 큰 배치 크기를 사용할 수 있으므로 실험 추적과 반복 작업이 간소화됩니다.
Ultralytics의 강점#
YOLOv7과 DAMO-YOLO는 모두 매력적인 기능을 제공하지만, Ultralytics 생태계에서 모델을 배포하면 탁월한 개발 경험을 얻을 수 있습니다.
- 사용 편의성: Ultralytics Python 패키지는 통합된 간단한 API를 제공합니다. 몇 줄의 코드만으로 모델 아키텍처를 빠르게 전환하고, 학습 루프를 시작하거나, 추론을 실행할 수 있습니다.
- 잘 관리되는 생태계: Ultralytics는 업데이트를 자주 제공해 최신 PyTorch 릴리스와 CUDA 드라이버와의 기본 호환성을 보장합니다. 또한 모델을 ONNX, TensorRT, OpenVINO와 같은 형식으로 쉽게 내보낼 수 있습니다.
- 다목적성: 객체 검출기만 지원하는 DAMO-YOLO와 달리 Ultralytics 생태계는 다양한 태스크를 기본 지원합니다. Ultralytics 계열 모델은 일반적인 경계 상자 검출뿐 아니라 자세 추정, 인스턴스 분할, 회전 경계 상자(OBB)도 수행할 수 있습니다.
코드 예제: 빠른 시작#
Ultralytics 모델을 사용해 얼마나 간편하게 모델을 불러오고, 학습하고, 추론을 실행할 수 있는지 살펴보겠습니다.
from ultralytics import YOLO
# 사전 학습된 YOLO26 모델을 불러옵니다(Ultralytics는 기본 YOLOv7 가중치를 지원하지 않습니다).
model = YOLO("yolo26n.pt")
# 자동 하이퍼파라미터 처리를 사용해 COCO8 데이터셋으로 모델을 학습합니다.
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# 이미지에서 추론 실행
predictions = model("https://ultralytics.com/images/bus.jpg")
# 배포를 위해 ONNX 형식으로 내보냅니다
model.export(format="onnx")Ultralytics에서는 학습된 가중치를 다양한 하드웨어 가속 형식(TensorRT 또는 CoreML 등)으로 내보낼 때 내보내기 명령의 인수 하나만 사용하면 되므로, 복잡한 스크립트 설정에 드는 시간을 크게 절약할 수 있습니다.
차세대 모델: YOLO26#
YOLOv7은 여전히 강력한 레거시 아키텍처이지만, 이 분야는 빠르게 발전해 왔습니다. 새로운 배포에는 이전 세대를 거의 모든 지표에서 능가하는 Ultralytics YOLO26(2026년 1월 출시)이 권장 표준입니다.
- 종단 간 NMS 없는 설계: YOLOv10에서 처음 선보인 YOLO26의 선택적 일대일 헤드(
nms=False)는 비최대 억제(NMS) 후처리를 제거합니다. 이를 통해 로보틱스와 자율주행 기술에 필수적인 결정론적 초저지연 추론을 구현합니다. - MuSGD Optimizer: Moonshot AI의 Kimi K2와 같은 고급 LLM 학습 기법에서 영감을 받은 이 하이브리드 옵티마이저는 SGD와 Muon을 결합해 데이터셋 전반에서 매우 안정적인 학습과 빠른 수렴을 제공합니다.
- CPU 추론 속도 최대 43% 향상: Distribution Focal Loss(DFL)를 전략적으로 제거해 YOLO26은 엣지 컴퓨팅 플랫폼과 CPU에서 성능을 크게 높입니다.
- ProgLoss + STAL: 이러한 고급 손실 함수는 소형 객체 검출 성능을 크게 향상해 YOLO26을 항공 이미지 및 상세 감시 애플리케이션에 특히 적합하게 만듭니다.
적합한 사용 사례#
DAMO-YOLO를 선택해야 하는 경우#
- NAS 학술 연구: 조직에서 신경망 아키텍처 탐색 방법론 연구에 상당한 투자를 하고 있는 경우입니다.
- 특정 하드웨어에서 극도로 엄격한 지연 시간 제약: 맞춤형 AI 가속기 칩에 적합한 백본을 찾기 위해 광범위한 NAS 탐색을 실행할 리소스가 있는 경우입니다.
YOLOv7을 선택할 경우#
- 기존 GPU 파이프라인: 고성능 NVIDIA 하드웨어에서 YOLOv7의 특정 E-ELAN 아키텍처를 중심으로 고도로 최적화된 레거시 프로덕션 파이프라인을 유지 관리하는 팀에 적합합니다.
최신 Ultralytics 모델(YOLO11 / YOLO26)로 마이그레이션해야 하는 이유#
리테일 분석, 스마트 제조, 헬스케어에 이르는 대부분의 엔터프라이즈 애플리케이션에서 최신 Ultralytics 모델은 독보적입니다. Ultralytics Platform과 통합하면 사용 편의성, 우수한 문서, 강력한 커뮤니티 지원, 멀티태스크 다목적성을 제공하는 완전한 ML 파이프라인을 구축할 수 있습니다. Raspberry Pi에서 재고를 추적하든 클라우드에서 대규모 분석을 실행하든, YOLO26과 같은 모델은 컴퓨터 비전의 미래에 이상적인 성능 균형을 제공합니다.