Ultralytics YOLO27:
Get Started

YOLOv8과 YOLOv9#

실시간 객체 탐지의 발전은 더 높은 정확도, 더 낮은 지연 시간, 향상된 하드웨어 활용률을 끊임없이 추구해 온 과정입니다. 이 과정의 주요 이정표로는 Ultralytics YOLOv8과 YOLOv9이 있습니다. 두 모델 모두 컴퓨터 비전 분야의 최첨단 성능을 보여주지만, 서로 다른 배포 요구 사항과 아키텍처 철학, 개발자 생태계를 겨냥합니다.

이 종합 가이드에서는 기술적 차이, 아키텍처 혁신, 실질적인 배포 고려 사항을 분석하여 다음 인공지능 프로젝트에 적합한 모델을 선택할 수 있도록 돕습니다.

모델 계보와 핵심 철학#

지표를 살펴보기 전에 각 모델의 기원과 주요 설계 목표를 이해하는 것이 중요합니다.

Ultralytics YOLOv8: 다재다능한 생태계 표준#

Ultralytics 팀이 출시한 YOLOv8은 단독 객체 탐지기가 아니라 통합 멀티태스크 프레임워크로 설계되었습니다. 원활한 개발자 경험, 낮은 메모리 요구량, 폭넓은 하드웨어 호환성을 우선시합니다.

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

Academia Sinica 연구진이 독자적으로 개발한 YOLOv9은 아키텍처 이론에 중점을 두며, 특히 심층 신경망의 정보 병목 현상을 해결하는 데 주력합니다.

  • 저자: Chien-Yao Wang 및 Hong-Yuan Mark Liao
  • 기관: 대만 중앙연구원 정보과학연구소
  • 날짜: 2024-02-21
  • Arxiv: 2402.13616
  • GitHub: WongKinYiu/yolov9

YOLOv9에 대해 자세히 알아보기

엔터프라이즈 배포

대규모 상용 배포를 계획하고 있다면 클라우드 학습, 데이터셋 관리, 원클릭 API 엔드포인트를 간편하게 제공하는 Ultralytics Platform을 살펴보세요.

아키텍처 심층 분석#

딥러닝의 아키텍처 선택은 모델의 학습 효율과 NVIDIA Jetson이나 Intel CPU 같은 대상 하드웨어에서의 실행 속도를 좌우합니다.

YOLOv8 아키텍처: C2f와 분리형 헤드#

YOLOv8은 이전 C3 모듈을 대체한 C2f 모듈(2개의 합성곱을 사용하는 크로스 스테이지 부분 병목)을 도입했습니다. 이 변경으로 그래디언트 흐름이 개선되고 네트워크가 GPU 메모리에 큰 부담을 주지 않으면서 더 풍부한 특징 표현을 학습할 수 있습니다.

또한 YOLOv8은 앵커 프리 설계와 분리형 헤드를 사용합니다. 분류와 회귀를 별도의 경로로 처리하여 학습 중 더 빠르게 수렴하고 다양한 사용자 지정 데이터셋에 더 잘 일반화합니다.

YOLOv9 아키텍처: PGI와 GELAN#

YOLOv9은 프로그래밍 가능 그래디언트 정보(PGI)와 일반화 효율적 레이어 집계 네트워크(GELAN)를 도입했습니다. PGI는 네트워크 레이어를 통과하는 동안 중요한 데이터가 손실되지 않도록 하여 가중치 업데이트에 신뢰할 수 있는 그래디언트를 제공합니다. GELAN은 파라미터 효율을 극대화하여 FLOPs를 적정 수준으로 유지하면서 높은 정확도를 달성하도록 합니다.

수학적으로는 인상적이지만, 학습 중 특정 보조 가역 브랜치에 의존하는 YOLOv9의 특성상 표준 파이프라인보다 학습 코드를 사용자 지정하기가 복잡할 수 있습니다.

성능 지표 및 벤치마크#

아래 표는 다양한 크기의 모델을 직접 비교합니다. 성능은 객체 탐지 표준 벤치마크인 MS COCO 데이터셋에서 측정했습니다.

