콘텐츠로 건너뛰기

YOLOv5 vs. EfficientDet: 상세 기술 비교

진화하는 컴퓨터 비전 환경에서 올바른 객체 감지 아키텍처를 선택하는 것은 프로젝트 성공의 핵심입니다. 이 비교에서는 영향력이 큰 두 가지 모델을 살펴봅니다: Ultralytics YOLOv5와 확장성과 매개변수 효율성으로 유명한 Google EfficientDet을 비교합니다. 개발자는 아키텍처, 성능 메트릭 및 배포 기능을 검토하여 특정 애플리케이션 요구 사항에 적합한 정보에 입각한 결정을 내릴 수 있습니다.

성능 분석: 속도 대 효율성

이 두 아키텍처의 주요 차이점은 계산 리소스와 추론 지연 시간에 관한 설계 철학에 있습니다. EfficientDet은 이론적 FLOP(부동 소수점 연산)에 최적화되어 있어 학술적 벤치마킹에 유리합니다. 반대로 YOLOv5 실제 하드웨어, 특히 GPU에서 짧은 지연 시간을 우선시하여 프로덕션 환경에 필수적인 실시간 추론 속도를 제공합니다.

아래 표는 COCO val2017 데이터 세트에 대한 이러한 절충안을 보여줍니다. EfficientDet 모델은 높은 mAP 를 달성하는 반면, YOLOv5 NVIDIA T4 GPU에서 더 적은 수의 매개변수를 사용하여 훨씬 빠른 추론 시간을 보여줍니다. TensorRT.

모델크기
(픽셀)
mAPval
50-95
속도
CPU ONNX
(ms)
속도
T4 TensorRT10
(ms)
파라미터
(M)
FLOPs
(B)
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
EfficientDet-d064034.610.23.923.92.54
EfficientDet-d164040.513.57.316.66.1
EfficientDet-d264043.017.710.928.111.0
EfficientDet-d364047.528.019.5912.024.9
EfficientDet-d464049.742.833.5520.755.2
EfficientDet-d564051.572.567.8633.7130.0
EfficientDet-d664052.692.889.2951.9226.0
EfficientDet-d764053.7122.0128.0751.9325.0

위에서 살펴본 바와 같이, YOLOv5n은 GPU 1.12ms라는 놀라운 지연 시간을 달성하여 가장 작은 EfficientDet 변형을 크게 앞지릅니다. 자율 주행 차량이나 고속 제조 라인과 같이 밀리초가 중요한 애플리케이션의 경우 이러한 속도 이점이 매우 중요합니다.

아키텍처의 차이점

각 모델의 구조적 설계를 이해하면 성능 특성을 명확히 파악하는 데 도움이 됩니다.

Ultralytics YOLOv5

YOLOv5 PANet 넥과 결합된 CSPDarknet 백본을 사용합니다. 이 아키텍처는 그라데이션 흐름과 특징 추출 효율을 극대화하도록 설계되었습니다.

  • 백본: 크로스 스테이지 부분(CSP) 연결을 활용하여 중복되는 그라데이션 정보를 줄여 학습 기능을 개선하는 동시에 파라미터를 줄입니다.
  • 목: 안정적인 멀티스케일 피처 융합을 위한 경로 집계 네트워크(PANet)를 통해 다양한 크기의 물체 감지를 강화합니다.
  • 헤드: 표준 YOLO 앵커 기반 감지 헤드는 클래스 및 바운딩 박스를 직접 예측합니다.

YOLOv5에 대해 자세히 알아보세요

EfficientDet

EfficientDet은 EfficientNet 백본을 기반으로 구축되었으며 가중치가 적용된 양방향 피처 피라미드 네트워크(BiFPN)를 도입했습니다.

  • 백본: 복합 계수를 사용하여 깊이, 너비 및 해상도를 균일하게 확장하는 EfficientNet을 사용합니다.
  • 목(BiFPN): 하향식 및 상향식 정보 흐름이 모두 가능한 복잡한 기능 통합 계층으로, 다양한 입력 기능에 가중치를 적용하여 그 중요성을 강조합니다.
  • 복합 확장: 백본, BiFPN, 박스/클래스 예측 네트워크가 모두 함께 확장되는 핵심 혁신입니다.

EfficientDet에 대해 자세히 알아보세요.

Ultralytics 이점: 에코시스템 및 사용성

원시 메트릭도 중요하지만, 개발자 경험이 프로젝트의 성공을 좌우하는 경우가 많습니다. Ultralytics YOLOv5 개발 시간을 획기적으로 단축하는 세련된 사용자 중심 환경을 제공하는 데 탁월합니다.

사용 편의성 및 통합

YOLOv5 "즉시 사용 가능한" 사용성으로 유명합니다. 이 모델은 간단한 pip 명령으로 설치할 수 있으며 최소한의 코드만으로 활용할 수 있습니다. 반면, EfficientDet을 구현하려면 TensorFlow 에코시스템이나 특정 리서치 리포지토리 내에서 더 복잡한 설정이 필요한 경우가 많습니다.

