콘텐츠로 건너뛰기

YOLOv5 vs PP-YOLOE+: 자세한 기술 비교

적합한 객체 감지 모델을 선택하는 것은 정확도, 속도 및 구현 용이성의 균형을 맞추는 중요한 결정입니다. 이 페이지에서는 다재다능성과 성능으로 유명한 널리 채택된 업계 표준인 Ultralytics YOLOv5와 Baidu의 PaddlePaddle 생태계의 고정밀 모델인 PP-YOLOE+라는 두 가지 주요 모델 간의 심층적인 기술 비교를 제공합니다. 컴퓨터 비전 프로젝트에 대한 정보에 입각한 선택을 할 수 있도록 아키텍처 차이점, 성능 벤치마크 및 이상적인 사용 사례를 살펴보겠습니다.

Ultralytics YOLOv5: 확고한 산업 표준

Ultralytics YOLOv5는 출시 이후 컴퓨터 비전 커뮤니티에서 벤치마크가 되었습니다. 뛰어난 속도와 정확성의 균형으로 찬사를 받으며, 광범위한 실제 애플리케이션에 매우 실용적인 선택입니다. PyTorch에서의 개발과 이를 둘러싼 포괄적인 생태계는 개발자와 연구자 모두에게 가장 선호하는 기술이 되었습니다.

작성자: Glenn Jocher
소속: Ultralytics
날짜: 2020-06-26
GitHub: https://github.com/ultralytics/yolov5
문서: https://docs.ultralytics.com/models/yolov5/

아키텍처 및 주요 기능

YOLOv5의 아키텍처는 효율적인 설계를 입증하는 것으로, 최대한의 유연성과 사용 편의성을 위해 PyTorch로 완전히 구축되었습니다.

  • Backbone: 계산량을 줄이면서 높은 특징 추출 기능을 유지하기 위해 CSP(Cross Stage Partial) 모듈을 통합한 Darknet의 변형인 CSPDarknet53 백본을 사용합니다.
  • Neck: PANet(Path Aggregation Network)은 특징 통합에 사용되며, 다양한 백본 레벨의 특징을 효과적으로 결합하여 다양한 스케일에서 탐지 성능을 향상시킵니다.
  • 헤드: YOLOv5는 앵커 기반 감지 헤드를 사용하며, 이는 미리 정의된 앵커 박스 세트를 기반으로 경계 상자를 예측합니다. 이 접근 방식은 속도에 매우 최적화되어 있습니다.
  • 확장성: 다양한 크기(n, s, m, l, x)로 제공되므로 사용자는 에지 장치용 경량 모델에서 최대 정확도를 위한 대형 모델에 이르기까지 특정 요구 사항에 맞는 모델을 선택할 수 있습니다.

강점과 약점

강점:

  • 탁월한 성능 균형: YOLOv5는 추론 속도와 감지 정확도 간에 환상적인 균형을 제공하므로 많은 실시간 추론 시나리오에 적합합니다.
  • 사용 편의성: 간소화된 사용자 경험, 간단한 PythonCLI 인터페이스, 광범위한 documentation으로 유명합니다.
  • 잘 관리되는 에코시스템: 활발한 개발, 크고 지원적인 커뮤니티, 잦은 업데이트, 노코드 학습을 위한 Ultralytics HUB와 같은 도구를 포함한 통합된 Ultralytics 에코시스템의 이점을 누릴 수 있습니다.
  • 학습 효율성: 효율적인 학습 프로세스, 즉시 사용 가능한 사전 학습된 가중치, 그리고 일반적으로 많은 대안에 비해 더 낮은 메모리 요구 사항을 제공합니다.
  • 다양성: 객체 탐지, 인스턴스 분할이미지 분류를 포함한 여러 작업을 지원합니다.

약점:

  • 매우 정확하지만 최신 모델은 COCO와 같은 벤치마크에서 mAP 점수를 능가할 수 있습니다.
  • 앵커 상자에 대한 의존성은 앵커가 없는 방식에 비해 일반적이지 않은 객체 모양을 가진 데이터 세트에 대해 더 많은 하이퍼파라미터 조정이 필요할 수 있습니다.

사용 사례

YOLOv5의 속도와 다재다능함은 다음과 같은 분야에 이상적입니다.

  • 실시간 객체 추적: 감시, 로봇 공학 및 자율 시스템에 적합하며, 자세한 내용은 인스턴스 분할 및 추적 가이드에 설명되어 있습니다.
  • Edge 장치 배포: 효율적인 모델(YOLOv5n, YOLOv5s)은 Raspberry PiNVIDIA Jetson과 같이 리소스가 제한된 장치에서 효과적으로 실행됩니다.
  • 산업 자동화: 품질 관리, 결함 감지 및 재활용 자동화에 사용됩니다.

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