모델크기
(픽셀)
mAP검증
50-95
속도
CPU ONNX
(ms)
속도
T4 TensorRT10
(ms)
파라미터
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.1
YOLOv8x64053.9479.114.3768.2257.8
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.226.7
YOLOv9m64051.4-6.4320.176.8
YOLOv9c64053.0-7.1625.5102.8
YOLOv9e64055.6-16.7758.1192.5

참고: 각 열에서 가장 높은 값은 굵게 표시했습니다.

절충점 분석#

YOLOv9은 특히 더 큰 e 변형에서 최고 정확도(mAP)가 약간 더 높습니다. 하지만 그만큼의 대가가 따릅니다. Ultralytics YOLOv8은 특히 TensorRT나 ONNX 같은 형식으로 컴파일했을 때 추론 속도에서 상당한 우위를 유지합니다. Raspberry Pi나 구형 모바일 칩과 같이 제약이 있는 엣지 하드웨어에서 초당 프레임 수(FPS)가 높아야 하는 애플리케이션의 경우, YOLOv8의 n 및 s 변형이 훨씬 실용적인 성능 균형을 제공합니다.

학습 효율성과 생태계 통합#

모델을 선택할 때는 정확도 표만 살펴보는 것이 아니라 개발자 경험도 중요하게 고려해야 합니다.

Ultralytics의 장점: 사용 편의성#

YOLOv9을 학습하려면 복잡한 GitHub 리포지토리를 복제하고 PyTorch 환경을 세심하게 관리하며 보조 손실 가중치를 수동으로 구성해야 하는 경우가 많습니다.

반면 Ultralytics YOLOv8은 매우 간소화된 Python API를 제공합니다. 사용 편의성을 고려해 설계되어 데이터 증강, Weights & Biases 및 Comet ML 같은 도구를 이용한 로깅, 하드웨어 분산을 기본적으로 처리합니다.

from ultralytics import YOLO

# 사전 학습된 YOLOv8 소형 모델 불러오기
model = YOLO("yolov8s.pt")

# 사용자 지정 데이터로 모델을 효율적으로 학습하기
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# 엣지 배포용으로 내보내기
model.export(format="engine", quantize=16)  # TensorRT 내보내기

이 단일 API를 사용하면 프로토타입에서 프로덕션에 이르는 시간을 크게 단축할 수 있습니다. 또한 YOLOv8은 일반적으로 학습 중 CUDA 메모리를 더 적게 사용하므로 개발자는 일반 소비자용 하드웨어에서 더 큰 배치 크기를 사용할 수 있습니다.

작업 범용성#

YOLOv9은 뛰어난 바운딩 박스 탐지기이지만, 실제 비전 AI에는 더 많은 기능이 필요한 경우가 많습니다. YOLOv8은 인스턴스 세그멘테이션, 포즈 추정, 이미지 분류, 회전 바운딩 박스(OBB)를 기본적으로 지원하는 다재다능한 강력한 프레임워크입니다. 여러 작업에 단일 프레임워크를 사용하면 소프트웨어 비대화와 유지 관리 부담을 크게 줄일 수 있습니다.

앞으로의 전망

새 프로젝트를 시작한다면 Ultralytics YOLO11이나 최첨단 YOLO26도 평가해 볼 수 있습니다. YOLO26은 선택적 엔드투엔드 NMS-free 추론을 제공합니다.

실제 활용 사례#

이 모델들은 프로덕션 환경에서 어떤 성능을 보일까요?

자율 드론과 로보틱스#

장애물을 빠르게 회피해야 하는 로보틱스에는 YOLOv8이 적합합니다. YOLOv8n의 초저지연 성능은 자율 시스템이 환경에 실시간으로 반응하여 충돌을 방지하도록 합니다. OpenVINO 및 CoreML로 기본 내보내기를 지원하므로 상용 드론에서 흔히 사용하는 저전력 칩에도 간편하게 배포할 수 있습니다.

고해상도 결함 탐지#

