Ultralytics YOLO27:

YOLOv9 vs YOLOv5#

컴퓨터 비전 분야는 눈부신 성장을 거듭해 왔으며, 객체 감지는 수많은 산업 및 연구 애플리케이션의 기반 역할을 하고 있습니다. 적합한 아키텍처를 선택하려면 평균 정밀도(mAP), 추론 속도, 메모리 오버헤드를 신중하게 평가해야 하는 경우가 많습니다. 이 비교에서는 그래디언트 정보 보존이라는 아키텍처 혁신으로 호평받는 YOLOv9와 놀라운 사용 편의성 및 탁월한 배포 유연성으로 검증된 업계 표준인 **Ultralytics YOLOv5**라는 두 가지 영향력 높은 모델을 살펴봅니다.

아키텍처 혁신과 기술적 기원#

이 두 모델의 기반 메커니즘을 이해하면 각각의 성능 특성을 파악하는 데 중요한 맥락을 얻을 수 있습니다.

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

대만 중앙연구원 정보과학연구소의 연구자인 Chien-Yao Wang과 Hong-Yuan Mark Liao가 개발한 YOLOv9는 2024년 2월 21일에 출시되었습니다. 이 모델은 심층 신경망에서 흔히 발생하는 정보 병목 현상을 해결하기 위해 두 가지 획기적인 개념인 프로그래밍 가능한 그래디언트 정보(PGI)와 일반화된 효율적 레이어 집계 네트워크(GELAN)를 도입합니다.

YOLOv9는 PGI를 활용하여 피드포워드 과정 전반에서 중요한 정보가 유지되도록 하며, 이를 통해 매우 정확한 그래디언트 업데이트를 수행합니다. 한편 GELAN 아키텍처는 파라미터 효율성을 극대화하여, 놀라울 정도로 낮은 계산 오버헤드로 최첨단 정확도를 달성할 수 있도록 합니다. 자세한 기술 내용은 공식 YOLOv9 Arxiv 논문에서 확인하거나 YOLOv9 GitHub 리포지토리를 살펴볼 수 있습니다.

YOLOv9에 대해 자세히 알아보기

Ultralytics YOLOv5: 프로덕션 표준#

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

그러나 YOLOv5의 가장 큰 성과는 더 광범위한 Ultralytics 생태계에 통합되었다는 점입니다. 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의 오랜 안정성 기록, 광범위한 documentation, 대규모 community support가 중요한 기존 deployment입니다.
  • 리소스가 제한된 training: YOLOv5의 효율적인 training pipeline과 낮은 memory requirement가 유리한 제한된 GPU resource 환경입니다.
  • 광범위한 export format support: ONNX, TensorRT, CoreML, TFLite를 비롯한 다양한 format으로 deployment해야 하는 project입니다.

Ultralytics(YOLO26)를 선택해야 하는 경우#

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

  • NMS-Free 엣지 배포: 비최대 억제 후처리의 복잡성 없이 일관되고 지연 시간이 짧은 추론이 필요한 애플리케이션입니다.
  • 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 설계를 도입하여 후처리 병목을 완전히 제거합니다. DFL 제거(단순화된 내보내기와 엣지 및 저전력 디바이스 호환성 향상을 위해 Distribution Focal Loss를 제거)를 통해 CPU 추론 속도를 최대 43% 향상합니다. 새로운 MuSGD 옵티마이저로 학습 안정성을 크게 높였으며, ProgLoss + STAL은 향상된 손실 함수를 제공하고 작은 객체 인식 성능을 크게 개선합니다. 이는 IoT, 로보틱스 및 항공 이미지에 특히 중요하며, 엣지와 클라우드 배포 모두에 가장 견고한 아키텍처를 제공합니다.

대규모 데이터셋과 복잡한 배포 파이프라인을 관리하는 팀은 Ultralytics Platform을 활용하여 이러한 최첨단 모델을 손쉽게 학습, 추적 및 배포할 수 있는 노코드 솔루션을 이용할 수 있습니다.

댓글