YOLOv9와 YOLOv8#
실시간 컴퓨터 비전 분야는 지난 몇 년 동안 놀라운 발전을 거듭해 왔으며, 새로운 모델이 등장할 때마다 엣지 디바이스와 클라우드 서버 모두에서 가능한 작업의 이론적 한계를 확장해 왔습니다. 최신 YOLOv9 아키텍처와 많은 인기를 얻고 있는 Ultralytics YOLOv8 프레임워크를 비교할 때, 개발자는 최첨단 이론적 그래디언트 경로와 철저한 검증을 거친 프로덕션용 생태계 중 하나를 선택해야 하는 경우가 많습니다.
이 종합 가이드에서는 두 강력한 모델의 아키텍처 혁신, 성능 지표 및 이상적인 배포 시나리오를 비교하여 다음 인공지능 프로젝트에 적합한 모델을 선택할 수 있도록 도와드립니다.
기술 사양 및 저자 정보#
이러한 모델의 계보를 이해하면 각 모델의 설계 선택을 파악하는 데 필요한 중요한 맥락을 얻을 수 있습니다.
YOLOv9 대만 중앙연구원 정보과학연구소의 Chien-Yao Wang과 Hong-Yuan Mark Liao가 개발한 YOLOv9는 2024년 2월 21일에 출시되었습니다. 핵심 연구는 심층 신경망의 정보 병목 현상을 해결하는 데 중점을 둡니다. YOLOv9 연구 논문 원문을 Arxiv에서 확인하거나 공식 YOLOv9 GitHub 저장소에서 소스 코드를 확인할 수 있습니다.
Ultralytics YOLOv8 Ultralytics의 Glenn Jocher, Ayush Chaurasia, Jing Qiu가 개발한 YOLOv8은 2023년 1월 10일에 출시되었습니다. YOLOv8은 매우 다양한 비전 작업을 위한 통합 API를 제공하며 다용도성 측면에서 업계 표준으로 자리 잡았습니다. 소스 코드는 기본 Ultralytics GitHub 저장소에서 관리되므로 지속적인 업데이트와 장기적인 안정성이 보장됩니다.
아키텍처 혁신#
YOLOv9: 프로그래밍 가능한 그래디언트 정보#
YOLOv9의 핵심 특징은 **프로그래밍 가능한 그래디언트 정보 (PGI)**와 일반화된 효율적 레이어 집계 네트워크 (GELAN)의 도입입니다. 합성곱 신경망이 깊어질수록 일반적으로 피드포워드 과정에서 중요한 특징 정보를 잃게 됩니다. PGI는 가중치 업데이트에 사용되는 정확한 그래디언트를 유지하여 이러한 정보 병목 현상을 해결하고 신뢰할 수 있는 특징 추출을 보장합니다. 이 아키텍처는 파라미터 효율성을 극대화하므로 YOLOv9는 더 적은 부동 소수점 연산 (FLOPs)으로 높은 정밀도를 달성할 수 있습니다.
YOLOv8: 다용도 작업 모델#
YOLOv8은 간소화된 앵커 프리 검출 메커니즘을 도입하여 박스 예측 수를 줄이고 후처리 중 비최대 억제 (NMS) 속도를 높입니다. C2f 모듈(두 개의 합성곱을 사용하는 스테이지 간 부분 병목 구조)은 기존 모델과 비교하여 네트워크 전반의 그래디언트 흐름을 개선합니다. 무엇보다 YOLOv8은 다용도성을 염두에 두고 설계되었으며, 기본적으로 객체 검출, 인스턴스 세그멘테이션, 포즈 추정, 이미지 분류, 방향성 바운딩 박스 (OBB) 추출을 지원합니다.
YOLOv9는 탁월한 순수 검출 성능 지표를 제공하지만, 복잡한 파이프라인에 기본 방식으로 통합하기는 어려울 수 있습니다. Ultralytics 프레임워크를 통해 YOLOv9를 활용하면 이러한 격차를 해소하고 강력한 내보내기 및 배포 도구를 이용할 수 있습니다.
성능 균형 및 벤치마크#
비전 모델을 배포할 때 속도와 정확도 간의 균형은 가장 중요한 요소입니다. 아래에서는 표준 COCO 데이터셋에서 평가한 모델 크기, 지연 시간 및 평균 정밀도를 자세히 비교합니다.
| 모델 | 크기 (픽셀) | mAPval 50-95 | 속도 CPU ONNX (ms) | 속도 T4 TensorRT10 (ms) | 파라미터 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
| YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
| YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
| YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
| YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
지표를 분석하면 YOLOv9가 파라미터 수 대비 정확도 비율에서 뛰어난 성능을 보인다는 것을 알 수 있습니다. YOLOv9c 모델은 25.3M개의 파라미터만으로도 인상적인 53.0% mAP를 달성합니다. 그러나 YOLOv8은 메모리 요구 사항과 하드웨어 가속기에서의 추론 속도 측면에서 상당한 우위를 유지하며, 특히 YOLOv8n 변형은 NVIDIA TensorRT 환경에서 1.47ms의 성능을 기록합니다.
Ultralytics 생태계의 이점#
아키텍처를 선택할 때 주요 고려 사항은 사용 편의성과 이를 둘러싼 소프트웨어 생태계입니다. 종속성 관리, 사용자 지정 데이터 로더 작성, 복잡한 내보내기 스크립트 처리는 개발을 지연시킬 수 있습니다. 통합된 Ultralytics 생태계는 이러한 복잡성을 추상화하여 처리합니다.
YOLOv8과 YOLOv9 중 무엇을 선택하든(YOLOv9는 Ultralytics 라이브러리에서 완전히 지원됨) 통합 API, 자동 데이터 증강 기법, 간소화된 ONNX 형식 내보내기의 이점을 누릴 수 있습니다. 또한 Ultralytics 아키텍처는 일반적으로 고도로 최적화된 학습 효율성을 제공하여 대규모 Transformer 기반 모델에서 흔히 발생하는 막대한 CUDA 메모리 사용량 증가를 방지합니다.
학습 코드 예제#
Python API를 사용하여 두 모델 중 하나를 학습하는 작업은 간단하며 몇 줄의 코드만 필요합니다.
from ultralytics import YOLO
# Load the preferred model (swap 'yolov9c.pt' with 'yolov8n.pt' as needed)
model = YOLO("yolov8n.pt")
# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance metrics
metrics = model.val()
# Export to ONNX for production deployment
model.export(format="onnx")사용 사례 및 권장 사항#
YOLOv9와 YOLOv8 중 어떤 것을 선택할지는 구체적인 프로젝트 요구 사항, 배포 제약 조건 및 생태계 선호도에 따라 달라집니다.
YOLOv9을 선택해야 하는 경우#
YOLOv9은 다음과 같은 경우에 적합합니다:
- 정보 병목 연구: 프로그래밍 가능한 그래디언트 정보(PGI) 및 일반화된 효율적 레이어 집계 네트워크(GELAN) 아키텍처를 연구하는 학술 프로젝트입니다.
- 그래디언트 흐름 최적화 연구: 학습 중 심층 네트워크 레이어의 정보 손실을 이해하고 완화하는 데 중점을 둔 연구입니다.
- 고정확도 탐지 벤치마킹: 아키텍처 비교를 위한 기준점으로 YOLOv9의 강력한 COCO 벤치마크 성능이 필요한 시나리오입니다.
YOLOv8을 선택해야 하는 경우#
다음과 같은 경우 YOLOv8을 권장합니다:
- 범용 멀티태스크 배포: Ultralytics 생태계에서 detection, segmentation, classification, pose estimation을 수행하기 위해 검증된 모델이 필요한 프로젝트입니다.
- 확립된 프로덕션 시스템: 안정적이고 충분히 테스트된 배포 파이프라인과 함께 YOLOv8 아키텍처를 기반으로 이미 구축된 기존 프로덕션 환경입니다.
- 폭넓은 커뮤니티 및 생태계 지원: YOLOv8의 풍부한 튜토리얼, 서드파티 통합, 활발한 커뮤니티 리소스를 활용하는 애플리케이션입니다.
Ultralytics(YOLO26)를 선택해야 하는 경우#
대부분의 신규 프로젝트에서 Ultralytics YOLO26은 성능과 개발자 경험의 최적 조합을 제공합니다.
- NMS-Free 엣지 배포: 비최대 억제 후처리의 복잡성 없이 일관되고 지연 시간이 짧은 추론이 필요한 애플리케이션입니다.
- CPU 전용 환경: 전용 GPU 가속 기능이 없는 디바이스에서 YOLO26의 최대 43% 더 빠른 CPU 추론이 결정적인 이점을 제공하는 경우입니다.
- 소형 객체 탐지: 항공 드론 이미지나 IoT 센서 분석처럼 ProgLoss와 STAL이 작은 객체의 정확도를 크게 향상하는 까다로운 시나리오입니다.
향후 전망: YOLO26의 등장#
YOLOv8과 YOLOv9는 모두 매우 뛰어난 성능을 제공하지만, 컴퓨터 비전 분야는 빠르게 변화하고 있습니다. 최신 배포 환경에는 2026년 1월에 출시된 **Ultralytics YOLO26**을 사용하는 것을 적극 권장합니다.
YOLO26은 프로덕션 환경에서 객체 검출기가 작동하는 방식의 패러다임을 전환합니다. 기본 엔드 투 엔드 NMS 프리 설계를 적용하여 후처리의 지연 시간과 비결정적 동작을 효과적으로 제거합니다. 엣지 및 저전력 하드웨어를 더욱 효과적으로 지원하기 위해 YOLO26은 완전한 DFL 제거(Distribution Focal Loss)를 적용하여 모바일 내보내기를 크게 단순화합니다.
또한 YOLO26은 SGD와 Muon을 결합한 하이브리드 방식의 획기적인 MuSGD 옵티마이저를 사용하여 비전 작업에 LLM 수준의 학습 안정성을 제공하고 수렴 속도를 크게 높입니다. 최대 43% 더 빠른 CPU 추론과 소형 객체 인식 성능을 크게 향상시키는 ProgLoss + STAL의 통합을 제공하는 YOLO26은 새로운 엔터프라이즈 이니셔티브를 위한 명확한 선택입니다.
하드웨어 제약 조건에 따라 균형 잡힌 범용 작업을 위한 Ultralytics YOLO11과 이러한 모델을 비교하거나, 전문적인 고충실도 연구를 위해 RT-DETR과 같은 Transformer 기반 모델을 살펴보는 것도 좋습니다.
실제 애플리케이션 및 사용 사례#
YOLOv8과 YOLOv9 중 선택은 대부분 프로젝트 제약 조건과 대상 하드웨어에 따라 결정됩니다.
- 의료 및 의료 영상: 종양 검출 시스템과 같이 모든 픽셀이 중요한 경우, YOLOv9의 GELAN 아키텍처는 세밀한 정보를 매우 효과적으로 보존하여 중요한 진단에서 위음성을 줄입니다.
- 소매 및 재고 분석: 빽빽하게 진열된 선반을 추적하는 스마트 슈퍼마켓 시스템에서는 YOLOv9가 겹쳐 있는 품목을 안정적으로 구분하는 데 필요한 mAP를 제공합니다.
- 스마트 시티 및 교통 모니터링: 빠르게 변화하는 물류 및 교통 관리 환경에서는 YOLOv8의 매우 짧은 지연 시간과 검증된 견고성이 여러 카메라 스트림에서 차량을 동시에 추적하는 데 이상적입니다.
- 엣지 배포: Raspberry Pi와 같은 제약이 있는 디바이스나 모바일 하드웨어에 배포하는 경우, YOLOv8의 고도로 최적화된 C2f 블록과 YOLO26의 CPU 최적화가 더욱 원활하고 배터리 효율적인 추론 파이프라인을 제공합니다.