Comparaison entre EfficientDet et YOLOv9#
Le domaine de la vision par ordinateur a été façonné par des avancées continues dans la conception des réseaux neuronaux. Trouver le juste équilibre entre efficacité computationnelle et précision de détection est essentiel lors de la sélection d’un modèle. L'EfficientDet de Google a établi une référence solide en 2019 en introduisant des architectures évolutives, tandis que YOLOv9, sorti en 2024, a repoussé les limites de la détection d’objets grâce aux informations de gradient programmables (PGI).
Ce guide fournit une comparaison technique complète de ces deux modèles et présente le framework moderne Ultralytics YOLO26, qui offre une solution robuste de bout en bout optimisée pour les environnements de production.
Architectures et innovations des modèles#
Comprendre les mécanismes sous-jacents d’EfficientDet et de YOLOv9 est essentiel pour déterminer leurs cas d’utilisation optimaux.
EfficientDet : mise à l’échelle composée et BiFPN#
Développé par Google Research, EfficientDet se concentre sur la mise à l’échelle systématique et la fusion efficace des caractéristiques. Il utilise EfficientNet comme backbone et introduit une nouvelle architecture de réseau de caractéristiques.
- Auteurs : Mingxing Tan, Ruoming Pang et Quoc V. Le
- Organisation : Google
- Date : 20 novembre 2019
- Liens : Arxiv, GitHub
Principales caractéristiques architecturales : EfficientDet s’appuie largement sur un réseau pyramidal de caractéristiques bidirectionnel (BiFPN), qui permet une fusion facile et rapide des caractéristiques à plusieurs échelles. Il utilise également une méthode de mise à l’échelle composée qui met uniformément à l’échelle la résolution, la profondeur et la largeur du réseau. Bien qu’il ait été très précis pour son époque, EfficientDet reste fortement dépendant d’environnements TensorFlow anciens, ce qui complexifie les pipelines de déploiement modernes.
En savoir plus sur EfficientDet
YOLOv9 : résoudre le goulot d’étranglement de l’information#
Développé par des chercheurs de l’Academia Sinica, YOLOv9 s’attaque à la dégradation des informations lorsque les données traversent des réseaux neuronaux profonds.
- Auteurs : Chien-Yao Wang et Hong-Yuan Mark Liao
- Organisation : Institute of Information Science, Academia Sinica
- Date : 21 février 2024
- Liens : Arxiv, GitHub, Documentation
Principales caractéristiques architecturales : YOLOv9 introduit les informations de gradient programmables (PGI) afin de fournir une supervision auxiliaire et de garantir la conservation des données essentielles pour mettre à jour les poids du réseau de manière fiable. Il intègre également un réseau généralisé d’agrégation efficace des couches (GELAN) afin de maximiser l’efficacité des paramètres. Malgré ces avancées, YOLOv9 nécessite toujours une suppression des non-maxima (NMS) lors du post-traitement, ce qui ajoute de la latence.
Comparaison des performances#
Lors de l’évaluation de ces modèles, l’analyse de données empiriques aide à déterminer quelle architecture offre le meilleur compromis pour tes exigences matérielles spécifiques.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
Analyse critique#
YOLOv9 offre un bond générationnel en matière de vitesse. Par exemple, YOLOv9e atteint 55.6% mAP avec une latence TensorRT de 16.77 ms. En revanche, EfficientDet-d7 offre une mAP inférieure de 53.7 %, mais souffre d’une latence énorme (128.07 ms), ce qui le rend extrêmement difficile à déployer pour des flux vidéo en temps réel.
Cas d'utilisation et recommandations#
Le choix entre EfficientDet et YOLOv9 dépend de tes exigences spécifiques, de tes contraintes de déploiement et de tes préférences en matière d’écosystème.
Quand choisir EfficientDet#
EfficientDet est un choix pertinent pour :
- Pipelines Google Cloud et TPU : Les systèmes profondément intégrés aux API Google Cloud Vision ou à une infrastructure TPU, où EfficientDet bénéficie d’une optimisation native.
- Recherche sur la mise à l’échelle composée : Les évaluations universitaires axées sur l’étude des effets de la mise à l’échelle équilibrée de la profondeur, de la largeur et de la résolution des réseaux.
- Déploiement mobile via TFLite : Les projets qui nécessitent spécifiquement un export TensorFlow Lite pour Android ou les appareils Linux embarqués.
Quand choisir YOLOv9#
YOLOv9 est recommandé pour :
- Recherche sur les goulots d'étranglement de l'information : les projets académiques étudiant les architectures Programmable Gradient Information (PGI) et Generalized Efficient Layer Aggregation Network (GELAN).
- Études sur l'optimisation du flux des gradients : les recherches visant à comprendre et à limiter la perte d'informations dans les couches des réseaux profonds pendant l'entraînement.
- Évaluation comparative de la détection haute précision : les scénarios où les solides performances de YOLOv9 sur le benchmark COCO sont nécessaires comme référence pour comparer les architectures.
Quand choisir Ultralytics (YOLO26)#
Pour la plupart des nouveaux projets, Ultralytics YOLO26 offre le meilleur compromis entre performance et expérience développeur :
- Déploiement edge sans NMS : les applications nécessitant une inférence cohérente à faible latence, sans la complexité du post-traitement par suppression non maximale.
- Environnements exclusivement CPU : les appareils dépourvus d'accélération GPU dédiée, où l'inférence CPU jusqu'à 43 % plus rapide de YOLO26 constitue un avantage décisif.
- Détection de petits objets : les scénarios difficiles comme les images aériennes prises par drone ou l'analyse de capteurs IoT, où ProgLoss et STAL améliorent considérablement la précision sur les objets minuscules.
L’avantage d’Ultralytics : choisir YOLO26#
Alors que YOLOv9 et EfficientDet ont ouvert la voie, les développeurs à la recherche d’un framework véritablement moderne et prêt pour la production devraient envisager les modèles YOLO d’Ultralytics, en particulier le YOLO26 récemment sorti.
La plateforme Ultralytics offre une facilité d’utilisation inégalée en combinant de puissants scripts d’entraînement locaux avec une interface compatible avec le cloud. YOLO26 représente une refonte majeure de la conception des modèles, rendant obsolètes les architectures plus anciennes pour de nombreuses applications commerciales.
Points forts techniques de YOLO26#
- Conception de bout en bout sans NMS : YOLO26 élimine entièrement les goulots d’étranglement du post-traitement. En supprimant la suppression des non-maxima, les graphes de déploiement sont unifiés et intrinsèquement plus rapides sur les puces d’IA en périphérie.
- Jusqu’à 43 % d’inférence plus rapide sur CPU : fortement optimisé pour les appareils embarqués, il est nettement plus rapide que YOLOv9 et EfficientDet lorsque les GPU ne sont pas disponibles.
- Optimiseur MuSGD : en intégrant des innovations des LLM à l’IA de vision, cet optimiseur hybride stabilise les entraînements et permet aux modèles de converger plus rapidement avec moins de ressources.
- Faibles besoins en mémoire : contrairement aux architectures très basées sur les Transformer ou aux CNNs non optimisés, YOLO26 minimise la consommation de mémoire CUDA pendant l’entraînement, ce qui te permet d’utiliser des tailles de lot plus importantes sur du matériel grand public.
- ProgLoss + STAL : une conception supérieure de la fonction de perte améliore considérablement la précision de détection des petits objets, ce qui rend YOLO26 idéal pour l’imagerie aérienne et les réseaux IoT.
- Suppression de DFL : une conception structurelle simplifiée permet une conversion fluide vers les formats de déploiement mobile.
Parmi les autres options robustes de l’écosystème Ultralytics figurent YOLO11 et YOLOv8, qui offrent également une polyvalence multitâche, notamment la segmentation d’instances et l’estimation de pose.
Entraînement simplifié avec le SDK Python#
Les modèles Ultralytics privilégient l’expérience des développeurs. L’entraînement d’un modèle de pointe se résume à quelques lignes de Python.
from ultralytics import YOLO
# Initialize the state-of-the-art YOLO26 model
model = YOLO("yolo26n.pt")
# Train with optimized memory usage and built-in augmentations
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance easily
metrics = model.val()
print(f"Validation mAP: {metrics.box.map}")Applications concrètes#
Le choix entre ces architectures dépend largement de ta cible de déploiement.
- Déploiements cloud anciens : EfficientDet était populaire pour le traitement par lots hors ligne dans le cloud, lorsque la haute précision était nécessaire et qu’il n’existait pas de contraintes strictes de temps réel.
- Recherche universitaire : YOLOv9 reste un choix intéressant pour les chercheurs qui repoussent les limites théoriques des CNNs et analysent les flux de gradients à travers les couches du réseau.
- Edge computing et IoT : YOLO26 domine les applications du monde réel. Son pipeline sans NMS et ses capacités de boîte englobante orientée (OBB) en font l’option supérieure pour l’analyse du trafic en ville intelligente, la surveillance des stocks dans le commerce de détail et l’inspection par drone, en offrant un équilibre inégalé entre haute précision et vitesses d’inférence élevées.