Passer au contenu

EfficientDet contre. DAMO-YOLO : une comparaison technique

Dans le paysage en évolution rapide de la vision par ordinateur, le choix de la bonne architecture de détection d'objets est essentiel pour la réussite de l'application. EfficientDet, développé par Google Research, et YOLO, développé par la DAMO Academy d'Alibaba, sont deux architectures notables qui ont façonné le domaine. Bien qu'elles visent toutes deux à maximiser les performances, elles divergent considérablement dans leur philosophie de conception : l'une se concentre sur l'efficacité des paramètres et l'extensibilité, tandis que l'autre vise une inférence à faible latence sur du matériel industriel.

Ce guide propose une analyse technique approfondie de ces deux modèles, en comparant leurs architectures, leurs mesures de performance et leurs cas d'utilisation idéaux, afin d'aider les développeurs à prendre des décisions éclairées.

Analyse des performances : Efficacité vs. latence

Les benchmarks suivants illustrent les compromis distincts entre EfficientDet et YOLO. EfficientDet est réputé pour son faible nombre de paramètres et de FLOPs, ce qui le rend théoriquement efficace, tandis que YOLO est optimisé pour la vitesse d'inférence dans le monde réel sur les GPU.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
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
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3

Principaux enseignements de l'étude comparative

Les données ci-dessus font apparaître plusieurs distinctions essentielles :

  • Domination de la latence duGPU : YOLO démontre des vitesses d'inférence significativement plus rapides sur le matériel GPU . Par exemple, DAMO-YOLOm atteint une mAP de 49,2 avec une latence de seulement 5,09 ms sur un GPU T4. En revanche, le modèle comparable EfficientDet-d4 (49,7 mAP) nécessite 33,55 ms, soit près de 6 fois plus lent.
  • Efficacité des paramètres : EfficientDet excelle dans les métriques de compression de modèle. Le modèle EfficientDet-d0 n'utilise que 3,9 millions de paramètres et 2,54 milliards de FLOP, offrant une empreinte légère idéale pour les dispositifs à stockage limité.
  • Performance duCPU : EfficientDet fournit des références établies pour la performance du CPU , ce qui en fait un choix prévisible pour les appareils périphériques non accélérés. Cependant, ses couches complexes de fusion de caractéristiques se traduisent souvent par un débit plus lent dans le monde réel par rapport à des architectures plus simples.

EfficientDet : Évolutif et efficace

EfficientDet a révolutionné la détection d'objets en introduisant une méthode fondée sur des principes pour réduire les dimensions des modèles. Construit sur l'épine dorsale EfficientNet, il vise à atteindre une grande précision tout en minimisant les coûts de calcul théoriques (FLOP).

EfficientDet Details :

Points forts de l'architecture

L'innovation fondamentale d'EfficientDet repose sur deux éléments principaux :

  1. BiFPN (Bidirectional Feature Pyramid Network) : Contrairement aux FPN traditionnels qui additionnent les caractéristiques à différentes échelles, le BiFPN introduit des poids apprenables pour les différentes caractéristiques d'entrée et permet aux informations de circuler à la fois de haut en bas et de bas en haut de manière répétée. Cela améliore la fusion des caractéristiques, mais augmente la complexité des calculs.
  2. Mise à l'échelle composée : EfficientDet propose un coefficient composé qui augmente conjointement l'épine dorsale, le BiFPN, le réseau de classes/boîtes et la résolution d'entrée. Cela garantit que toutes les parties du réseau se développent de manière équilibrée, plutôt que d'augmenter arbitrairement une seule dimension (comme la profondeur ou la largeur).

Points forts et faiblesses

La principale force d'EfficientDet est son efficacité théorique. Il atteint une précision de pointe avec beaucoup moins de paramètres que les détecteurs précédents tels que YOLOv3 ou RetinaNet. Cependant, son utilisation intensive de convolutions séparables en profondeur et les schémas d'accès à la mémoire complexes de BiFPN peuvent conduire à une utilisation plus faible des GPU modernes, ce qui se traduit par une latence plus élevée malgré des FLOPs plus faibles.

Considérations relatives au déploiement

Bien qu'EfficientDet ait de faibles FLOPs, "faibles FLOPs" ne se traduisent pas toujours par "inférence rapide". Sur du matériel comme les GPU ou les TPU, la bande passante de la mémoire et les frais généraux de lancement du noyau sont souvent plus importants. La structure complexe du graphe d'EfficientDet peut parfois constituer un goulot d'étranglement dans les scénarios d'inférence en temps réel.

YOLO: L'innovation axée sur la vitesse

YOLO a été conçu dans un but précis : combler le fossé entre hautes performances et faible latence sur du matériel industriel. Il intègre des technologies de pointe en matière de recherche d'architecture neuronale (NAS) afin de trouver la structure optimale pour les tâches de détection.

YOLO Détails :

Points forts de l'architecture