간소화된 워크플로

Ultralytics 사용하면 몇 분 만에 데이터 세트에서 학습된 모델로 전환할 수 있습니다. Ultralytics HUB와 같은 도구와의 통합을 통해 광범위한 상용구 코드 없이도 원활한 모델 관리, 시각화 및 배포가 가능합니다.

교육 효율성 및 메모리

Ultralytics 모델은 훈련 효율을 위해 최적화되어 있습니다. 일반적으로 더 높은 확장 계층이나 트랜스포머 기반 모델과 같은 복잡한 아키텍처에 비해 더 빠르게 수렴하고 더 적은 CUDA 메모리를 필요로 합니다. 이렇게 진입 장벽이 낮기 때문에 개발자는 소비자급 하드웨어나 Google Colab과 같은 표준 클라우드 인스턴스에서 최첨단 모델을 훈련할 수 있습니다.

다목적성 및 멀티태스킹

주로 객체 감지기인 표준 EfficientDet 구현과 달리, Ultralytics 프레임워크는 광범위한 작업을 지원합니다. 개발자는 세분화이미지 분류에 동일한 API를 활용할 수 있으므로 다양한 컴퓨터 비전 과제에 대한 통합 솔루션을 제공할 수 있습니다.

이상적인 사용 사례

YOLOv5 EfficientDet 중에서 선택하는 것은 배포 제약 조건과 목표에 따라 크게 달라집니다.

Ultralytics YOLOv5 선택해야 하는 경우

  • 실시간 애플리케이션: 비디오 감시, 로봇 공학 또는 라이브 스포츠 분석과 같이 짧은 지연 시간이 필요한 프로젝트.
  • 엣지 배포: 효율적인 GPU 활용이 핵심인 NVIDIA Jetson 또는 Raspberry Pi와 같은 디바이스에서 실행합니다.
  • 신속한 프로토타이핑: 빠른 반복 주기와 사용 편의성이 우선시되는 경우 가치를 빠르게 입증할 수 있습니다.
  • 프로덕션 시스템: 대규모 오픈 소스 커뮤니티가 지원하는 강력하고 유지 관리가 쉬운 배포를 지원합니다.

EfficientDet을 선택해야 하는 경우

  • 연구 및 벤치마킹: FLOPs 효율성 또는 아키텍처 확장 법칙에 초점을 맞춘 학술 연구.
  • 오프라인 처리: 높은 지연 시간이 허용되는 시나리오로, 정적 이미지의 최종 정확도를 최대한 끌어올리는 것이 목표입니다.
  • 저전력 CPU 추론: 특정 하드웨어 명령어 집합에 맞춰 BiFPN 작업이 고도로 최적화된 매우 특정한 CPU 환경에서 사용할 수 있습니다.

모델 유래 및 세부 정보

이러한 모델의 컨텍스트를 이해하면 디자인 목표에 대한 인사이트를 얻을 수 있습니다.

Ultralytics YOLOv5

EfficientDet

코드 예시: YOLOv5 시작하기

Ultralytics 추론을 매우 간단하게 만들어 줍니다. 아래는 Python API를 사용하여 이미지에서 객체를 detect 유효하고 실행 가능한 예제입니다.

import torch

# Load the YOLOv5s model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s", pretrained=True)

# Define an image URL
img_url = "https://ultralytics.com/images/zidane.jpg"

# Perform inference
results = model(img_url)

# Display results
results.show()

# Print detection data (coordinates, confidence, class)
print(results.pandas().xyxy[0])

이 간단한 스니펫은 모델 다운로드, 이미지 전처리, 포워드 패스 실행, 출력 디코딩을 처리하며, 원시 EfficientDet 구현에서는 훨씬 더 많은 코드가 필요한 작업을 처리합니다.

결론

EfficientDet은 모델 확장 및 매개변수 효율성에 대한 연구에 크게 기여했습니다, Ultralytics YOLOv5 가 실용적인 실제 배포를 위한 탁월한 선택으로 남아 있습니다. 속도와 정확성의 탁월한 균형과 잘 관리되는 에코시스템이 결합되어 개발자가 솔루션을 효과적으로 구축, 교육 및 배포할 수 있습니다.

최신 컴퓨터 비전 기술을 활용하고자 하는 사람들을 위해 Ultralytics YOLOv5 넘어 혁신을 거듭해 왔습니다. 다음과 같은 모델 YOLOv8 과 같은 모델과 최첨단 YOLO11 과 같은 모델은 아키텍처를 더욱 개선하여 포즈 추정방향성 물체 감지와 같은 훨씬 더 많은 작업을 지원하면서도 Ultralytics 환경을 정의하는 특유의 사용 편의성을 유지합니다.

다른 모델 살펴보기

필요에 맞는 완벽한 모델을 찾기 위해 더 많은 비교를 해보고 싶다면 다음 리소스를 참조하세요:


댓글