Passer au contenu

Ultralytics YOLOv8 EfficientDet : comparaison technique complète

Dans le domaine en pleine évolution de la détection d'objets, le choix de l'architecture optimale du réseau neuronal est essentiel pour trouver le juste équilibre entre précision, vitesse d'inférence et faisabilité du déploiement. Cette analyse technique approfondie compare deux architectures très influentes : Ultralytics YOLOv8, une norme polyvalente dans l'écosystème moderne de la vision par ordinateur, et EfficientDet, un modèle fondamental de Google pour sa stratégie de mise à l'échelle composite.

Que votre déploiement cible des serveurs cloud haute performance ou des périphériques à ressources limitées, comprendre les nuances architecturales de ces modèles vous aidera à mener à bien votre projet.

Aperçu architectural

Les deux modèles abordent le défi consistant à identifier et localiser des objets dans une image à l'aide de réseaux neuronaux convolutifs, mais ils utilisent des méthodologies distinctes pour réaliser l'extraction des caractéristiques et la régression des cadres de sélection.

Ultralytics YOLOv8

Lancé par Ultralytics janvier 2023, YOLOv8 une avancée majeure dans la YOLO . Créé par Glenn Jocher, Ayush Chaurasia et Jing Qiu, il a été entièrement conçu pour prendre en charge de manière transparente plusieurs tâches de vision, notamment la détection d'objets, la segmentation d'instances, l'estimation de poses et la classification d'images.

L'architecture introduit une tête de détection sans ancrage, qui réduit considérablement le nombre de prédictions de boîtes et accélère la suppression non maximale (NMS). Son infrastructure utilise un module C2f novateur (goulot d'étranglement partiel inter-étapes avec deux convolutions) pour améliorer le flux de gradient pendant l'entraînement tout en conservant une empreinte légère. Cela rend YOLOv8 efficace lorsqu'il est compilé dans des formats tels que NVIDIA TensorRT ou ONNX.

En savoir plus sur YOLOv8

EfficientDet

Rédigé par Mingxing Tan, Ruoming Pang et Quoc V. Le chez Google publié fin 2019, EfficientDet met l'accent sur l'efficacité évolutive. Décrit dans leur article officiel Arxiv, le modèle s'appuie largement sur l'écosystème AutoML.

La caractéristique distinctive d'EfficientDet est son réseau pyramidal bidirectionnel (BiFPN), qui permet une fusion facile et rapide des caractéristiques à plusieurs échelles. Combinée à une structure EfficientNet, l'architecture utilise une méthode de mise à l'échelle composite qui adapte uniformément la résolution, la profondeur et la largeur de toutes les structures, réseaux de caractéristiques et réseaux de prédiction de boîtes/classes simultanément. Bien que cela se traduise par une excellente efficacité des paramètres, la topologie complexe du réseau a souvent du mal à atteindre des vitesses optimales en temps réel sur les GPU standard.

En savoir plus sur EfficientDet

Comparaison des performances et des indicateurs

Lorsqu'on compare des détecteurs d'objets, la précision moyenne (mAP) et la latence d'inférence sont les principaux critères d'évaluation. Le tableau ci-dessous illustre la comparaison entre les YOLOv8 et la famille EfficientDet (d0-d7) à l'aide de mesures standard sur des ensembles de données tels que COCO.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv8n64037.380.41.473.28.7
YOLOv8s64044.9128.42.6611.228.6
YOLOv8m64050.2234.75.8625.978.9
YOLOv8l64052.9375.29.0643.7165.2
YOLOv8x64053.9479.114.3768.2257.8
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

Analyse de l'équilibre des performances

Alors qu'EfficientDet atteint une précision remarquable avec moins de FLOP théoriques, Ultralytics YOLOv8 domine en termes de vitesses GPU dans le monde réel. Par exemple, YOLOv8x un mAP légèrement supérieur mAP 53,9) à celui d'EfficientDet-d7 (53,7), mais traite les images beaucoup plus rapidement sur un GPU T4 GPU 14,37 ms contre 128,07 ms), ce qui fait de YOLOv8 choix évident pour l'analyse vidéo en temps réel.

Méthodologies de formation et écosystème

L'expérience développeur est un facteur crucial dans le choix d'une architecture d'apprentissage automatique. C'est là que le soutien de la communauté open source et les outils de l'écosystème font vraiment la différence entre ces modèles.

