Passer au contenu

YOLOv9 EfficientDet : comparaison technique de l'architecture et des performances

Dans le domaine en constante évolution de la vision par ordinateur, le choix de l'architecture de détection d'objets appropriée est une décision cruciale qui a un impact sur la latence, la précision et la complexité de déploiement du système. Ce guide fournit une comparaison technique détaillée entre YOLOv9, un modèle de pointe introduit début 2024, et EfficientDet, une architecture très influente de Google pour son évolutivité efficace. Nous analysons leurs différences structurelles, leurs mesures de performance et leur adéquation aux applications du monde réel.

Analyse des métriques de performance

Le tableau suivant compare les performances de différentes échelles de modèles. YOLOv9 affiche généralement des ratios précision/paramètres supérieurs et des vitesses d'inférence plus rapides sur le matériel moderne par rapport à l'ancienne architecture EfficientDet.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
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

Aperçus des modèles

YOLOv9

Auteurs : Chien-Yao Wang, Hong-Yuan Mark Liao
Organisation : Institut des sciences de l'information, Academia Sinica, Taïwan
Date : 21/02/2024
Liens :Arxiv | GitHub | Docs

YOLOv9 des innovations architecturales significatives pour résoudre le problème du « goulot d'étranglement de l'information » dans les réseaux profonds. La contribution principale est l'information de gradient programmable (PGI), qui génère des gradients fiables via une branche de supervision auxiliaire afin de garantir que les couches profondes conservent les informations critiques. De plus, elle utilise le réseau d'agrégation de couches généralisé et efficace (GELAN), une architecture légère qui maximise l'efficacité des paramètres.

En savoir plus sur YOLOv9

EfficientDet

Auteurs : Mingxing Tan, Ruoming Pang, Quoc V. Le
Organisation :Google
Date : 20/11/2019
Liens :Arxiv | GitHub

EfficientDet est un travail pionnier dans le domaine de l'AutoML qui a introduit le réseau pyramidal bidirectionnel (BiFPN). Contrairement aux FPN traditionnels, le BiFPN permet une fusion facile des caractéristiques à plusieurs échelles grâce à l'introduction de poids apprenables. Le modèle utilise également le Compound Scaling, une méthode qui adapte uniformément la résolution, la profondeur et la largeur, ce qui lui permet d'atteindre d'excellentes performances dans un large éventail de contraintes de ressources (de D0 à D7).

Plongée architecturale en profondeur

Fusion des fonctionnalités : GELAN vs BiFPN

La principale différence réside dans la manière dont ces modèles agrègent les caractéristiques. EfficientDet s'appuie sur la structure complexe BiFPN qui, bien que théoriquement efficace en termes de FLOP, peut être gourmande en mémoire et plus difficile à optimiser pour des accélérateurs matériels spécifiques tels que TensorRT.

En revanche, l'architecture GELAN YOLOv9 combine les meilleurs aspects de CSPNet et d'ELAN. Elle privilégie la planification du chemin du gradient plutôt que les connexions de fusion complexes. Il en résulte un réseau non seulement plus léger en termes de paramètres, mais aussi plus « convivial pour le matériel », ce qui se traduit par GPU meilleure GPU pendant l'entraînement et l'inférence.

Flux de gradient et perte d'informations

EfficientDet s'appuie sur la rétropropagation standard via une structure EfficientNet très profonde. YOLOv9 le problème des réseaux profonds qui « oublient » les détails des données d'entrée. Grâce au PGI, YOLOv9 une branche réversible auxiliaire qui guide le processus d'apprentissage, garantissant que la branche principale capture des caractéristiques sémantiques robustes sans le coût computationnel lié au maintien de ces branches auxiliaires pendant l'inférence.

Avertissement : Avantage PGI

Les informations de gradient programmables (PGI) permettent YOLOv9 obtenir une meilleure convergence avec moins de données, ce qui le rend particulièrement efficace pour les ensembles de données personnalisés où les exemples annotés peuvent être rares.

Écosystème et facilité d'utilisation

L'une des différences les plus marquantes pour les développeurs réside dans l'écosystème qui entoure ces modèles.

EfficientDet est principalement ancré dans TensorFlow . Bien que puissant, son utilisation nécessite souvent de naviguer dans des chaînes de dépendances complexes ou dans des référentiels plus anciens qui peuvent manquer de mises à jour fréquentes.