PP-YOLOE+: PaddlePaddle 생태계에서 높은 정확도 제공

Baidu에서 개발한 PP-YOLOE+는 PaddlePaddle 딥러닝 프레임워크 내에서 구축된 앵커 프리(anchor-free) 단일 단계 객체 감지기입니다. PP-YOLOE 모델을 기반으로 구축되었으며 효율성을 유지하면서 정확도의 경계를 넓히는 것을 목표로 개선 사항을 도입했습니다.

저자: PaddlePaddle Authors
소속: Baidu
날짜: 2022-04-02
Arxiv: https://arxiv.org/abs/2203.16250
GitHub: https://github.com/PaddlePaddle/PaddleDetection/
문서: https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md

아키텍처 및 주요 기능

PP-YOLOE+는 성능을 극대화하기 위해 몇 가지 최신 설계 선택을 통합합니다.

  • Anchor-Free Design: 사전 정의된 앵커 박스의 필요성을 없애 파이프라인을 간소화하고 하이퍼파라미터 튜닝을 줄일 수 있습니다. 용어집에서 앵커 프리(anchor-free) 감지기에 대해 자세히 알아볼 수 있습니다.
  • Backbone: 강력한 특징 표현을 위해 설계된 CSPRepResNet과 같은 효율적인 백본을 활용합니다.
  • Neck: 강력한 특징 융합을 위해 YOLOv5와 유사한 원리의 PAN(Path Aggregation Network)을 사용합니다.
  • 헤드: 분류 및 회귀 작업을 분리하는 분리된 헤드(ET-Head)를 특징으로 하며, 이는 종종 정확도 향상으로 이어집니다.
  • 손실 함수: 분류 점수와 지역화 정확도 간의 정렬을 개선하기 위해 TAL(Task Alignment Learning) 및 VariFocal Loss와 같은 고급 기술을 사용합니다.

강점과 약점

강점:

  • 특히 더 큰 모델 변형의 경우 높은 정확도를 기대할 수 있으며, 이는 종종 리더보드에서 최상위를 차지합니다.
  • 앵커 프리 방식은 경우에 따라 하이퍼파라미터 튜닝을 간소화할 수 있습니다.
  • 특히 TensorRT로 최적화된 경우 효율적인 추론 속도를 제공합니다.
  • PaddlePaddle 생태계 내에서 잘 통합되었습니다.

약점:

  • 주로 PaddlePaddle 프레임워크에 최적화되어 있어 PyTorch를 선호하는 대부분의 개발자에게는 유용성이 제한될 수 있습니다.
  • Ultralytics YOLO 모델을 둘러싼 광범위한 생태계에 비해 커뮤니티와 사용 가능한 리소스가 더 적습니다.
  • 사용 편의성과 배포 단순성이 덜 강조되어 더 많은 상용구 코드와 프레임워크별 지식이 필요한 경우가 많습니다.

사용 사례

PP-YOLOE+는 다음과 같은 용도에 적합합니다.

  • 산업 품질 검사: 높은 정확도는 제조업의 AI에서 미묘한 결함을 감지하는 데 유용합니다.
  • 스마트 리테일: 재고 관리 및 고객 분석과 같은 애플리케이션은 이 기술의 정밀성으로부터 이점을 얻을 수 있습니다.
  • PaddlePaddle 중심 프로젝트: PaddlePaddle 프레임워크에 이미 투자했거나 표준화한 개발자에게 이상적인 선택입니다.

PP-YOLOE+에 대해 자세히 알아보세요.

성능 및 벤치마크: YOLOv5 vs. PP-YOLOE+

