YOLOv5 vs. EfficientDet : Une Comparaison Technique Détaillée
Cette page fournit une comparaison technique complète entre deux modèles influents de détection d'objets : Ultralytics YOLOv5 et EfficientDet de Google. Bien que les deux modèles soient conçus pour des performances élevées, ils proviennent de différentes philosophies de recherche et de conceptions architecturales. Nous allons approfondir leurs principales différences en termes d'architecture, de mesures de performance et de cas d'utilisation idéaux afin de vous aider à choisir le meilleur modèle pour vos projets de vision par ordinateur.
Ultralytics YOLOv5 : le modèle polyvalent et largement adopté
Auteur : Glenn Jocher
Organisation : Ultralytics
Date : 2020-06-26
GitHub : https://github.com/ultralytics/yolov5
Docs : https://docs.ultralytics.com/models/yolov5/
Ultralytics YOLOv5 est un détecteur d’objets à un étage qui est rapidement devenu une norme de l’industrie en raison de son équilibre exceptionnel entre vitesse, précision et facilité d’utilisation. Entièrement construit en PyTorch, son architecture comprend une dorsale CSPDarknet53, un neck PANet pour une agrégation efficace des caractéristiques et une tête de détection efficace basée sur l’ancrage. YOLOv5 est très évolutif, offrant une gamme de modèles allant du nano (n) à l’extra-large (x), permettant aux développeurs de sélectionner le compromis parfait pour leurs besoins spécifiques en matière de calcul et de performance.
Points forts
- Vitesse exceptionnelle : YOLOv5 est hautement optimisé pour une inférence rapide, ce qui en fait un choix incontournable pour les applications en temps réel où une faible latence est essentielle, comme dans la vidéosurveillance.
- Facilité d’utilisation : Un avantage majeur est son expérience utilisateur simplifiée. Avec une API Python simple et une CLI, une documentation complète et des flux de travail de formation simples, YOLOv5 abaisse considérablement la barrière à l’entrée pour la détection d’objets personnalisée.
- Écosystème bien maintenu : YOLOv5 est pris en charge par l'écosystème robuste d'Ultralytics, qui comprend un développement actif, une communauté large et utile, des mises à jour fréquentes et des outils puissants tels que Ultralytics HUB pour l'entraînement et la gestion de modèles sans code.
- Efficacité de l'entraînement : Le modèle est conçu pour un entraînement efficace, bénéficiant de poids pré-entraînés facilement disponibles sur des ensembles de données comme COCO et de temps de convergence plus rapides. Il a également des besoins en mémoire inférieurs pendant l'entraînement et l'inférence par rapport aux architectures plus complexes comme les Transformers.
- Polyvalence : Au-delà de la détection d’objets, YOLOv5 prend en charge des tâches telles que la segmentation d’instance et la classification d’images, offrant une solution flexible au sein d’un framework unique.
Faiblesses
- Bien que très précis, les modèles EfficientDet plus grands peuvent parfois atteindre des scores mAP plus élevés sur les benchmarks académiques, en particulier lors de la détection de très petits objets.
- Sa dépendance à des boîtes d’ancrage prédéfinies peut nécessiter un réglage pour les ensembles de données avec des formes et des tailles d’objets non conventionnelles afin d’obtenir des performances optimales.
Cas d'utilisation idéaux
- Analyse vidéo en temps réel pour les systèmes de sécurité et la surveillance du trafic.
- Déploiement sur des appareils périphériques aux ressources limitées tels que NVIDIA Jetson et Raspberry Pi.
- Perception à faible latence pour la robotique et les véhicules autonomes.
- Applications mobiles nécessitant une inférence rapide sur l'appareil.
EfficientDet : Architecture évolutive et efficace
Auteurs : Mingxing Tan, Ruoming Pang et Quoc V. Le
Organisation : Google
Date : 2019-11-20
Arxiv : https://arxiv.org/abs/1911.09070
GitHub : https://github.com/google/automl/tree/master/efficientdet
Docs : https://github.com/google/automl/tree/master/efficientdet#readme
EfficientDet, développé par l'équipe Google Brain, a introduit une famille de détecteurs d'objets évolutifs et efficaces. Ses principales innovations comprennent l'utilisation du EfficientNet à haute efficacité comme backbone, un nouveau réseau de pyramide de caractéristiques bidirectionnel (BiFPN) pour une fusion rapide des caractéristiques multi-échelles, et une méthode de mise à l'échelle composite. Cette méthode met à l'échelle uniformément la profondeur, la largeur et la résolution du modèle, ce qui lui permet de créer une gamme de modèles (D0-D7) optimisés pour différents budgets de calcul.
Points forts
- Haute précision et efficacité : Les modèles EfficientDet sont connus pour atteindre une précision de pointe avec moins de paramètres et de FLOPs par rapport aux autres modèles au moment de leur sortie.
- Scalabilité : L'approche de mise à l'échelle composite offre une voie claire pour augmenter ou réduire la taille du modèle, le rendant adaptable à diverses contraintes matérielles, des appareils mobiles aux serveurs cloud.
- Fusion efficace de caractéristiques : Le BiFPN permet une fusion de caractéristiques plus riche en incorporant des connexions bidirectionnelles pondérées, ce qui contribue à sa grande précision.
Faiblesses
- Vitesse d'inférence plus lente : Malgré son efficacité en termes de paramètres, EfficientDet est généralement plus lent que YOLOv5, en particulier dans les scénarios de déploiement réels. Cela le rend moins adapté aux applications nécessitant des performances en temps réel.
- Complexité : L’architecture, en particulier la BiFPN, est plus complexe que la conception simple de YOLOv5. Cela peut rendre plus difficile pour les développeurs de comprendre, de personnaliser et de déboguer.
- Écosystème moins intégré : Bien qu’il soit soutenu par Google, le référentiel à code source ouvert n’est pas aussi activement maintenu ou convivial que l’écosystème Ultralytics. Il n’a pas la documentation exhaustive, les tutoriels et les outils intégrés qui simplifient le cycle de vie MLOps.
Cas d'utilisation idéaux
- Analyse hors ligne d'images haute résolution où une précision maximale est primordiale.
- Analyse d'images médicales pour la détection d'anomalies subtiles.
- Contrôle de la qualité de haute précision dans le secteur de la fabrication, où l’inférence peut être effectuée par lots.
- Recherche académique et benchmarking où la précision est la principale mesure.
En savoir plus sur EfficientDet
Performances et analyses comparatives : un examen comparatif
Le choix entre YOLOv5 et EfficientDet se résume souvent au compromis entre vitesse et précision. Le tableau et l'analyse suivants fournissent une comparaison claire de leurs performances sur le jeu de données COCO val2017.
Modèle | Taille (pixels) |
mAPval 50-95 |
Vitesse CPU ONNX (ms) |
Vitesse T4 TensorRT10 (ms) |
paramètres (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 |
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 |
Le tableau illustre clairement les différentes priorités de conception des deux modèles. Les modèles EfficientDet, en particulier les variantes plus grandes comme D7, atteignent le score mAP le plus élevé de 53,7. Ils font également preuve d'une grande efficacité en termes de coût de calcul, EfficientDet-d0 ayant le FLOPs le plus bas. Cependant, en ce qui concerne le déploiement pour les applications en temps réel, la vitesse d'inférence est primordiale. Ici, Ultralytics YOLOv5 montre un avantage décisif, en particulier sur le matériel GPU. Le modèle YOLOv5n atteint un temps d'inférence fulgurant de 1,12 ms sur un GPU T4 avec TensorRT, ce qui le rend plus de 3 fois plus rapide que le modèle EfficientDet le plus léger. De plus, les modèles YOLOv5 sont extrêmement légers, YOLOv5n n'ayant que 2,6 M de paramètres, ce qui le rend idéal pour le déploiement sur des périphériques edge aux ressources limitées. Cet équilibre de performances entre vitesse, précision et petite taille de modèle fait de YOLOv5 un choix très pratique pour un large éventail d'environnements de production.
Conclusion : Quel modèle devriez-vous choisir ?
EfficientDet et Ultralytics YOLOv5 sont tous deux des modèles de détection d'objets puissants, mais ils répondent à des priorités différentes. EfficientDet excelle lorsque la précision maximale est l'objectif principal et que la latence d'inférence est moins préoccupante. Son architecture évolutive en fait un candidat idéal pour les benchmarks académiques et les tâches de traitement hors ligne.
Cependant, pour la grande majorité des applications du monde réel, Ultralytics YOLOv5 se distingue comme le choix supérieur. Son équilibre exceptionnel entre vitesse et précision le rend idéal pour les systèmes en temps réel. Les principaux avantages de YOLOv5 résident dans sa facilité d'utilisation, son écosystème complet et bien entretenu et son efficacité de formation remarquable. Les développeurs peuvent démarrer rapidement, former des modèles personnalisés avec un minimum d'effort et les déployer sur une large gamme de matériel. La communauté active et les outils tels que Ultralytics HUB offrent un soutien inégalé, ce qui en fait un cadre très pratique et convivial pour les développeurs.
Pour ceux qui cherchent à tirer parti des dernières avancées, il est également intéressant d'explorer les nouveaux modèles de l'écosystème Ultralytics, tels que le très polyvalent YOLOv8 ou le YOLO11 à la pointe de la technologie, qui s'appuient sur les bases solides de YOLOv5 pour offrir des performances encore meilleures et plus de fonctionnalités. Pour plus de comparaisons, consultez la page de comparaison des modèles d'Ultralytics.