YOLOv5 YOLOv7: 실시간 객체 탐지기의 진화
적절한 객체 탐지 아키텍처 선택은 정확도, 추론 속도, 배포 용이성 간의 균형을 맞추는 작업입니다. 본 가이드는 Ultralytics YOLOv5 와 YOLOv7라는 컴퓨터 비전 분야에서 영향력 있는 두 모델 간의 상세한 기술적 비교를 제공합니다. 우리는 각 모델의 아키텍처 차이점, 성능 벤치마크, 그리고 이상적인 사용 사례를 분석하여 여러분의 컴퓨터 비전 프로젝트에 대한 정보에 기반한 결정을 내리는 데 도움을 드리고자 합니다.
경영진 요약
두 모델 모두 능력이 있지만, YOLOv5 사용성, 배포 유연성, 커뮤니티 지원 측면에서 여전히 업계 표준으로 자리 잡고 있습니다. 성숙한 생태계와 Ultralytics 플랫폼과의 원활한 통합으로 인해 생산 환경에 탁월한 선택지입니다. YOLOv7는 후속 출시로 GPU 더 높은 정점 정확도를 위한 E-ELAN과 같은 아키텍처 혁신을 도입했으나, Ultralytics 제공하는 광범위한 다중 작업 지원 및 간소화된 툴링은 부족합니다.
2026년에 신규 프로젝트를 시작하는 개발자들에게는 YOLO26을 평가해 볼 것을 강력히 권장합니다. YOLO26을 평가할 것을 강력히 권장합니다. 이 모델은 속도와 정확도 측면에서 기존 두 모델을 모두 능가하며, 원생적인 엔드투엔드(end-to-end) 설계로 NMS.
Ultralytics YOLOv5: 생산 환경의 표준
YOLOv5 YOLOv5는 단순한 성능 지표뿐만 아니라 개발자 경험을 최우선으로 하여 분야에 혁신을 가져왔습니다. 이는 PyTorch에 네이티브로 구현된 YOLO . PyTorch에 네이티브로 구현된 최초의 YOLO 모델로, 방대한 연구자 및 엔지니어 커뮤니티가 접근할 수 있게 했습니다. "훈련하기 쉽고 배포하기 쉬운" 철학은 자율주행 차량부터 산업용 검사까지 다양한 실제 응용 분야에서 필수 솔루션으로 자리매김하게 했습니다.
저자: 작성자: Glenn Jocher
조직:Ultralytics
날짜: 2020-06-26
GitHub:yolov5
Docs:YOLOv5 문서
아키텍처 및 설계
YOLOv5 정보를 보존하면서 연산을 줄이기 위해 포커스 레이어(후에 6x6 컨볼루션으로 대체됨)를 갖춘 CSP-Darknet53 백본을 YOLOv5 . 이 모델은 특징 융합 및 다중 스케일 예측을 위해 경로 집계 네트워크(PANet) 넥을 활용합니다. 주요 아키텍처 특징은 다음과 같습니다:
- 모자이크 데이터 증강: 네 장의 이미지를 하나로 결합하는 훈련 기법으로, 모델의 detect 객체 detect 능력을 향상시키고 대규모 미니배치에 대한 필요성을 줄여줍니다.
- 자동 학습 경계 상자 앵커: 모델은 훈련 과정에서 사용자 지정 데이터 세트의 특정 기하 구조에 맞춰 앵커 상자를 자동으로 조정합니다.
- SiLU 활성화: 더 부드러운 기울기 전파를 위한 시그모이드 선형 유닛(SiLU) 활성화 함수의 사용.
주요 강점
- 사용 편의성: 간소화된 API와 탄탄한 문서 덕분에 개발자는 단 몇 줄의 코드로 맞춤형 모델을 학습시킬 수 있습니다.
- 배포 유연성: 내장된 내보내기 지원 기능으로 ONNX, TensorRT, CoreML, TFLite 및 OpenVINO 내장형 내보내기 지원으로 에지와 클라우드 대상 전반에 걸쳐 원활한 배포를 OpenVINO .
- 다중 작업 처리 능력: 탐지 기능을 넘어, YOLOv5 인스턴스 분할 및 이미지 분류를 YOLOv5 다양한 비전 작업을 위한 포괄적인 도구 모음을 제공합니다.
YOLOv7: GPU 향상
YOLOv7GPU 속도와 정확도의 한계를 뛰어넘도록 설계되었습니다. 추론 비용을 증가시키지 않으면서 정확도를 높이는 여러 가지 "무료 기능 모음" 전략을 도입하여 고성능 컴퓨팅 시나리오에서 강력한 경쟁자로 자리매김했습니다.
저자: 왕천야오(Chien-Yao Wang), 알렉세이 보치코프스키(Alexey Bochkovskiy), 리아오홍위안(Hong-Yuan Mark Liao)
소속기관: 대만 중앙연구원 정보과학연구원(Institute of Information Science, Academia Sinica, Taiwan)
날짜: 2022-07-06
Arxiv:2207.02696
GitHub:WongKinYiu/yolov7
문서:YOLOv7
아키텍처 및 혁신
YOLOv7 효율적인 아키텍처 설계와 모델 확장에 YOLOv7 . 주요 혁신은 확장 효율적 레이어 집계 네트워크(E-ELAN)로, 가장 짧고 긴 기울기 경로를 제어함으로써 모델이 더 다양한 특징을 학습할 수 있게 합니다.
- 모델 스케일링: YOLOv7 연결 기반 모델의 깊이와 너비를 동시에 수정하는 복합 스케일링 방법을 YOLOv7 다양한 하드웨어 제약 조건에 맞게 아키텍처를 최적화합니다.
- 보조 헤드 거친-세분화: 학습 과정을 안내하는 보조 헤드를 훈련에 활용하며, 이후 추론을 위해 메인 헤드로 재매개변수화되어 배포 시 속도 저하가 발생하지 않도록 보장합니다.
- 계획된 재매개변수화: 아키텍처는 속도와 정확도를 균형 있게 조정하기 위해 재매개변수화된 컨볼루션(RepConv)을 전략적으로 활용하며, 잔차 학습을 파괴하는 동일 연결을 피합니다.
성능 벤치마크 비교
다음 표는 COCO YOLOv7 성능을 비교합니다. YOLOv7 GPU 원시 mAP 측면에서 강점을 YOLOv7 , YOLOv5 특히 CPU 경쟁력 있는 속도를 YOLOv5 소규모 모델의 경우 매개변수 수가 현저히 적습니다.
| 모델 | 크기 (픽셀) | mAPval 50-95 | 속도 CPU ONNX (ms) | 속도 T4 TensorRT10 (ms) | 파라미터 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
결과 분석
- 효율성: YOLOv5n(나노)은 매우 가벼워 메모리 용량이 제한된 에지 디바이스에 최적입니다.
- 정확도: YOLOv7x는 더 높은 mAP (53.1%)를 달성하여, 고급 GPU 작업에 대한 E-ELAN 아키텍처의 이점을 입증합니다.
- 배포: YOLOv5 CPU ONNX 잘 문서화되고 최적화되어 YOLOv5 ,GPU 사용하지 않는GPU 환경에서도 안정적인 성능을 제공합니다.
가장자리를 선택하다
라즈베리 파이(Raspberry Pi)나 휴대폰과 같은 에지 디바이스의 경우, YOLOv5n 또는 YOLOv5s가 더 낮은 메모리 사용량과 검증된 TFLite 호환성 덕분에 종종 더 우수한 선택지입니다.
학습 및 생태계
가장 중요한 차별화 요소 중 하나는 모델을 둘러싼 생태계입니다. Ultralytics YOLO 머신러닝 운영(MLOps) 라이프사이클 전체를 간소화하는 지속적으로 유지 관리되는 플랫폼의 혜택을 누립니다.
Ultralytics 에코시스템의 이점
- 통합 플랫폼: Ultralytics 사용자가 웹 인터페이스를 통해 데이터셋을 관리하고, 훈련 실행을 시각화하며, 모델을 원활하게 배포할 수 있도록 지원합니다.
- 훈련 효율성: YOLOv5 효율적인 데이터 로더와 스마트 캐싱을 YOLOv5 기존 아키텍처 대비 사용자 정의 데이터셋에서의 훈련 시간을 크게 단축합니다.
- 커뮤니티 지원: GitHub과 Discord에서 수천 명의 기여자와 활발한 토론이 이루어지고 있어, Ultralytics 사용하면 특수한 사례에 대한 해결책을 더 빠르게 찾을 수 있습니다.
코드 예시: Ultralytics 사용한 훈련
Ultralytics 사용한 YOLO 훈련은 버전 간에 표준화 Ultralytics . 모델 이름을 변경하기만 하면 YOLOv5, YOLO11 및 권장되는 YOLO26 간에 전환할 수 있습니다.
from ultralytics import YOLO
# Load a pre-trained YOLOv5 model
model = YOLO("yolov5s.pt")
# Train the model on a custom dataset
# The API handles data downloading and configuration automatically
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on a new image
predictions = model("path/to/image.jpg")
미래: 왜 YOLO26으로 이동해야 할까?
YOLOv5 YOLOv7 비교하는 YOLOv7 기존 시스템을 이해하는 데 YOLOv7 , 최신 기술은 크게 발전했습니다. 2026년 1월에 출시된 Ultralytics 객체 탐지 분야의 패러다임 전환을 의미합니다.
- 기본적으로 엔드투엔드: YOLOv5 YOLOv7 달리, YOLO26은 기본적으로NMS(Non-Maximum Suppression) 후처리가 NMS 않습니다. 이는 배포 파이프라인을 단순화하고 지연 시간 변동성을 줄여줍니다.
- MuSGD 최적화기: 대규모 언어 모델(LLM) 훈련에서 도출된 혁신 기술을 활용하여, MuSGD 최적화기는 다양한 데이터셋 전반에 걸쳐 보다 안정적인 수렴성과 견고한 성능을 보장합니다.
- 향상된 속도: YOLO26은 이전 세대에 비해 최대 43% 빠른 CPU 제공하여 현대적인 엣지 AI 애플리케이션에 최적의 선택입니다.
- 다용도성: 소형 객체 탐지 성능 향상을 위해 OBB(Oriented Bounding Box), 자세 추정, 세분화를 기본 지원하며 ProgLoss 및 STAL과 같은 특수 손실 함수를 적용합니다.
결론
YOLOv5 YOLOv7 모두 컴퓨터 비전 역사에서 그 자리를 YOLOv7 . YOLOv7 는 특정 GPU mAP 극대화하기 위한 강력한 연구자용 도구입니다. 그러나 YOLOv5 은 비교할 수 없는 사용 편의성, 안정성, 그리고 광범위한 배포 지원 덕분에 여전히 많은 이들에게 실용적인 선택으로 남아 있습니다.
미래 지향적인 프로젝트를 위해 명확한 권장 사항이 있습니다: Ultralytics 채택하십시오. 이 모델은 YOLOv5 사용자 친화적인 YOLOv5 속도, 정확도, 단순성 측면에서 두 선행 모델을 모두 뛰어넘는 아키텍처적 YOLOv5 결합합니다.
Ultralytics 허브를 방문하여 이러한 아키텍처를 더 자세히 살펴보고, 다음 프로젝트를 위한 사전 훈련된 가중치를 다운로드하세요.