EfficientDet s'appuie fortement sur TensorFlow et des pipelines AutoML spécialisés. Bien qu'il soit efficace pour la formation distribuée à grande échelle dans le cloud, la configuration de l'environnement, l'ajustement des ancres et l'analyse des fichiers de configuration denses qui se trouvent dans le référentiel GitHub d'EfficientDet peuvent s'avérer décourageants pour les équipes d'ingénieurs qui travaillent à un rythme soutenu.

En revanche, Ultralytics YOLOv8 est nativement développé sur PyTorch, offrant une facilité d'utilisation inégalée. Les développeurs peuvent lancer des boucles d'entraînement complexes à l'aide d'une seule ligne de Python ou CLI . De plus, les exigences en matière de mémoire du modèle pendant l'entraînement sont fortement optimisées ; YOLOv8 aux développeurs disposant de GPU grand public modestes d'entraîner des modèles robustes sans rencontrer d'erreurs de mémoire insuffisante (OOM) qui affectent fréquemment les architectures à forte intensité de transformateurs.

L'intégration transparente avec la Ultralytics va encore plus loin en fournissant une interface sans code pour l'annotation des ensembles de données, l'entraînement des modèles et le déploiement dans le cloud en un seul clic. Des fonctionnalités telles que le réglage automatique des hyperparamètres vous garantissent une précision optimale pour vos ensembles de données personnalisés.

Exemple Python : YOLOv8

L'utilisation d'un détecteur de pointe à partir du référentielUltralytics est remarquablement simple :

from ultralytics import YOLO

# Initialize the YOLOv8 model natively in PyTorch
model = YOLO("yolov8n.pt")

# Train the model on the COCO8 example dataset
train_results = model.train(data="coco8.yaml", epochs=50, imgsz=640)

# Run fast inference on an image URL
inference_results = model("https://ultralytics.com/images/bus.jpg")

# Display the bounding boxes
inference_results[0].show()

La nouvelle génération : passage à Ultralytics

Bien que YOLOv8 un modèle de production très performant, les chercheurs et développeurs à la recherche des dernières avancées en matière de performances IA devraient évaluer Ultralytics , sorti en janvier 2026.

YOLO26 redéfinit le paradigme de la détection d'objets en introduisant une conception native de bout en bout NMS. En éliminant le besoin de suppression non maximale pendant le post-traitement, un goulot d'étranglement qui existait depuis YOLO premières YOLO , la variance de latence est pratiquement éliminée. Cela change la donne pour le déploiement sur des appareils à faible consommation d'énergie.

De plus, YOLO26 intègre plusieurs innovations révolutionnaires en matière de formation :

  • Optimiseur MuSGD : inspiré des techniques avancées d'entraînement LLM, cet hybride de SGD Muon garantit un entraînement hautement stable et des taux de convergence considérablement accélérés.
  • CPU jusqu'à 43 % plus rapide : grâce à NMS et à une infrastructure fortement optimisée, YOLO26 atteint des vitesses sans précédent sur les appareils périphériques CPU, sans avoir recours à des NPU dédiés.
  • ProgLoss + STAL : ces fonctions de perte avancées offrent une amélioration notable de la précision de la reconnaissance des petits objets, rendant YOLO26 indispensable pour l'imagerie aérienne et les capteurs IoT de précision.
  • Suppression du DFL : le Distribution Focal Loss a été complètement supprimé afin de simplifier considérablement le processus d'exportation vers des formats tels que OpenVINO et CoreML.

Cas d'utilisation et recommandations

Le choix entre ces architectures dépend en fin de compte de vos contraintes de déploiement et de vos exigences héritées.

  • Choisissez Ultralytics YOLOv8 : vous développez des applications de vision par ordinateur modernes et polyvalentes qui exigent une grande précision, GPU en temps réel et une expérience de développement fluide. Ses performances élevées en matière de classification, de segmentation et de détection en font un outil polyvalent puissant pour l'analyse commerciale, la robotique et les systèmes de sécurité.
  • Choisissez EfficientDet si : vous êtes lié à TensorFlow hérités et que votre principale préoccupation est de minimiser le nombre de paramètres et les FLOP théoriques, peut-être à des fins de recherche plutôt que pour un déploiement industriel strict en temps réel.
  • Choisissez Ultralytics si : vous démarrez un nouveau projet et exigez ce qui se fait de mieux. Son architecture native de bout en bout NMS en fait le choix idéal pour les déploiements ultra-rapides en périphérie et le traitement intensif dans le cloud.

Si vous explorez d'autres frameworks hautement performants au sein de Ultralytics , vous pouvez également envisager Ultralytics YOLO11 pour des performances héritées équilibrées ou RT-DETR pour une approche basée sur un transformateur pour la détection en temps réel.


Commentaires