미세한 이상 징후를 탐지하는 것이 중요하고 오프라인 처리가 허용되는 특수 제조 환경에서는 YOLOv9이 매우 효과적일 수 있습니다. PGI 아키텍처는 머리카락처럼 가는 균열이나 PCB 납땜 오류를 식별하는 데 필요한 세밀한 시각적 정보를 네트워크가 유지하도록 돕습니다.

스마트 리테일 및 보안 분석#

매장 통로를 지나는 고객을 추적하거나 자동 결제 시스템을 관리할 때는 YOLOv8이 가장 적합합니다. BoT-SORT 같은 표준 알고리즘을 사용해 탐지와 다중 객체 추적을 동시에 실행할 수 있어 여러 카메라를 사용하는 리테일 배포에 강력한 솔루션을 제공합니다.

사용 사례 및 권장 사항#

YOLOv8과 YOLOv9 중에서 선택할 때는 구체적인 프로젝트 요구 사항, 배포 제약, 생태계 선호도를 고려해야 합니다.

YOLOv8을 선택해야 하는 경우#

YOLOv8은 다음과 같은 경우에 적합합니다.

  • 다양한 작업의 유연한 배포: Ultralytics 생태계에서 탐지, 세그멘테이션, 분류, 자세 추정에 검증된 모델이 필요한 프로젝트.
  • 안정적인 프로덕션 시스템: 이미 YOLOv8 아키텍처를 기반으로 구축되어 안정적이고 충분히 테스트된 배포 파이프라인을 갖춘 기존 프로덕션 환경.
  • 폭넓은 커뮤니티 및 생태계 지원: YOLOv8의 방대한 튜토리얼, 타사 통합, 활발한 커뮤니티 리소스를 활용하는 애플리케이션.

YOLOv9을 선택해야 하는 경우#

다음과 같은 경우 YOLOv9을 권장합니다:

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

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

대부분의 신규 프로젝트에는 성능과 개발자 경험을 가장 잘 조합한 Ultralytics YOLO26을 권장합니다.

  • NMS가 필요 없는 엣지 배포: 비최대 억제 후처리의 복잡성 없이 일관된 저지연 추론이 필요한 애플리케이션입니다.
  • CPU 전용 환경: 전용 GPU 가속 기능이 없는 디바이스에서 YOLO26의 최대 43% 빠른 CPU 추론은 결정적인 이점을 제공합니다.
  • 작은 객체 탐지: 항공 드론 이미지나 IoT 센서 분석과 같이 작은 객체의 정확도를 ProgLoss와 STAL이 크게 높여 주는 까다로운 시나리오입니다.

다음 진화 단계: YOLO26#

YOLOv8과 YOLOv9은 강력한 모델이지만 AI 환경은 빠르게 변하고 있습니다. 최고 성능을 요구하는 팀을 위해 새로 출시된 YOLO26은 이전 세대의 성과를 바탕으로 개발되었습니다.

YOLO26은 선택적 엔드투엔드 NMS-free 설계(nms=False)를 도입해 복잡한 후처리 병목을 제거하고 배포를 간소화하며 지연 시간을 더욱 예측 가능하게 합니다. 새로운 MuSGD 옵티마이저와 향상된 ProgLoss + STAL 손실 함수에 더해 DFL 제거(간소화된 내보내기와 엣지·저전력 디바이스 호환성 향상을 위해 Distribution Focal Loss 제거)를 적용하여 소형 객체 인식 성능을 높이면서 CPU 추론 속도를 최대 43% 향상합니다. 엣지 컴퓨팅의 한계를 넓히려는 개발자에게는 YOLO26 평가를 적극 권장합니다.

요약하면 YOLOv9은 흥미로운 아키텍처 연구와 뛰어난 최고 정확도를 제공하지만, 안정적인 소프트웨어를 신속히 출시하려는 대부분의 컴퓨터 비전 엔지니어에게 Ultralytics YOLOv8은 여전히 가장 실용적이고 지원이 우수하며 다재다능한 선택입니다.

댓글