성능을 비교할 때 어떤 것을 선택할지는 목표 하드웨어와 주요 목표(속도 대 정확도)에 따라 크게 달라집니다.

  • 정확도 (mAP): PP-YOLOE+ 모델은 일반적으로 유사한 크기의 YOLOv5 모델에 비해 COCO 데이터 세트에서 더 높은 mAPval 점수를 달성합니다. 정확도의 모든 소수점 이하 자릿수가 중요한 애플리케이션의 경우 PP-YOLOE+가 강력한 경쟁자입니다.
  • 추론 속도: Ultralytics YOLOv5는 특히 CPU에서 뛰어난 속도를 보여줍니다. YOLOv5n 모델은 매우 빠르므로 광범위한 하드웨어에서 실시간 애플리케이션에 적합합니다. PP-YOLOE+는 TensorRT를 사용하는 GPU에서 빠르지만 YOLOv5는 특히 에지 장치에서 강력한 와트당 성능 이점을 유지합니다.
  • 효율성 (파라미터 및 FLOPs): YOLOv5 모델은 가볍게 설계되었습니다. 예를 들어 YOLOv5n은 PP-YOLOE+s보다 파라미터와 FLOPs가 훨씬 적어 리소스가 제한된 환경에 배포하기가 더 쉽습니다.
모델 크기
(픽셀)
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
PP-YOLOE+t 640 39.9 - 2.84 4.85 19.15
PP-YOLOE+s 640 43.7 - 2.62 7.93 17.36
PP-YOLOE+m 640 49.8 - 5.56 23.43 49.91
PP-YOLOE+l 640 52.9 - 8.36 52.2 110.07
PP-YOLOE+x 640 54.7 - 14.3 98.42 206.59

학습, 사용성 및 생태계

원시 성능 외에도 개발자 경험은 중요한 요소입니다. Ultralytics YOLOv5가 진정으로 빛을 발하는 곳이 바로 이 부분입니다.

  • YOLOv5: Ultralytics 생태계는 개발자의 생산성을 위해 설계되었습니다. PyTorch 네이티브이므로 가장 인기 있는 딥 러닝 워크플로에 원활하게 통합됩니다. 사용 편의성은 타의 추종을 불허하며, 간단하고 문서화가 잘 된 API를 통해 단 몇 줄의 코드로 학습, 유효성 검사 및 추론이 가능합니다. 잘 관리된 생태계는 지속적인 업데이트, 지원을 위한 거대한 커뮤니티, Weights & BiasesClearML과 같은 도구와의 통합을 통해 막대한 이점을 제공합니다. 또한 학습 효율성은 핵심 초점이며, 모델은 빠르게 학습하고 더 적은 메모리를 필요로 합니다.

  • PP-YOLOE+: 학습이 PaddlePaddle 프레임워크에 국한됩니다. 강력하기는 하지만, 이는 해당 생태계에 익숙하지 않은 개발자에게는 장벽이 됩니다. 문서와 커뮤니티 지원은 훌륭하지만, YOLOv5만큼 광범위하거나 접근성이 좋지는 않습니다. PyTorch 기반 파이프라인에 통합하려면 추가 단계와 잠재적인 변환이 필요하여 MLOps 라이프사이클에 복잡성을 더합니다.

결론: 어떤 모델을 선택해야 할까요?

YOLOv5와 PP-YOLOE+는 모두 훌륭한 모델이지만, 서로 다른 요구 사항을 충족합니다.

Ultralytics YOLOv5는 대다수의 프로젝트에 권장되는 선택입니다. 속도와 정확성의 뛰어난 균형은 비교할 수 없는 개발자 친화적인 생태계와 결합되어 가장 실용적이고 효율적인 옵션입니다. 새로운 아이디어를 프로토타입으로 제작하는 초보자이든 에지 하드웨어에 강력한 시스템을 배포하는 전문가이든 YOLOv5의 사용 편의성, 다재다능성 및 강력한 커뮤니티 지원은 개발 주기를 가속화하고 성공을 보장합니다.

PP-YOLOE+는 절대적으로 가장 높은 mAP를 달성하는 것이 주요 목표이고 개발팀이 이미 PaddlePaddle 프레임워크에 능숙한 시나리오에서 뛰어난 성능을 발휘하는 특수 도구입니다. 특정 생태계 내에서 작업할 의향이 있다면 연구 및 정확성이 중요한 애플리케이션을 위한 강력한 모델입니다.

다른 모델 살펴보기

Ultralytics는 객체 감지에서 가능한 것의 경계를 계속 넓혀가고 있습니다. 훨씬 더 뛰어난 성능과 기능을 원하는 분들을 위해 YOLOv8 및 최첨단 YOLO11과 같은 최신 모델을 살펴보는 것이 좋습니다. 이러한 모델은 YOLOv5의 토대를 기반으로 구축되어 향상된 정확도, 더 많은 지원 작업 및 훨씬 더 뛰어난 효율성을 제공합니다. 기본 비교 페이지에서 더 많은 비교를 확인할 수 있습니다.



📅 1년 전에 생성됨 ✏️ 1개월 전에 업데이트됨

댓글