YOLOv9과 YOLOv5#
컴퓨터 비전 분야는 크게 성장해 왔으며, 객체 감지는 수많은 산업 및 연구 애플리케이션의 기반이 되었습니다. 적합한 아키텍처를 선택하려면 평균 정밀도(mAP), 추론 속도, 메모리 오버헤드를 신중하게 평가해야 합니다. 이 비교에서는 그래디언트 정보 보존 분야의 아키텍처 혁신으로 주목받는 YOLOv9과 사용 편의성이 뛰어나고 배포 범용성 면에서 독보적인 실전 검증된 업계 표준인 Ultralytics YOLOv5를 살펴봅니다.
아키텍처 혁신 및 기술적 기원#
두 모델의 내부 작동 방식을 이해하면 각 모델의 성능 특성을 파악하는 데 중요한 맥락을 얻을 수 있습니다.
YOLOv9: 프로그래밍 가능한 그래디언트 정보#
대만 중앙연구원 정보과학연구소의 연구자인 Chien-Yao Wang과 Hong-Yuan Mark Liao가 개발한 YOLOv9은 2024년 2월 21일에 출시되었습니다. 이 모델은 심층 신경망에서 흔히 발생하는 정보 병목 현상을 해결하기 위해 PGI와 GELAN이라는 두 가지 획기적인 개념을 도입합니다.
PGI를 활용하는 YOLOv9은 순전파 과정 전반에서 중요한 정보가 보존되도록 해 매우 정확한 그래디언트 업데이트를 수행합니다. 한편 GELAN 아키텍처는 매개변수 효율성을 극대화하여 놀라울 만큼 낮은 연산 오버헤드로 최첨단 정확도를 달성합니다. 자세한 기술 내용은 공식 YOLOv9 Arxiv 논문에서 살펴보거나 YOLOv9 GitHub 저장소를 확인할 수 있습니다.
Ultralytics YOLOv5: 프로덕션 표준#
Glenn Jocher가 작성하고 Ultralytics가 2020년 6월 26일에 출시한 YOLOv5는 컴퓨터 비전의 접근성을 혁신했습니다. PyTorch 프레임워크를 기반으로 네이티브하게 구축된 최초의 객체 감지 모델 중 하나로, 구형 Darknet C 프레임워크의 복잡성을 피했습니다. YOLOv5는 고도로 최적화된 CSPNet 백본과 PANet 넥을 활용해 속도와 정확도의 균형을 원활하게 맞추는 데 중점을 둡니다.
그러나 가장 큰 성과는 더 광범위한 Ultralytics 에코시스템과 통합된 점입니다. YOLOv5는 빠른 학습 효율성과 낮은 메모리 사용량을 위해 고도로 최적화되어 엣지 배포에서도 매우 안정적입니다.
엣지 디바이스용 모델을 평가할 때는 Ultralytics YOLO 모델이 일반적으로 무거운 Transformer 기반 아키텍처보다 학습과 추론 모두에서 GPU 메모리를 훨씬 적게 요구한다는 점을 기억하세요.
성능 분석: 속도와 정확도#
컴퓨터 비전 파이프라인을 설계할 때 개발자는 정밀도와 지연 시간 사이의 절충점을 고려해야 합니다. 다음 표는 표준 COCO 데이터셋에서 나타나는 성능 차이를 보여줍니다.
| 모델 | 크기 (픽셀) | mAP검증 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.2 | 26.7 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.1 | 76.8 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.5 | 102.8 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 58.1 | 192.5 |
| YOLOv5n | 640 | 28.0 | - | 1.12 | 1.9 | 4.5 |
| YOLOv5s | 640 | 37.4 | - | 1.92 | 7.2 | 16.5 |
| YOLOv5m | 640 | 45.4 | - | 4.03 | 21.2 | 49.0 |
| YOLOv5l | 640 | 49.0 | - | 6.61 | 46.5 | 109.1 |
| YOLOv5x | 640 | 50.7 | - | 11.89 | 86.7 | 205.7 |
절충점 분석#
YOLOv9은 순수 정밀도 측면에서 압도적인 우위를 보입니다. YOLOv9e는 GELAN 레이어를 활용해 세밀한 정보를 보존하면서 mAP를 55.6%까지 높입니다. 따라서 의료 영상이나 소형 객체에 대한 엄격한 정확도가 필요한 시나리오에 탁월한 선택입니다.
반대로 YOLOv5는 순수 배포 속도와 하드웨어 유연성에서 강점을 보입니다. YOLOv5n(Nano)은 매우 가벼운 모델로 잘 알려져 있으며, TensorRT를 통해 T4 GPU에서 단 1.12ms 만에 추론을 실행합니다. 제약이 있는 IoT 디바이스, 휴대폰 또는 Raspberry Pi에 배포하는 경우 YOLOv5의 메모리 사용량은 매우 높은 안정성을 제공합니다.
Ultralytics 생태계의 이점#
모델을 선택할 때 중요한 고려 사항 중 하나는 모델을 둘러싼 소프트웨어 에코시스템입니다. YOLOv9은 최상위 수준의 연구 벤치마크를 제공하지만, 최신 Ultralytics Python API를 통해 두 모델을 모두 사용하면 개발자에게 통합되고 간소화된 경험을 제공해 격차를 해소할 수 있습니다.
사용 편의성 및 내보내기#
Ultralytics는 복잡한 엔지니어링 문제를 추상화합니다. 자동 데이터 증강과 하이퍼파라미터 튜닝 같은 기능이 기본으로 제공됩니다. 기본 제공되는 내보내기 명령을 사용하면 모델을 ONNX, OpenVINO 또는 LiteRT 형식으로 변환해 프로덕션에 손쉽게 적용할 수 있습니다.
작업 범용성#
두 모델 모두 객체 감지에 탁월하지만, 최신 Ultralytics 모델은 다양한 컴퓨터 비전 과제를 해결하도록 설계되었습니다. 더 폭넓은 프레임워크는 이미지 분류, 인스턴스 분할, 자세 추정, 방향성 바운딩 박스(OBB)를 기본 지원하므로 개발자는 코드베이스를 전환하지 않고도 여러 비전 문제를 해결할 수 있습니다.
사용 사례 및 권장 사항#
YOLOv9과 YOLOv5 중 어떤 모델을 선택할지는 프로젝트의 구체적인 요구 사항, 배포 제약 조건, 에코시스템 선호도에 따라 달라집니다.
YOLOv9을 선택해야 하는 경우#
YOLOv9은 다음과 같은 경우에 적합합니다.
- 정보 병목 연구: 프로그래밍 가능한 그래디언트 정보(PGI) 및 일반화된 효율적 계층 집계 네트워크(GELAN) 아키텍처를 연구하는 학술 프로젝트입니다.
- 그래디언트 흐름 최적화 연구: 학습 중 심층 네트워크 계층의 정보 손실을 이해하고 완화하는 데 초점을 둔 연구입니다.
- 고정확도 탐지 벤치마킹: 아키텍처 비교의 기준점으로 YOLOv9의 우수한 COCO 벤치마크 성능이 필요한 시나리오입니다.
YOLOv5를 선택할 경우#
다음과 같은 경우 YOLOv5를 권장합니다.
- 프로덕션에서 검증된 시스템: YOLOv5의 오랜 안정성 기록, 방대한 문서, 대규모 커뮤니티 지원을 중요하게 여기는 기존 배포 환경입니다.
- 리소스 제약이 있는 학습: GPU 리소스가 제한된 환경에서 YOLOv5의 효율적인 학습 파이프라인과 적은 메모리 요구 사항이 유리합니다.
- 폭넓은 내보내기 형식 지원: ONNX, TensorRT, CoreML, LiteRT 등 다양한 형식으로 배포해야 하는 프로젝트입니다.
Ultralytics(YOLO26)를 선택해야 하는 경우#
대부분의 신규 프로젝트에는 성능과 개발자 경험을 가장 잘 조합한 Ultralytics YOLO26을 권장합니다.
- NMS가 필요 없는 엣지 배포: 비최대 억제 후처리의 복잡성 없이 일관된 저지연 추론이 필요한 애플리케이션입니다.
- CPU 전용 환경: 전용 GPU 가속 기능이 없는 디바이스에서 YOLO26의 최대 43% 빠른 CPU 추론은 결정적인 이점을 제공합니다.
- 작은 객체 탐지: 항공 드론 이미지나 IoT 센서 분석과 같이 작은 객체의 정확도를 ProgLoss와 STAL이 크게 높여 주는 까다로운 시나리오입니다.
구현 예시#
Ultralytics 에코시스템의 장점은 가중치 문자열만 바꾸면 YOLOv5 모델에서 YOLOv9 모델로 간편하게 전환할 수 있다는 것입니다.
from ultralytics import YOLO
# 사전 학습된 YOLOv9 모델을 불러옵니다(YOLOv5u를 사용하려면 "yolov5su.pt"로 바꿉니다)
model = YOLO("yolov9c.pt")
# 사용자 지정 데이터셋으로 모델을 효율적으로 학습합니다.
train_results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# 새 이미지에서 추론을 실행합니다
predictions = model.predict("https://ultralytics.com/images/zidane.jpg")
# 원활한 배포를 위해 ONNX로 내보내기
model.export(format="onnx")최신 아키텍처 살펴보기#
YOLOv5와 YOLOv9은 각기 뚜렷한 장점을 지닌 우수한 모델이지만, 이 분야는 계속 발전하고 있습니다. 새로운 프로젝트를 살펴보는 사용자는 Ultralytics의 최신 모델도 평가해 볼 수 있습니다.
- YOLO11: YOLOv8 계보를 강력하고 세련되게 발전시킨 모델로, 모든 비전 작업에서 뛰어난 속도와 정확도의 균형을 제공합니다.
- YOLO26: 2026년에 출시된 YOLO26은 최신 파이프라인을 위한 궁극적인 권장 모델입니다. 선택적으로 사용할 수 있는 엔드투엔드 NMS 프리 설계(
nms=False)를 도입해 NMS 후처리 병목 현상을 없앱니다. DFL 제거(Distribution Focal Loss를 제거해 내보내기를 간소화하고 엣지 및 저전력 디바이스와의 호환성을 향상)를 통해 CPU 추론 속도를 최대 43% 높입니다. 새로운 MuSGD 옵티마이저로 학습 안정성을 대폭 강화하고, ProgLoss + STAL(Progressive Loss 및 Small-Target-Aware Label Assignment)로 소형 객체 인식 성능을 크게 높여 IoT, 로보틱스, 항공 이미지 분야의 핵심 요구를 충족합니다. 따라서 엣지와 클라우드 배포 모두에 적합한 가장 견고한 아키텍처입니다.
대규모 데이터셋과 복잡한 배포 파이프라인을 관리하는 팀은 Ultralytics Platform을 사용해 코드 작성 없이 최첨단 모델을 손쉽게 학습하고, 추적하며, 배포할 수 있습니다.