YOLOv7 대 YOLOv5: 실시간 탐지기에 대한 기술적 비교

최신 컴퓨터 비전 파이프라인을 구축할 때, 정확도, 추론 속도 및 자원 활용의 균형을 맞추기 위해 올바른 객체 탐지 아키텍처를 선택하는 것은 매우 중요합니다. 이 종합 비교에서는 컴퓨터 비전 분야에서 매우 영향력 있는 두 모델인 YOLOv7과 Ultralytics YOLOv5를 살펴봅니다.

아키텍처 차이, 성능 지표 및 이상적인 배포 시나리오를 분석함으로써 개발자와 연구자가 자신의 특정 요구 사항에 가장 적합한 모델을 선택할 수 있도록 돕고자 합니다.

모델 배경 및 기원

이 모델들의 기원을 이해하면 설계 철학 및 대상 사용 사례를 파악하는 데 도움이 됩니다.

YOLOv5

2020년 6월 26일 Ultralytics의 Glenn Jocher와 팀이 발표한 YOLOv5는 성능을 희생하지 않으면서도 사용 편의성을 우선시하는 고유한 PyTorch 구현을 제공함으로써 해당 분야에 혁명을 일으켰습니다. 매우 간소화된 생태계와 신뢰할 수 있는 학습 역학으로 인해 업계 표준이 되었습니다. YOLOv5 GitHub 저장소에서 소스 코드를 탐색하거나 Ultralytics 플랫폼을 통해 모델에 직접 액세스할 수 있습니다.

YOLOv5에 대해 더 알아보기

YOLOv7

2022년 7월 6일 대만 중앙연구원 정보과학연구소의 Chien-Yao Wang, Alexey Bochkovskiy, Hong-Yuan Mark Liao가 소개했습니다. YOLOv7은 정확도 면에서 최첨단 기술을 구현하기 위해 E-ELAN(Extended Efficient Layer Aggregation Networks)과 학습 가능한 "bag-of-freebies"와 같은 아키텍처 혁신에 크게 중점을 두었습니다. 자세한 내용은 공식 Arxiv 논문YOLOv7 GitHub 저장소에서 확인할 수 있습니다. 원활한 통합을 위해 Ultralytics YOLOv7 문서를 확인하십시오.

YOLOv7에 대해 자세히 알아보기

원활한 실험

두 모델 모두 Ultralytics Python 패키지에 완전히 통합되어 있어 코드에서 모델 문자열을 변경하는 것만으로 간단하게 모델을 전환할 수 있습니다!

아키텍처 혁신

Ultralytics YOLOv5 설계

YOLOv5는 수정된 CSPDarknet53 백본과 PANet(Path Aggregation Network) 넥을 결합하여 사용합니다. 이 설계는 빠른 특징 추출과 메모리 효율성에 최적화되어 있습니다. 기존의 구형 아키텍처나 무거운 Transformer 모델과 달리, YOLOv5는 학습 중에 훨씬 적은 CUDA 메모리를 필요로 하므로 일반 소비자용 GPU에서 더 큰 배치 크기를 사용할 수 있습니다. 또한 Ultralytics 프레임워크는 표준 경계 상자를 넘어 이미지 분할이미지 분류를 포함한 다양한 작업을 기본적으로 지원합니다.

YOLOv7 설계

YOLOv7은 몇 가지 구조적 재매개변수화와 E-ELAN 아키텍처를 도입하여 네트워크가 원래의 기울기 경로를 훼손하지 않고 더 다양한 특징을 학습할 수 있게 했습니다. 또한 학습 중 중간 감독을 위해 보조 헤드를 구현했습니다. 이러한 발전은 높은 평균 정밀도(mAP)를 제공하지만, 종종 복잡한 텐서 구조를 도입하여 ONNXTensorRT와 같은 엣지 형식으로 내보내는 작업이 Ultralytics 모델의 간소화된 내보내기에 비해 다소 어려울 수 있습니다.

성능 분석

이 모델들을 비교할 때 개발자는 mAPval, 추론 속도 및 계산 복잡도(FLOPs) 사이의 균형을 맞춰야 합니다. 아래 표는 COCO 데이터셋에서 평가된 두 아키텍처의 성능을 보여줍니다.

모델크기
(픽셀)
mAPval
50-95
속도
CPU ONNX
(ms)
속도
T4 TensorRT10
(ms)
파라미터
(M)
FLOPs
(B)
YOLOv7l64051.4-6.8436.9104.7
YOLOv7x64053.1-11.5771.3189.9
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

핵심 요약

  • 정확도 한계: YOLOv7x는 53.1 mAPval라는 인상적인 수치로 전반적으로 가장 높은 정확도를 달성하여 탐지 성능 극대화가 주된 목표인 시나리오에서 매우 경쟁력이 있습니다.
  • 속도 및 효율성: Ultralytics YOLOv5n은 효율성의 정점으로, 단 2.6M 파라미터라는 작은 메모리 점유율로 매우 빠른 추론 지연 시간(T4 TensorRT 기준 1.12ms)을 제공합니다. 이는 매우 제한적인 엣지 배포에 독보적인 선택입니다.
  • 성능 균형: YOLOv5 시리즈는 뛰어난 모델 등급을 제공합니다. YOLOv5l은 YOLOv7l보다 정확도 차이는 작지만 매우 성숙한 배포 파이프라인을 제공하는 환상적인 절충안입니다.

Ultralytics 생태계의 이점

모델의 아키텍처는 방정식의 절반일 뿐이며, 이를 둘러싼 생태계가 실제 환경에서의 활용 가능성을 결정합니다. 바로 이 지점에서 Ultralytics 모델이 진정으로 빛을 발합니다.