YOLOv9, intégré à Ultralytics , offre une expérience simplifiée. Les développeurs peuvent accéder au modèle via une Python simple, ce qui permet la formation, la validation et le déploiement en quelques minutes. Le Ultralytics gère l'augmentation des données, la journalisation (par exemple, vers MLflow ou Comet) et l'exportation automatiquement.

from ultralytics import YOLO

# Load a pretrained YOLOv9c model
model = YOLO("yolov9c.pt")

# Train the model on a custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Export to ONNX for deployment
model.export(format="onnx")

Cet extrait démontre la facilité d'utilisation inhérente aux Ultralytics . Le framework prend également en charge la précision mixte automatique (AMP) etGPU dès l'installation, garantissant ainsi l'efficacité de l'entraînement.

Polyvalence et déploiement

Assistance aux tâches

EfficientDet est fondamentalement conçu pour la détection d'objets. Son adaptation à des tâches telles que la segmentation ou l'estimation de pose nécessite des modifications architecturales importantes et un code personnalisé.

Ultralytics , y compris YOLOv9 ses successeurs, sont construits sur une base de code polyvalente qui prend en charge nativement :

Compatibilité des bords et mémoire

Bien qu'EfficientDet-D0 soit petit, le passage à D7 entraîne des coûts de mémoire considérables en raison de la mise à l'échelle de la résolution (jusqu'à 1536x1536). YOLOv9 une entrée standard de 640x640 pour la plupart des benchmarks tout en offrant une précision supérieure. Cette résolution d'entrée inférieure réduit considérablement les besoins en mémoire VRAM, ce qui permet des tailles de lots plus importantes et des expériences plus rapides sur les GPU grand public.

De plus, Ultralytics prennent en charge l'exportation en un clic vers des formats tels que TFLite pour les appareils mobiles, OpenVINO pour Intel et CoreML les appareils Apple, garantissant ainsi une large compatibilité Edge.

Cas d'utilisation concrets

Le choix du modèle détermine souvent le succès d'une application spécifique :

  • Analyse commerciale : pour compter les produits en rayon, YOLOv9 est supérieur grâce à sa grande précision (mAP) sur les petits objets, grâce à la capacité de PGI à conserver les détails fins.
  • Drones autonomes : dans les scénarios nécessitant une inférence en temps réel sur du matériel embarqué (par exemple, Jetson Orin), l'architecture GELAN efficace YOLOv9 fournit le FPS nécessaire que les couches BiFPN complexes d'EfficientDet ont souvent du mal à égaler.
  • Systèmes hérités :EfficientDet reste pertinent dans les comparaisons de recherche ou TPU hérités Google TPU où l'architecture spécifique du modèle est codée en dur dans le pipeline matériel.

L'avenir : YOLO26

Bien que YOLOv9 des performances exceptionnelles, le domaine de l'IA évolue rapidement. Ultralytics d'innover avec YOLO26, le choix recommandé pour les nouveaux projets.

YOLO26 s'appuie sur les points forts YOLO précédentes YOLO , mais introduit une conception native de bout en bout NMS, éliminant ainsi la latence et la complexité du post-traitement par suppression non maximale. Il intègre l'optimiseur MuSGD, un hybride de SGD Muon, et supprime la perte focale de distribution (DFL) pour simplifier l'exportation. Ces changements se traduisent par CPU jusqu'à 43 % plus rapide et une meilleure stabilité de l'entraînement.

En savoir plus sur YOLO26

De plus, YOLO26 intègre ProgLoss + STAL (Soft-Target Anchor Loss), offrant des améliorations notables dans la reconnaissance des petits objets, ce qui est essentiel pour la robotique et l'imagerie aérienne. Pour les développeurs à la recherche de l'équilibre parfait entre vitesse, précision et facilité de déploiement, YOLO26 représente la nouvelle norme.

Conclusion

Les deux architectures ont gagné leur place dans l'histoire de la vision par ordinateur. EfficientDet a démontré la puissance de la mise à l'échelle composée, tandis que YOLOv9 a montré comment les gradients programmables peuvent récupérer des informations dans les réseaux profonds. Cependant, pour les environnements de production modernes, Ultralytics , qui prend en charge à la fois YOLOv9 le plus récent YOLO26, offre un avantage distinct en termes de maintenabilité, de vitesse d'entraînement et de flexibilité de déploiement.

Voir aussi


Commentaires