YOLOv9 vs YOLOv5: 현대 객체 탐지에 대한 기술적 심층 분석

컴퓨터 비전 분야는 엄청난 성장을 이루었으며, 객체 탐지는 수많은 산업 및 연구 애플리케이션의 중추 역할을 하고 있습니다. 올바른 아키텍처를 선택하려면 mAP(평균 정밀도), 추론 속도 및 메모리 오버헤드에 대한 신중한 평가가 필요합니다. 이 비교에서는 두 가지 매우 영향력 있는 모델을 살펴봅니다. 하나는 그래디언트 정보 유지 아키텍처의 획기적인 발전으로 유명한 YOLOv9이고, 다른 하나는 놀라운 사용 편의성과 타의 추종을 불허하는 배포 범용성으로 검증된 업계 표준인 **Ultralytics YOLOv5**입니다.

아키텍처 혁신 및 기술적 배경

이 두 모델의 기본 메커니즘을 이해하면 각 모델의 성능 프로필을 파악하는 데 중요한 맥락이 됩니다.

YOLOv9: 프로그래밍 가능한 그래디언트 정보

대만 중앙연구원 정보과학연구소의 연구원 Chien-Yao Wang과 Hong-Yuan Mark Liao가 개발한 YOLOv9는 2024년 2월 21일에 발표되었습니다. 이 모델은 심층 신경망에서 흔히 발생하는 정보 병목 현상을 해결하기 위해 PGI(Programmable Gradient Information)와 GELAN(Generalized Efficient Layer Aggregation Network)이라는 두 가지 획기적인 개념을 도입했습니다.

YOLOv9는 PGI를 활용하여 피드포워드 과정 전반에 걸쳐 중요한 정보를 유지함으로써 매우 정확한 그래디언트 업데이트를 가능하게 합니다. 한편, GELAN 아키텍처는 매개변수 효율성을 극대화하여 놀라울 정도로 낮은 연산 오버헤드로 최첨단 정확도를 달성합니다. 자세한 기술적 내용은 공식 YOLOv9 Arxiv 논문에서 확인하거나 YOLOv9 GitHub 저장소를 참조하십시오.

YOLOv9에 대해 더 알아보기

Ultralytics YOLOv5: 프로덕션 표준

Glenn Jocher가 작성하고 Ultralytics가 2020년 6월 26일에 발표한 YOLOv5는 컴퓨터 비전의 접근성을 혁신했습니다. PyTorch 프레임워크 기반으로 네이티브하게 구축된 최초의 객체 탐지 모델 중 하나로서, 이전의 복잡한 Darknet C-프레임워크를 대체했습니다. YOLOv5는 고도로 최적화된 CSPNet 백본과 PANet 넥을 활용하여 속도와 정확도 사이의 완벽한 균형을 우선시합니다.

그러나 이 모델의 가장 큰 성과는 더 넓은 Ultralytics 생태계와의 통합입니다. YOLOv5는 빠른 학습 효율성 및 저메모리 환경에 최적화되어 있어 엣지 배포에서 매우 안정적입니다.

YOLOv5에 대해 더 알아보기

메모리 효율성

엣지 디바이스용 모델을 평가할 때, Ultralytics YOLO 모델은 일반적으로 대규모 Transformer 기반 아키텍처보다 학습 및 추론 과정에서 훨씬 적은 GPU 메모리를 요구한다는 점을 기억하십시오.

성능 분석: 속도 대 정확도

컴퓨터 비전 파이프라인을 설계할 때 개발자는 정밀도와 지연 시간 사이의 절충안을 고려해야 합니다. 다음 표는 표준 COCO 데이터셋에서의 성능 차이를 보여줍니다.

모델크기
(픽셀)
mAPval
50-95
속도
CPU ONNX
(ms)
속도
T4 TensorRT10
(ms)
파라미터
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
YOLOv5n64028.073.61.122.67.7
YOLOv5s64037.4120.71.929.124.0
YOLOv5m64045.4233.94.0325.164.2
YOLOv5l64049.0408.46.6153.2135.0
YOLOv5x64050.7763.211.8997.2246.4

절충안 분석

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 또는 TFLite 형식으로 변환하는 내장 내보내기 명령을 사용할 수 있습니다.

작업 범용성

두 모델 모두 객체 탐지에서 뛰어나지만, 최신 Ultralytics 모델은 다양한 컴퓨터 비전 문제를 해결하도록 구축되었습니다. 더 광범위한 프레임워크는 이미지 분류, 인스턴스 분할, 자세 추정지향 경계 상자(OBB)를 기본적으로 지원하여 개발자가 코드베이스를 변경하지 않고도 여러 비전 문제를 해결할 수 있도록 합니다.

