EfficientDet vs YOLOv7: 기술 비교
정확도, 속도 및 계산 비용의 균형을 맞추는 올바른 객체 감지 모델을 선택하는 것은 매우 중요한 결정입니다. 이 페이지에서는 컴퓨터 비전 분야에서 영향력 있는 두 가지 아키텍처인 EfficientDet과 YOLOv7 간의 자세한 기술 비교를 제공합니다. EfficientDet은 뛰어난 파라미터 효율성과 확장성으로 유명하고, YOLOv7은 실시간 감지 속도와 정확도의 경계를 넓히는 것으로 유명합니다.
핵심적인 아키텍처 차이점, 성능 벤치마크 및 이상적인 사용 사례를 살펴봅니다. 두 모델 모두 강점이 있지만 많은 최신 애플리케이션의 경우 개발자는 보다 포괄적이고 사용자 친화적인 솔루션을 제공하는 Ultralytics YOLOv8 및 YOLO11과 같은 우수한 대안을 찾을 수 있습니다.
EfficientDet: 확장 가능하고 효율적인 아키텍처
Google Brain 팀에서 소개한 EfficientDet은 높은 효율성과 정확성을 위해 설계된 객체 감지 모델 제품군입니다. 주요 혁신은 모델 스케일링에 대한 체계적인 접근 방식과 새로운 특징 융합 네트워크에 있습니다.
- 작성자: Mingxing Tan, Ruoming Pang, Quoc V. Le
- 조직: Google
- 날짜: 2019-11-20
- Arxiv: https://arxiv.org/abs/1911.09070
- GitHub: https://github.com/google/automl/tree/master/efficientdet
아키텍처 및 주요 기능
EfficientDet 아키텍처는 세 가지 주요 구성 요소를 기반으로 구축되었습니다.
- EfficientNet Backbone: 특징 추출을 위해 매우 효율적인 EfficientNet을(를) 백본으로 사용하며, 이는 정확도와 계산 비용의 뛰어난 균형을 위해 최적화되어 있습니다.
- BiFPN (Bi-directional Feature Pyramid Network): 단방향으로 특징을 합산하는 기존 FPN과 달리 BiFPN은 가중치가 적용된 연결을 통해 다중 스케일 특징 융합을 가능하게 하여 더 적은 파라미터로 더 풍부한 특징 표현을 가능하게 합니다.
- Compound Scaling: EfficientDet은 백본, 특징 네트워크 및 예측 헤드의 깊이, 너비 및 해상도를 균일하게 조정하는 Compound Scaling 방법을 도입했습니다. 이를 통해 모델을 소형 EfficientDet-D0에서 대형 D7로 확장하여 다양한 리소스 제약 조건을 충족할 수 있습니다.
강점
- 높은 파라미터 효율성: EfficientDet 모델은 당시 다른 모델에 비해 훨씬 적은 파라미터와 FLOP으로 경쟁력 있는 정확도를 달성합니다.
- 확장성: 복합 스케일링 방식은 모델을 확장하거나 축소할 수 있는 명확한 경로를 제공하므로 에지 장치에서 강력한 클라우드 서버에 이르기까지 다양한 하드웨어에 적응할 수 있습니다.
- CPU에서 강력한 성능: EfficientDet의 더 작은 변형은 CPU에서 성능이 뛰어나 GPU 하드웨어를 사용할 수 없는 애플리케이션에 적합합니다.
약점
- GPU 추론 속도 저하: FLOP 효율성에도 불구하고 EfficientDet은 병렬 처리에 덜 최적화되어 있기 때문에 GPU에서 YOLOv7과 같은 모델보다 느릴 수 있습니다.
- 작업 특정성: EfficientDet은 주로 객체 탐지를 위해 설계되었으며 최신 프레임워크에서 제공하는 기본 멀티태스크 다용도성이 부족합니다.
- 복잡성: BiFPN 및 복합 스케일링 개념은 강력하지만 모델을 이해하고 사용자 정의하는 데 복잡성을 더할 수 있습니다.
YOLOv7: 실시간 감지의 새로운 벤치마크
YOLOv7은 YOLO 시리즈에서 상당한 도약으로 등장하여 실시간 객체 감지기의 새로운 최첨단을 설정했습니다. 추론 속도를 저하시키지 않으면서 정확도를 높이기 위해 몇 가지 아키텍처 및 훈련 최적화를 도입했습니다.
- 저자: Chien-Yao Wang, Alexey Bochkovskiy, Hong-Yuan Mark Liao
- Organization: Institute of Information Science, Academia Sinica, Taiwan
- 날짜: 2022-07-06
- Arxiv: https://arxiv.org/abs/2207.02696
- GitHub: https://github.com/WongKinYiu/yolov7
- 문서: https://docs.ultralytics.com/models/yolov7/
아키텍처 및 주요 기능
YOLOv7의 성능 향상은 다음과 같은 몇 가지 주요 혁신에서 비롯됩니다.
- Extended Efficient Layer Aggregation Network (E-ELAN): 모델의 백본에 사용되는 이 모듈은 기울기 경로를 제어하여 네트워크의 학습 및 효과적인 수렴 능력을 향상시킵니다.
- 모델 재파라미터화: YOLOv7은 추론 중에 여러 모듈을 하나로 병합하여 계산 오버헤드를 줄이고 속도를 높이는 기술인 계획된 재파라미터화 컨볼루션을 사용합니다.
- 학습 가능한 Bag-of-Freebies: 감독을 심화하는 보조 헤드 및 Coarse-to-Fine Lead Guided Training과 같은 고급 학습 기술을 도입하여 최종 추론 비용을 추가하지 않고 정확도를 향상시킵니다.
강점
- 탁월한 속도-정확도 균형: YOLOv7은 매우 높은 정확도를 유지하면서 GPU에서 뛰어난 실시간 추론 속도를 제공하여 다른 많은 모델보다 뛰어난 성능을 보입니다.
- 고급 훈련 최적화: "bag-of-freebies" 접근 방식을 통해 배포된 모델을 더 무겁게 만들지 않고도 더 높은 mAP 점수를 얻을 수 있습니다.
- 검증된 성능: MS COCO와 같은 표준 데이터 세트에서 광범위하게 벤치마크되어 그 성능을 입증했습니다.
약점
- 리소스 집약적 학습: 더 큰 YOLOv7 모델은 계산적으로 부담이 될 수 있으며 학습을 위해 상당한 GPU 메모리가 필요합니다.
- 제한적인 활용성: 공식 저장소에 포즈 추정 및 세분화와 같은 작업에 대한 확장 기능이 포함되어 있지만, 최신 Ultralytics 모델과 같은 통합 멀티태스크 프레임워크는 아닙니다.
- 복잡성: 아키텍처 및 학습 파이프라인이 복잡하므로 모델을 사용자 정의하거나 깊이 이해하려는 개발자에게는 장벽이 될 수 있습니다.
성능 분석: 속도 및 정확도
EfficientDet과 YOLOv7을 비교할 때 주요 차이점은 최적화 목표에 있습니다. EfficientDet은 파라미터 및 FLOP 효율성을 우선시하는 반면, YOLOv7은 주어진 정확도에 대해 GPU 하드웨어에서 추론 속도(FPS)를 최대화하는 데 중점을 둡니다.
모델 | 크기 (픽셀) |
mAPval 50-95 |
속도 CPU ONNX (ms) |
속도 T4 TensorRT (ms) |
파라미터 (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
EfficientDet-d0 | 640 | 34.6 | 10.2 | 3.92 | 3.9 | 2.54 |
EfficientDet-d1 | 640 | 40.5 | 13.5 | 7.31 | 6.6 | 6.1 |
EfficientDet-d2 | 640 | 43.0 | 17.7 | 10.92 | 8.1 | 11.0 |
EfficientDet-d3 | 640 | 47.5 | 28.0 | 19.59 | 12.0 | 24.9 |
EfficientDet-d4 | 640 | 49.7 | 42.8 | 33.55 | 20.7 | 55.2 |
EfficientDet-d5 | 640 | 51.5 | 72.5 | 67.86 | 33.7 | 130.0 |
EfficientDet-d6 | 640 | 52.6 | 92.8 | 89.29 | 51.9 | 226.0 |
EfficientDet-d7 | 640 | 53.7 | 122.0 | 128.07 | 51.9 | 325.0 |
표에서 다음과 같은 몇 가지 결론을 내릴 수 있습니다.
- 정확도: 가장 큰 EfficientDet 모델(d7)은 가장 높은 mAP를 달성하지만, YOLOv7x가 매우 근소한 차이로 뒤따르고 있습니다.
- 효율성: EfficientDet 모델은 특히 더 작은 변형에서 파라미터와 FLOPs 측면에서 매우 가볍습니다. EfficientDet-d0는 리소스가 제한된 환경에서 확실한 승자입니다.
- 속도: YOLOv7 모델은 GPU(TensorRT)에서 훨씬 빠릅니다. 예를 들어 YOLOv7l은 6.84ms에서 51.4 mAP를 달성하는 반면, 유사한 EfficientDet-d5는 51.5 mAP를 달성하지만 훨씬 더 긴 67.86ms가 걸립니다. 따라서 YOLOv7은 높은 처리량이 필요한 실시간 애플리케이션에 훨씬 더 적합합니다.
Ultralytics YOLO 모델을 선택해야 하는 이유
YOLOv7은 뛰어난 성능을 제공하지만, YOLOv8 및 YOLO11과 같은 최신 Ultralytics YOLO 모델은 다음과 같은 중요한 이점을 제공합니다.
- 사용 편의성: Ultralytics 모델은 간소화된 Python API, 광범위한 documentation 및 간단한 CLI commands와 함께 제공되어 학습, 검증 및 배포를 간소화합니다.
- 잘 관리되는 에코시스템: 활발한 개발, 강력한 오픈 소스 커뮤니티, 잦은 업데이트 및 원활한 MLOps를 위한 Ultralytics HUB와 같은 도구와의 통합을 통해 이점을 누리십시오.
- 성능 균형: Ultralytics 모델은 속도와 정확성 사이에서 뛰어난 균형을 달성하여 에지 장치에서 클라우드 서버에 이르기까지 다양한 실제 시나리오에 적합합니다.
- 메모리 효율성: Ultralytics YOLO 모델은 학습 및 추론 중에 효율적인 메모리 사용을 위해 설계되었으며, 트랜스포머 기반 모델 또는 EfficientDet 또는 YOLOv7의 일부 변형보다 적은 CUDA 메모리를 필요로 하는 경우가 많습니다.
- 다재다능함: YOLOv8 및 YOLO11과 같은 모델은 객체 탐지를 넘어 분할, 분류, 자세 추정 및 방향이 지정된 객체 탐지(OBB)를 포함한 다양한 작업을 지원하여 통합 솔루션을 제공합니다.
- 학습 효율성: 효율적인 학습 프로세스, COCO와 같은 데이터 세트에서 즉시 사용 가능한 사전 학습된 가중치, 더 빠른 수렴 시간을 통해 이점을 얻으십시오.
결론
EfficientDet은 파라미터 및 FLOP 효율성이 가장 중요한 시나리오에서 탁월하며, 다양한 리소스 예산에 걸쳐 확장성을 제공합니다. YOLOv7은 고급 학습 기술을 활용하여 특히 GPU 하드웨어에서 뛰어난 속도와 정확도를 제공하여 실시간 객체 감지의 경계를 넓힙니다.
그러나 강력한 성능, 훌륭한 문서 및 여러 비전 작업을 지원하는 포괄적인 생태계를 갖춘 현대적이고 다재다능하며 사용자 친화적인 프레임워크를 찾는 개발자에게는 YOLOv8 및 YOLO11과 같은 Ultralytics 모델이 연구에서 프로덕션 배포에 이르기까지 광범위한 애플리케이션에 대해 더 매력적인 선택으로 자주 제시됩니다.
기타 모델 비교
자세한 탐색을 위해 EfficientDet, YOLOv7 및 기타 관련 모델과 관련된 다음 비교를 고려하십시오.
- EfficientDet 대 YOLOv8
- EfficientDet 대 YOLOv5
- YOLOv7 vs YOLOv8
- YOLOv7 vs YOLOv5
- RT-DETR vs YOLOv7
- YOLOX vs YOLOv7
- YOLOv10 및 YOLO11과 같은 최신 모델을 살펴보세요.