YOLO YOLOv5: 실시간 객체 탐지에 대한 심층 분석
컴퓨터 비전의 진화는 실시간 객체 탐지 분야의 지속적인 혁신으로 특징지어져 왔다. 오늘날 개발자와 연구자들은 비전 파이프라인을 설계할 때 수많은 아키텍처 선택에 직면한다. 이 포괄적인 기술 비교는 YOLO Ultralytics YOLOv5의 미묘한 차이를 살펴보고, 각각의 아키텍처, 훈련 방법론, 성능 지표 및 이상적인 배포 시나리오를 강조합니다.
YOLO 소개
알리바바 그룹이 공개한YOLO 탐지 속도와 정확도의 한계를 뛰어넘기 위한 여러 혁신적인 기술을YOLO .
- 작성자: Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang, Xiuyu Sun
- 조직:조직: 알리바바 그룹
- 날짜: 2022년 11월 23일
- Arxiv:2211.15444v2
- GitHub:YOLO
- 문서:README.md
아키텍처 혁신
YOLO 신경망 구조 탐색(NAS)을 기반으로YOLO . 저자들은 MAE-NAS를 활용하여 지연 시간과 정확도 사이의 균형을 맞추는 백본을 자동으로 설계했습니다. 본 모델은 효율적인 RepGFPN(재매개변수화 일반화 피라미드 특징 네트워크)을 도입하여 서로 다른 스케일 간 특징 융합을 개선합니다. 또한YOLO "ZeroHead" 설계를YOLO 복잡한 다중 분기 예측 헤드를 제거하고, 추론 과정에서 재매개변수화에 크게 의존하는 더 단순하고 효율적인 구조를 채택합니다.
훈련 성능 향상을 위해 본 모델은 레이블 할당에 AlignedOTA를 활용하며, 대규모 "교사" 모델이 소규모 "학생" 모델을 지도하여 정확도를 높이는 고강도 증류 강화 과정을 적용합니다.
Ultralytics YOLOv5 소개
Ultralytics YOLOv5 안정성, 사용 편의성 및 광범위한 배포 생태계로 유명한 세계에서 가장 널리 채택된 비전 아키텍처 중YOLOv5 .
- 작성자: Glenn Jocher
- 조직:Ultralytics
- 날짜: 2020년 6월 26일
- GitHub:yolov5
- 문서:5 문서
생태계 표준
YOLOv5 사용성 측면에서 업계 표준을 YOLOv5 . PyTorch에 내장되어 있으며, 고도로 최적화된 CSPNet 백본과 PANet 넥을 활용하여 강력한 특징 집계를 수행합니다. 후속 모델에서 나타난 앵커 프리(anchor-free) 트렌드보다 앞서 등장했지만, 정교하게 다듬어진 앵커 기반 접근법과 자동 앵커 학습을 결합하여 뛰어난 성능을 즉시 제공합니다.
YOLOv5 진정한 강점은 잘 관리된 생태계에 YOLOv5 . 이는 추적 도구와 원활하게 통합됩니다. Comet 및 Weights & Biases과 같은 추적 도구와 원활하게 통합되며, ONNX, TensorRT, CoreML.
YOLOv5 시작하기
YOLOv5 사용자 정의 데이터셋으로 훈련시키기 매우 YOLOv5 . 간소화된 API는 프로토타입에서 생산 환경으로의 전환 과정을 원활하게 하여, 민첩한 엔지니어링 팀들 사이에서 선호되는 모델입니다.
성능 및 지표 비교
이러한 모델들을 비교할 때 평균 정밀도(mAP), 추론 속도, 매개변수 수의 균형을 살펴보는 것이 중요하다.
| 모델 | 크기 (픽셀) | mAPval 50-95 | 속도 CPU ONNX (ms) | 속도 T4 TensorRT10 (ms) | 파라미터 (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
| 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 |
장단점 분석
YOLO 매개변수 규모 대비 인상적인 mAP YOLO , 특히 증류 훈련 단계에서 큰 이점을 얻습니다. 그러나 이는 훈련 효율성 저하라는 대가를 치릅니다. 다단계 증류 과정은 먼저 무거운 교사 모델을 훈련해야 하므로, 필요한 GPU 시간과 VRAM을 크게 증가시킵니다.
반대로, YOLOv5 뛰어난 메모리 요구 사항을 제공합니다. Ultralytics YOLO 복잡한 증류 파이프라인이나 RT-DETR과 비교하여 훈련 및 추론 과정에서 더 낮은 메모리 사용량으로 유명합니다. 이로 인해 YOLOv5 소비자용 하드웨어나 Google 같은 접근 가능한 클라우드 환경에서도 효율적으로 YOLOv5 .
실생활 적용 사례와 다용도성
적절한 아키텍처 선택은 종종 배포 환경에 따라 달라집니다.
YOLO 강점
YOLO 순수한 객체 탐지YOLO . 학술 연구, 특히 신경망 구조 탐색(Neural Architecture Search)을 연구하는 팀이나 논문에서 상세히 설명된 반복 매개변수화 기법을 재현하려는 팀에게 탁월한 선택입니다. 프로젝트가 증류 훈련 단계를 실행할 충분한 컴퓨팅 자원을 보유하고 있으며 2D 바운딩 박스의 정확도를 극한까지 끌어올리는 데만 집중한다면,YOLO 강력한YOLO .
Ultralytics 이점
실제 생산 환경에서는 Ultralytics 사용 편의성과 다용도성 덕분에 선호되는 선택지가 됩니다. YOLOv5 탐지 및 이미지 분류의 핵심 도구로 YOLOv5 있지만, 더 광범위한 Ultralytics 개발자는 작업 간 전환을 손쉽게 수행할 수 있습니다.
예를 들어, Ultralytics 최신 버전은 인스턴스 세그멘테이션, 자세 추정, 방향성 바운딩 박스(OBB) 탐지를 기본적으로 지원합니다. 이러한 다중 작업 기능 덕분에 팀은 자동 번호판 인식과 차량 세그멘테이션을 결합하는 등 복잡한 파이프라인을 위해 단일 통합 Python 활용할 수 있습니다.
사용 사례 및 권장 사항
YOLO YOLOv5 사이의 선택은 특정 프로젝트 요구사항, 배포 제약 조건 및 생태계 선호도에 따라 YOLOv5 .
YOLO 선택해야 할 때
YOLO 다음과 같은 경우에 탁월한YOLO :
- 고처리량 비디오 분석: 고정된 NVIDIA GPU 높은 FPS의 비디오 스트림을 처리하며, 배치 1 처리량이 주요 지표입니다.
- 산업용 제조 라인: 전용 하드웨어에서 엄격한 GPU 제약이 적용되는 시나리오, 예를 들어 조립 라인에서의 실시간 품질 검사.
- 신경망 구조 탐색 연구: 자동화된 구조 탐색(MAE-NAS)과 효율적인 재매개변수화 백본이 탐지 성능에 미치는 영향 연구.
5 선택해야 할 때
YOLOv5 다음에 권장YOLOv5 :
- 검증된 생산 시스템: YOLOv5 오랜 안정성 track , 방대한 문서화, 그리고 대규모 커뮤니티 지원이 가치 있게 여겨지는 기존 배포 환경.
- 자원 제약 훈련: GPU 제한된 환경에서 YOLOv5 효율적인 훈련 파이프라인과 낮은 메모리 요구사항이 유리합니다.
- 다양한 내보내기 형식 지원: ONNX, TensorRT, CoreML, 그리고 TFLite.
Ultralytics YOLO26)를 선택해야 할 때
대부분의 신규 프로젝트에 대해 Ultralytics 성능과 개발자 경험의 최적 조합을 제공합니다:
- NMS 에지 배포: 복잡한 비최대 억제(NMS) 후처리 없이도 일관되고 낮은 지연 시간의 추론이 필요한 애플리케이션.
- CPU 전용 환경: 전용 GPU 없는 장치에서, YOLO26의 최대 43% 빠른 CPU 성능이 결정적인 이점을 제공합니다.
- 소형 물체 탐지: 항공 드론 영상이나 IoT 센서 분석과 같은 까다로운 시나리오에서 ProgLoss와 STAL이 미세한 물체의 정확도를 크게 향상시킵니다.
미래: YOLO26으로의 전환
YOLOv5 YOLO 흥미로운 학술적 통찰을YOLO , 최첨단 기술은 진화해 왔습니다. 2026년 1월 출시된 Ultralytics 비전 커뮤니티에 있어 거대한 도약을 의미합니다.
YOLO26은 에지 배포 및 훈련 불안정성의 전통적인 병목 현상을 해결합니다:
- 엔드투엔드 NMS 설계: YOLO26은 비최대 억제(NMS) 후처리 단계를 기본적으로 제거합니다. 이 혁신적인 기술은 배포 로직을 단순화하고 지연 시간 변동성을 획기적으로 줄여, 고속 로봇 공학 및 자율 시스템에 이상적입니다.
- MuSGD 최적화기: 대규모 언어 모델(LLM) 훈련 혁신(예: Moonshot AI의 Kimi K2)에서 영감을 받아, YOLO26은 MuSGD 최적화기( SGD 뮤온의 하이브리드)를 활용합니다. 이는 매우 안정적인 훈련 실행과 현저히 빠른 수렴을 보장합니다.
- 최대 43% 빠른 CPU : 전략적으로 분포 초점 손실(DFL)을 제거함으로써, YOLO26은 이전 모델(예: YOLO11 및 YOLOv8보다 훨씬 뛰어난 속도를 달성합니다.
- ProgLoss + STAL: 이러한 고급 손실 함수는 소형 물체 인식에서 현저한 개선을 가져오며, 이는 항공 드론 영상 및 IoT 센서 피드 분석에 매우 중요합니다.
코드 예시: 행동하는 단순성
Ultralytics 사용하면 몇 줄의 코드만으로 모델을 훈련하고 배포할 수 있습니다. YOLOv5 권장되는 YOLO26으로 YOLOv5 , 인터페이스는 일관되고 직관적으로 유지됩니다.
from ultralytics import YOLO
# Load the state-of-the-art YOLO26 small model
model = YOLO("yolo26s.pt")
# Train on a custom dataset effortlessly
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run inference on an image and display results
predictions = model("https://ultralytics.com/images/bus.jpg")
predictions[0].show()
# Export the model for edge deployment
model.export(format="onnx")
결론
YOLO YOLOv5 모두 컴퓨터 비전 분야에 크게 YOLOv5 .YOLO 신경망 구조 탐색(Neural Architecture Search)과 신경망 증류(distillation)의 힘을YOLO 연구자들에게 흥미로운 연구 대상이 되고 있습니다. 그러나 YOLOv5 는 성능 균형, 낮은 메모리 요구 사항, 그리고 타의 추종을 불허하는 사용 편의성 덕분에 여전히 실용적인 강자로 자리매김하고 있습니다.
오늘날 새로운 프로젝트를 시작하는 개발자들에게는 Ultralytics 활용하고 YOLOv6를 채택할 것을 권장합니다. 이는 YOLOv5 사랑받는 사용자 친화적 YOLOv5 획기적인 아키텍처 발전을 YOLOv5 클라우드 및 엣지 AI 애플리케이션 모두에 최상위 정확도와 초고속 추론을 보장합니다. 개발자들은 또한 다음과 같은 다른 효율적인 모델들을 탐구해 볼 수 있습니다. YOLOv6 나 YOLOX 같은 다른 효율적인 모델도 살펴볼 수 있습니다.