YOLOv9와 PP-YOLOE+ 비교#
실시간 객체 탐지 분야는 빠르게 발전하고 있으며, 컴퓨터 비전 엔지니어는 엣지 및 클라우드 인프라에 정확도가 높은 모델을 배포하기 위해 다양한 선택지를 활용할 수 있습니다. 이 분야의 대표적인 두 모델은 YOLOv9와 PP-YOLOE+입니다. 두 모델 모두 정확도와 속도의 한계를 넓히고 있지만, 서로 다른 연구 계보와 소프트웨어 생태계에서 나왔습니다.
이 포괄적인 기술 비교에서는 두 모델의 아키텍처, 학습 방법론, 성능 지표, 실제 적용에 적합한 분야를 살펴봅니다. 또한 사용 편의성, 메모리 효율성, 다용도 배포를 중시하는 개발자에게 Ultralytics 생태계가 제공하는 상당한 이점도 살펴보겠습니다.
모델의 기원과 기술 사양#
이러한 모델의 배경을 이해하면 아키텍처 결정과 프레임워크 종속성을 맥락에 맞게 파악할 수 있습니다.
YOLOv9: 정보 병목 문제 해결#
2024년 초에 출시된 YOLOv9는 심층 신경망을 통해 정보가 흐를 때 발생하는 데이터 손실 문제를 해결합니다. 파라미터 효율성 극대화를 위해 설계된 고도로 최적화된 합성곱 신경망입니다.
- 저자: Chien-Yao Wang, Hong-Yuan Mark Liao
- 기관: 대만 중앙연구원 정보과학연구소
- 날짜: 2024년 2월 21일
- Arxiv: 2402.13616
- GitHub: WongKinYiu/yolov9
- 문서: Ultralytics YOLOv9 문서
PP-YOLOE+: Paddle 생태계의 발전#
2022년 Baidu가 출시한 PP-YOLOE+는 PP-YOLOv2를 반복적으로 개선한 모델입니다. 앵커 프리 방식을 활용하고 동적 레이블 할당 전략을 도입하여 PaddlePaddle 프레임워크에서 수렴과 정확도를 개선합니다.
- 저자: PaddlePaddle 저자
- 조직: Baidu
- 날짜: 2022년 4월 2일
- Arxiv: 2203.16250
- GitHub: PaddleDetection
- 문서: PP-YOLOE+ 구성
아키텍처 비교#
프로그래밍 가능 기울기 정보와 CSPRepResStage 비교#
YOLOv9의 핵심 혁신은 프로그래밍 가능 기울기 정보(PGI)입니다. PGI는 보조 감독 프레임워크로 작동하여, 학습 중 중요한 기울기 정보가 보존되고 얕은 계층으로 정확하게 전파되도록 합니다. 여기에 일반화된 효율적 계층 집계 네트워크(GELAN)를 결합했습니다. GELAN은 CSPNet과 ELAN의 강점을 결합하여 계산 비용(FLOPs)을 크게 줄이면서 높은 정확도를 제공합니다.
PP-YOLOE+는 CSPRepResStage라는 특수 백본에 의존합니다. 재매개변수화 기법(RepVGG에서 사용되는 기법과 유사)을 활용해 배포 중 합성곱 계층을 병합함으로써 추론 속도를 높입니다. 또한 분류와 회귀 작업의 균형을 맞추기 위해 효율적인 작업 정렬 헤드(ET-head)를 사용합니다.
PP-YOLOE+도 견고한 모델이지만, YOLOv9의 GELAN 아키텍처는 일반적으로 학습과 추론 모두에서 더 적은 메모리를 사용하므로 엣지 AI 디바이스에 특히 적합합니다.
성능 비교#
프로덕션용 모델을 평가할 때는 mAP(평균 정밀도), 추론 속도, 모델 크기 간의 절충이 중요합니다.
| 모델 | 크기 (픽셀) | 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 |
| PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
| PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
| PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
| PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
| PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
분석#
- 파라미터 효율성: YOLOv9는 훨씬 높은 효율성을 보입니다. 예를 들어 YOLOv9c는 파라미터를 25.5M만 사용해 mAP 53.0%를 달성하는 반면, PP-YOLOE+l은 약간 낮은 mAP 52.9%를 달성하는 데 두 배가 넘는 파라미터(52.2M)가 필요합니다. 따라서 YOLOv9의 메모리 요구 사항을 크게 줄일 수 있습니다.
- 추론 속도: YOLOv9 모델은 TensorRT와 같은 하드웨어 가속기에 맞게 최적화되어 있으며, 실시간 추론에 중요한 NVIDIA T4 GPU에서 경쟁력 있는 추론 속도를 제공합니다.
학습 방법론 및 생태계#
이러한 모델 중 무엇을 선택할지는 소프트웨어 생태계에 따라 결정되는 경우가 많습니다.
PP-YOLOE+와 PaddlePaddle#
PP-YOLOE+는 PaddleDetection 제품군과 긴밀하게 연계되어 있습니다. 강력한 기능을 제공하지만, 사용자는 구성이 복잡하고 명령줄 중심인 환경을 다뤄야 합니다. PyTorch 또는 TensorFlow 생태계에 깊이 자리 잡은 팀은 PaddlePaddle로 전환할 때 상당한 마찰과 가파른 학습 곡선을 겪게 됩니다.
Ultralytics의 강점: 간소화된 워크플로#
반면 YOLOv9는 완성도 높은 Ultralytics 생태계에서 작동합니다. 개발자와 연구자를 위해 설계된 Ultralytics는 탁월한 사용 편의성을 우선시합니다. Python API가 복잡한 상용구 코드를 완전히 추상화합니다.
from ultralytics import YOLO
# 사전 학습된 YOLOv9 모델 불러오기
model = YOLO("yolov9c.pt")
# 사용자 지정 데이터셋을 간편하게 학습
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, device=0)
# 추론을 실행하고 결과 시각화
results = model("https://ultralytics.com/images/bus.jpg")
# 프로덕션 배포를 위해 ONNX로 내보내기
model.export(format="onnx")이 워크플로는 Ultralytics 모델의 뛰어난 학습 효율성을 보여줍니다. 데이터 증강, 분산 학습, Weights & Biases 또는 MLflow와 같은 플랫폼으로의 자동 로깅을 기본적으로 지원합니다.
YOLOv9는 뛰어난 성능을 제공하지만, 새로운 프로젝트에는 새롭게 출시된 Ultralytics YOLO26을 적극 권장합니다. YOLO26은 네이티브 엔드투엔드 NMS 없는 설계(nms=False, 선택 사항)을 지원해 배포를 크게 간소화합니다. DFL 제거(간소화된 내보내기와 엣지 및 저전력 디바이스 호환성 향상을 위해 분포 초점 손실 제거)를 통해 엣지 컴퓨팅에서 최대 43% 더 빠른 CPU 추론을 제공합니다. MuSGD 옵티마이저를 기반으로 안정적인 학습과 빠른 수렴을 보장합니다. 또한 ProgLoss + STAL은 손실 함수를 개선하고 소형 객체 인식을 크게 향상시켜 IoT, 로보틱스, 항공 이미지 분야에 필수적인 성능을 제공합니다.
다용도성과 작업 지원#
최신 컴퓨터 비전 프로젝트는 단순한 바운딩 박스만 다루지 않습니다.
PP-YOLOE+는 주로 표준 객체 탐지용으로 설계되었습니다. 다른 작업에 맞게 아키텍처를 적용하려면 대규모 맞춤형 엔지니어링이 필요합니다.
반면 Ultralytics 프레임워크는 여러 작업을 지원하는 강력한 도구입니다. 통합 API를 활용하면 개발자는 표준 객체 탐지에서 복잡한 인스턴스 세그멘테이션, 정확도 높은 포즈 추정, 항공 이미지용 회전 바운딩 박스(OBB) 탐지, 이미지 분류로 손쉽게 전환할 수 있습니다. 이러한 탁월한 다용성 덕분에 기업 팀은 YOLOv9, YOLO11, YOLO26과 같은 Ultralytics 지원 모델을 지속적으로 선택합니다.
적합한 사용 사례 및 응용 분야#
- 스마트 시티 분석 및 교통 관리: YOLOv9(및 후속 모델 YOLO26)는 파라미터 효율성이 높고 지연 시간이 짧아 NVIDIA Jetson 디바이스와 같은 제약이 있는 엣지 하드웨어에 배포해 교통 흐름과 도시 보안을 모니터링하는 데 적합합니다.
- 소매 재고 시스템: 선반에 밀집해 놓인 작은 물품을 탐지하는 경우, YOLOv9의 PGI는 세밀한 공간 정보를 효과적으로 유지하여 소형 객체 탐지 작업에서 PP-YOLOE+보다 뛰어난 성능을 발휘합니다.
- 레거시 배포: PP-YOLOE+는 기존 레거시 인프라에서 Baidu/PaddlePaddle 소프트웨어 스택을 반드시 사용해야 하는 팀에 한해 여전히 유효한 선택지입니다.
Transformer 기반 아키텍처를 연구하는 경우에도 Ultralytics는 동일하고 사용하기 쉬운 API에서 RT-DETR를 네이티브하게 지원하므로, 구체적인 배포 요구 사항에 최적화된 모델을 언제든 사용할 수 있습니다.