사용 편의성: Ultralytics는 통합되고 매우 직관적인 Python API를 제공합니다. 방대한 공식 문서를 바탕으로 최소한의 상용구 코드만 사용하여 모델을 학습, 검증 및 배포할 수 있습니다. 잘 관리된 생태계: 활발한 개발을 통해 지속적인 업데이트, 버그 수정 및 Weights & Biases와 같은 현대적인 추적 도구와의 원활한 통합을 보장합니다. 학습 효율성: 최적화된 데이터 로더와 스마트 캐싱을 활용하여 YOLOv5는 학습 시간을 크게 단축합니다. 또한 즉시 사용 가능한 사전 학습된 가중치는 다양한 도메인에서 전이 학습을 가속화합니다.

코드 예시: 간소화된 학습

Ultralytics 패키지를 사용하면 선택한 아키텍처에 관계없이 학습 실행 시작이 사실상 동일합니다.

from ultralytics import YOLO

# Load a pre-trained YOLOv5 model (can easily swap to "yolov7.pt")
model = YOLO("yolov5s.pt")

# Train the model on the COCO8 example dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Export the trained model to ONNX format for deployment
success = model.export(format="onnx")

이상적인 활용 사례

YOLOv7을 선택해야 하는 경우

  • 학술 벤치마킹: 잘 문서화된 2022년 기준 모델과 새로운 기술을 비교해야 하는 연구자에게 적합합니다.
  • 고성능 GPU 클라우드 처리: 복잡한 장면에서 절대적으로 가장 높은 mAP를 달성하는 것이 내보내기 단순성보다 중요한 강력한 서버 하드웨어에 배포할 때 사용합니다.

YOLOv5를 선택해야 할 때

  • 프로덕션 배포: 높은 안정성, 직관적인 모델 배포 옵션 및 광범위한 플랫폼 간 호환성이 필요한 상용 애플리케이션에 이상적입니다.
  • 엣지 디바이스: 소형 변형 모델(YOLOv5n 및 YOLOv5s)은 휴대폰 및 임베디드 시스템에서 매우 잘 작동합니다.
  • 멀티 태스크 요구 사항: 프로젝트가 통합 프레임워크를 사용하여 단순 탐지에서 포즈 추정 또는 분할로 발전해야 하는 경우에 적합합니다.
다른 아키텍처 탐색

더 최신 버전을 찾고 계신가요? 앵커 프리 탐지 및 멀티 태스크 학습 기능의 추가 발전을 위해 Ultralytics YOLOv8 또는 Ultralytics YOLO11을 탐색해 보십시오.

차세대 모델: Ultralytics YOLO26

YOLOv5와 YOLOv7이 비전 AI의 역사에서 중요한 위치를 차지하고 있지만, 환경은 끊임없이 진화하고 있습니다. 2026년 1월에 출시된 Ultralytics YOLO26은 객체 탐지 기술의 절대적인 최첨단을 대표하며, 모든 지표에서 이전 세대를 능가합니다.

YOLO26에 대해 더 알아보기

YOLO26은 몇 가지 패러다임을 바꾸는 기능을 도입했습니다:

  • 종단 간 NMS-Free 설계: 이전 버전에서 개척된 개념을 바탕으로, YOLO26은 기본적으로 종단 간(end-to-end) 모델입니다. 이는 NMS(Non-Maximum Suppression) 후처리를 완전히 제거하여 지연 시간 병목 현상을 줄이고 배포 로직을 획기적으로 단순화합니다.
  • MuSGD 옵티마이저: Moonshot AI의 Kimi K2에서 영감을 받은 이 혁신적인 옵티마이저는 표준 SGD의 안정성과 Muon의 가속화된 모멘텀을 결합하여, 고급 LLM 학습 혁신을 컴퓨터 비전에 직접 도입합니다.
  • CPU 속도 향상: DFL(Distribution Focal Loss)을 전략적으로 제거함으로써 YOLO26은 CPU 추론 속도를 최대 43% 향상시켰으며, 이는 엣지 및 저전력 IoT 디바이스 배포에 있어 타의 추종을 불허하는 챔피언이 되었습니다.
  • ProgLoss + STAL: 이러한 고급 손실 함수는 항공 이미지 및 정밀 로봇 공학에 필수적인 소형 객체 인식에서 거대한 개선을 이끌어냅니다.
  • 작업별 개선: 마스크 생성을 위한 의미론적 분할 손실, 포즈 추적을 위한 RLE(Residual Log-Likelihood Estimation), 그리고 까다로운 지향성 경계 상자(OBB) 경계 문제를 해결하기 위한 특수 각도 손실을 제공합니다.

결론

YOLOv5와 YOLOv7 모두 실시간 객체 탐지를 위한 강력한 솔루션을 제공합니다. YOLOv7은 고성능 하드웨어에서 원시 정확도를 위한 강력한 선택으로 남아 있고, YOLOv5는 속도, 효율성 및 세계적 수준의 생태계의 뛰어난 균형을 제공하는 궁극적인 개발자 친화적 도구로서 두각을 나타냅니다.

그러나 파이프라인을 미래에도 사용할 수 있게 유지하고 속도, 단순성 및 최첨단 정확도의 궁극적인 조합을 달성하려는 개발자에게는 Ultralytics YOLO26으로 마이그레이션할 것을 강력히 권장합니다. 이는 Ultralytics 플랫폼의 전설적인 사용 편의성을 요약하면서도 획기적인 아키텍처 혁신을 제공합니다.

댓글