사용 사례 및 권장 사항

YOLOv9와 YOLOv5 중에서 선택하는 것은 프로젝트의 구체적인 요구 사항, 배포 제약 조건 및 생태계 선호도에 따라 다릅니다.

YOLOv9을 선택해야 할 때

YOLOv9는 다음과 같은 경우에 강력한 선택입니다:

  • 정보 병목 현상 연구: 프로그래밍 가능한 그래디언트 정보(PGI) 및 일반화된 효율적 계층 집계 네트워크(GELAN) 아키텍처를 연구하는 학술 프로젝트.
  • 그래디언트 흐름 최적화 연구: 학습 중 심층 네트워크 계층에서의 정보 손실을 이해하고 완화하는 데 중점을 둔 연구.
  • 고정확도 탐지 벤치마킹: 아키텍처 비교를 위한 참조 지점으로 YOLOv9의 강력한 COCO 벤치마크 성능이 필요한 시나리오.

YOLOv5를 선택해야 할 때

YOLOv5는 다음의 경우 권장됩니다:

  • 검증된 프로덕션 시스템: YOLOv5의 오랜 안정성 기록, 광범위한 문서화 및 방대한 커뮤니티 지원이 가치 있게 평가되는 기존 배포 환경.
  • 자원 제약이 있는 학습 환경: GPU 자원이 제한적인 환경에서 YOLOv5의 효율적인 학습 파이프라인과 낮은 메모리 요구사항이 유리한 경우.
  • 광범위한 내보내기 형식 지원: ONNX, TensorRT, CoreML, TFLite를 포함한 다양한 형식으로 배포해야 하는 프로젝트.

Ultralytics(YOLO26)를 선택해야 할 때

대부분의 신규 프로젝트에서 Ultralytics YOLO26은 성능과 개발자 경험의 최적의 조합을 제공합니다:

  • NMS-free 엣지 배포: Non-Maximum Suppression 후처리의 복잡성 없이 일관되고 낮은 지연 시간의 추론이 필요한 애플리케이션.
  • CPU 전용 환경: 전용 GPU 가속기가 없는 장치에서 YOLO26의 최대 43% 더 빠른 CPU 추론 속도가 결정적인 이점을 제공합니다.
  • 소형 객체 탐지: 항공 드론 이미지나 IoT 센서 분석과 같은 도전적인 시나리오에서 ProgLoss와 STAL이 작은 객체에 대한 정확도를 크게 향상시킵니다.

구현 예시

Ultralytics 생태계의 장점은 가중치 문자열을 변경하는 것만으로 YOLOv5 모델과 YOLOv9 모델 간에 쉽게 전환할 수 있다는 점입니다.

from ultralytics import YOLO

# Load a pretrained YOLOv9 model (swap to "yolov5s.pt" to use YOLOv5)
model = YOLO("yolov9c.pt")

# Train the model efficiently on a custom dataset
train_results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on new images
predictions = model.predict("https://ultralytics.com/images/zidane.jpg")

# Export to ONNX for seamless deployment
model.export(format="onnx")

최신 아키텍처 탐색

YOLOv5와 YOLOv9는 뚜렷한 장점을 가진 훌륭한 모델이지만, 해당 분야는 계속 발전하고 있습니다. 새로운 프로젝트를 탐색하는 사용자들은 Ultralytics의 최신 버전을 평가해 보는 것도 좋습니다.

  • YOLO11: 모든 비전 작업에서 뛰어난 속도와 정확도 균형을 제공하는 YOLOv8 계보의 강력하고 정교한 진화형 모델입니다.
  • YOLO26: 2026년에 출시된 YOLO26은 최신 파이프라인을 위한 궁극적인 권장 사항입니다. 이 모델은 NMS-Free End-to-End 디자인을 도입하여 후처리 병목 현상을 완전히 제거했습니다. DFL 제거(간소화된 내보내기 및 엣지/저전력 디바이스 호환성을 위해 DFL, 즉 분산 초점 손실 제거)를 통해 CPU 추론 속도를 최대 43% 향상시켰습니다. 새로운 MuSGD 옵티마이저를 통해 학습 안정성이 극대화되었으며, ProgLoss + STAL은 IoT, 로봇 공학, 항공 이미지에 필수적인 작은 객체 인식 기능을 크게 개선하여 엣지 및 클라우드 배포 모두에 가장 강력한 아키텍처가 되었습니다.

대규모 데이터셋과 복잡한 배포 파이프라인을 관리하는 팀의 경우, Ultralytics Platform을 사용하면 코드 없는(no-code) 솔루션을 통해 이러한 최첨단 모델을 손쉽게 학습, 추적 및 배포할 수 있습니다.

댓글