YOLO introduit plusieurs composants "new tech" dans la famille YOLO :

  1. MAE-NAS Backbone (épine dorsale MAE-NAS) : Il utilise la recherche d'architecture neuronale (NAS) pilotée par l'entropie maximale pour découvrir des dorsales efficaces qui traitent efficacement les différentes résolutions d'entrée.
  2. RepGFPN : Il s'agit d'une amélioration du FPN généralisé standard, qui incorpore un reparamétrage pour rationaliser le bloc de fusion et maximiser l'utilisation du matériel.
  3. ZeroHead & AlignedOTA : la conception "ZeroHead" réduit considérablement la complexité de la tête de détection, tandis que AlignedOTA (Optimal Transport Assignment) fournit une stratégie robuste d'attribution d'étiquettes pendant la formation pour résoudre le décalage entre la classification et la régression.

Points forts et faiblesses

YOLO excelle en termes de vitesse brute. En donnant la priorité aux structures qui sont compatibles avec l'accélération matérielle (comme TensorRT), il atteint un débit remarquable. Cependant, sa dépendance à l'égard des architectures complexes générées par les NAS peut rendre plus difficile la modification ou l'ajustement à des fins de recherche personnalisée par rapport à des architectures plus simples, conçues à la main. En outre, il ne bénéficie pas du large soutien de la communauté et de la facilité d'utilisation multiplateforme que l'on trouve dans les versions plus courantes de YOLO .

Ultralytics YOLO11: L'alternative holistique

EfficientDet offre l'efficacité des paramètres et YOLO la vitesse du GPU , Ultralytics YOLO11 offre un équilibre supérieur entre les deux, dans un écosystème convivial pour les développeurs. Pour la plupart des applications pratiques, allant de l'IA de pointe aux YOLO11 dans le cloud, YOLO11 représente le choix optimal.

En savoir plus sur YOLO11

Pourquoi choisir les modèles Ultralytics ?

  1. Une polyvalence inégalée : Contrairement à EfficientDet et YOLO, qui sont principalement des détecteurs d'objets, Ultralytics YOLO11 supporte nativement un large éventail de tâches de vision par ordinateur, y compris la segmentation d'instances, l'estimation de la pose, les boîtes de délimitation orientées (OBB) et la classification d'images. Cela vous permet d'utiliser un seul cadre de travail pour répondre aux exigences de divers projets.
  2. Équilibre des performances : YOLO11 repousse les limites de la frontière entre précision et latence. Il atteint ou dépasse souvent la précision de modèles plus lourds tout en maintenant des vitesses d'inférence compétitives par rapport aux modèles spécialisés en temps réel.
  3. Facilité d'utilisation et écosystème : L'API Ultralytics est conçue pour être simple. Grâce à une documentation complète et au soutien de la communauté, les développeurs peuvent passer de l'installation à la formation en quelques minutes. L'écosystème comprend des intégrations transparentes pour l'annotation des données, le suivi des expériences et l'exportation en un clic vers des formats tels que ONNX, TensorRT, CoreML et TFLite.
  4. Efficacité de la formation : Les modèles Ultralytics sont optimisés pour une convergence rapide. Ils utilisent des stratégies avancées d'augmentation des données et des chargeurs de données efficaces, réduisant ainsi le temps et les coûts associés à la formation de modèles de haute performance.
  5. Efficacité de la mémoire : Comparé aux modèles basés sur Transformer ou aux architectures plus anciennes, YOLO11 nécessite beaucoup moins de mémoire CUDA pour l'entraînement, ce qui le rend accessible aux GPU grand public.

Exemple de code : Premiers pas avec YOLO11

La mise en œuvre d'une détection de pointe avec Ultralytics est simple. L'extrait de code suivant montre comment charger un modèle YOLO11 pré-entraîné et exécuter l'inférence sur une image :

from ultralytics import YOLO

# Load a pre-trained YOLO11n model
model = YOLO("yolo11n.pt")

# Run inference on a local image or URL
results = model.predict("https://ultralytics.com/images/bus.jpg")

# Display the results
results[0].show()

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

Intégration transparente

Les modèles Ultralytics s'intègrent sans effort aux outils MLOps les plus courants. Que vous utilisiez MLflow pour la journalisation ou Ray Tune pour l'optimisation des hyperparamètres, la fonctionnalité est directement intégrée dans la bibliothèque.

Conclusion

Dans la comparaison entre EfficientDet et YOLO, le choix dépend largement des contraintes matérielles spécifiques. EfficientDet reste un candidat solide pour l'efficacité théorique et les scénarios où le nombre de paramètres est le principal goulot d'étranglement. YOLO est le vainqueur incontesté pour les applications à haut débit exécutées sur des GPU modernes où la latence est primordiale.

Cependant, pour une solution qui combine le meilleur des deux mondes - haute performance, facilité d'utilisation et capacité multi-tâches - Ultralytics a été conçu pour répondre aux besoins d'un grand nombre d'utilisateurs.Ultralytics YOLO11 s'impose comme la norme du secteur. Son écosystème robuste et ses améliorations continues garantissent que les développeurs disposent des outils les plus fiables pour créer des solutions de vision par ordinateur évolutives.

Explorer d’autres comparaisons

Pour mieux comprendre le paysage des modèles de détection d'objets, il convient d'explorer ces comparaisons supplémentaires :


Commentaires