Passer au contenu

EfficientDet vs. YOLO11: équilibre entre efficacité et performance en temps réel

Le paysage de la détection d'objets a évolué rapidement, poussé par le besoin de modèles non seulement précis mais aussi suffisamment efficaces pour être déployés dans le monde réel. Deux étapes importantes de cette évolution sont EfficientDet de Google et Ultralytics YOLO11. Bien que ces deux architectures visent à optimiser le compromis entre vitesse et précision, elles abordent le problème avec des philosophies de conception différentes et ciblent des cas d'utilisation primaires différents.

EfficientDet a révolutionné le domaine en introduisant une méthode systématique de mise à l'échelle des dimensions du modèle, en se concentrant intensément sur l'efficacité des paramètres et les coûts de calcul théoriques (FLOP). En revanche, YOLO11 représente l'avant-garde de la vision par ordinateur en temps réel, en donnant la priorité à la vitesse d'inférence pratique sur du matériel moderne, à la polyvalence entre les tâches et à une expérience centrée sur le développeur. Cette comparaison complète se penche sur leurs spécifications techniques, leurs innovations architecturales et leurs performances afin de vous aider à choisir le bon outil pour votre projet.

EfficientDet de Google

EfficientDet est une famille de modèles de détection d'objets développés par l'équipe Google Brain. Sorti fin 2019, il a été conçu pour remédier à l'inefficacité des précédents détecteurs de pointe qui s'appuyaient souvent sur des backbones massifs ou des réseaux de fusion de caractéristiques non optimisés.

Détails techniques :

Architecture et innovations clés

Le succès d'EfficientDet repose sur deux contributions architecturales principales qui fonctionnent en tandem pour maximiser l'efficacité :

  1. BiFPN (Bi-directional Feature Pyramid Network) : Les Feature Pyramid Networks (FPN) traditionnels fusionnent les caractéristiques de différentes échelles de manière descendante. EfficientDet a introduit le BiFPN, qui permet aux informations de circuler à la fois dans les directions descendante et ascendante. En outre, il utilise un mécanisme de fusion de caractéristiques pondéré, apprenant l'importance de chaque caractéristique d'entrée, ce qui permet au réseau de donner la priorité aux signaux les plus informatifs.
  2. Mise à l'échelle composée : Inspirée d'EfficientNet, cette méthode crée une famille de modèles (D0 à D7) en échelonnant uniformément la résolution, la profondeur et la largeur de l'épine dorsale, du réseau de caractéristiques et des réseaux de prédiction. Cela garantit qu'au fur et à mesure que le modèle grandit, il maintient un équilibre entre ses différents composants, en optimisant les FLOP et le nombre de paramètres.

L'épine dorsale d'EfficientNet

EfficientDet utilise EfficientNet comme colonne vertébrale, un réseau de classification également développé par Google. EfficientNet a été optimisé à l'aide de la recherche d'architecture neuronale (NAS) pour trouver la structure de réseau la plus efficace, en utilisant fortement les convolutions séparables en profondeur pour réduire les calculs.

Points forts et faiblesses

EfficientDet est réputé pour l'efficacité élevée de ses paramètres, ce qui lui permet d'atteindre des niveaux de performance compétitifs. mAPval compétitifs avec beaucoup moins de paramètres que la plupart de ses contemporains. Sa nature évolutive permet aux chercheurs de sélectionner une taille de modèle qui correspond précisément à leur budget de calcul théorique.

Cependant, l'efficacité théorique ne se traduit pas toujours par une vitesse pratique. L'utilisation intensive de convolutions séparables en profondeur et la connectivité complexe du BiFPN peuvent conduire à une utilisation plus faible du GPU . Par conséquent, la latence d'inférence sur les GPU est souvent plus élevée par rapport aux modèles optimisés pour le traitement parallèle comme la série YOLO . En outre, EfficientDet est strictement un détecteur d'objets, sans support natif pour d'autres tâches de vision par ordinateur comme la segmentation d'instances ou l'estimation de la pose dans la même base de code.

Cas d'utilisation idéaux

  • Edge AI sur les unités centrales : Appareils où la mémoire est la contrainte la plus forte et où l'accélération GPU n'est pas disponible.
  • Recherche universitaire : Études portant sur l'efficacité des réseaux neuronaux et les lois de mise à l'échelle.
  • Applications à faible consommation d'énergie : Scénarios dans lesquels la minimisation de la consommation de la batterie (liée aux FLOP) est plus importante que la latence brute.

En savoir plus sur EfficientDet

Ultralytics YOLO11

Ultralytics YOLO11 est la dernière itération de la célèbre série YOLO (You Only Look Once). Elle s'appuie sur un héritage de performances en temps réel, en introduisant des raffinements architecturaux qui repoussent les limites de la précision tout en maintenant les vitesses d'inférence fulgurantes attendues par les développeurs.

Détails techniques :

Architecture et fonctionnalités

YOLO11 utilise une tête de détection sans ancrage à la pointe de la technologie, ce qui élimine la nécessité d'une configuration manuelle de la boîte d'ancrage et simplifie le processus d'apprentissage. Les architectures de l'épine dorsale et du cou ont été optimisées pour améliorer les capacités d'extraction des caractéristiques, ce qui permet d'améliorer les performances sur des tâches difficiles telles que la détection de petits objets et les scènes encombrées.

Contrairement à EfficientDet qui se concentre principalement sur la réduction des FLOP, YOLO11 est conçu pour une efficacité adaptée au matériel. Cela signifie que ses couches et ses opérations sont sélectionnées pour maximiser le débit sur les GPU et les accélérateurs NPU.

La polyvalence à l'état pur

Une seule architecture de modèle YOLO11 prend en charge un large éventail de tâches de vision. Dans le même cadre, vous pouvez effectuer Détection d'objets, Segmentation d'instances, Classification d'images, Estimation de la poseet Boîte de délimitation orientée (OBB) détection.

Points forts et faiblesses

Le principal atout de YOLO11 est son équilibre exceptionnel entre vitesse et précision. Il offre une précision de pointe qui rivalise avec les grands modèles, voire les surpasse, tout en fonctionnant avec une fraction de la latence. Il est donc idéal pour les applications d'inférence en temps réel. En outre, l'écosystème Ultralytics garantit la facilité d'utilisation grâce à une API unifiée, ce qui rend la formation et le déploiement transparents.

L'une des considérations est que les plus petites variantes de YOLO11 , bien qu'incroyablement rapides, peuvent sacrifier une petite marge de précision par rapport aux modèles les plus grands et les plus lourds en termes de calcul, disponibles dans les universités. Cependant, pour un déploiement pratique, ce compromis est presque toujours favorable.

Cas d'utilisation idéaux

En savoir plus sur YOLO11

Comparaison des performances

Lorsque l'on compare EfficientDet et YOLO11, la différence la plus frappante réside dans la vitesse d'inférence, en particulier sur le matériel GPU . Alors que les modèles EfficientDet (D0-D7) montrent une bonne efficacité au niveau des paramètres, leurs opérations complexes (comme BiFPN) les empêchent d'utiliser pleinement les capacités de traitement parallèle.

Comme le montre le tableau ci-dessous, YOLO11n atteint un mAP plus élevé (39,5) que EfficientDet-d0 (34,6) tout en étant significativement plus rapide. Plus impressionnant encore, YOLO11m atteint la même précision qu'EfficientDet-d5, beaucoup plus lourd (51,5 mAP), mais fonctionne environ 14 fois plus vite sur un GPU T4 (4,7 ms contre 67,86 ms). Cet avantage considérable en termes de vitesse permet à YOLO11 de traiter des flux vidéo haute résolution en temps réel, ce qui est un défi pour les modèles EfficientDet de niveau supérieur.

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
YOLO11n64039.556.11.52.66.5
YOLO11s64047.090.02.59.421.5
YOLO11m64051.5183.24.720.168.0
YOLO11l64053.4238.66.225.386.9
YOLO11x64054.7462.811.356.9194.9

L'avantage Ultralytics

Si les mesures techniques sont cruciales, l'expérience du développeur et le soutien de l'écosystème sont tout aussi importants pour la réussite du projet. Ultralytics fournit une suite complète d'outils qui simplifie l'ensemble du cycle de vie des MLOps, offrant des avantages distincts par rapport au référentiel EfficientDet centré sur la recherche.

  • Facilité d'utilisation : L Ultralytics APIPython et le CLI sont conçues pour être simples. Vous pouvez charger, entraîner et déployer un modèle de pointe avec seulement quelques lignes de code, alors qu'EfficientDet nécessite souvent des fichiers de configuration complexes et une gestion des dépendances dans TensorFlow.
  • Un écosystème bien entretenu : Les modèles Ultralytics sont soutenus par une communauté active et des mises à jour fréquentes. Du dépôt GitHub à la documentation complète, les développeurs ont accès à une multitude de ressources, de tutoriels et de canaux d'assistance.
  • Efficacité de l'entraînement : YOLO11 est optimisé pour une convergence rapide. Il prend en charge des stratégies efficaces de chargement et d'augmentation des données qui réduisent le temps de formation. En outre, ses besoins en mémoire réduits par rapport aux anciennes architectures ou aux modèles basés sur les transformateurs permettent de s'entraîner sur des GPU grand public sans manquer de mémoire CUDA .
  • Flexibilité de déploiement : Le cadre prend en charge de manière native l'exportation de modèles vers différents formats, notamment ONNX, TensorRTCoreML et OpenVINO. Cela garantit que votre modèle YOLO11 peut être déployé n'importe où, depuis les serveurs en nuage jusqu'aux appareils périphériques comme le Raspberry Pi.

Pratique de YOLO11

Découvrez la simplicité de l'API Ultralytics . L'exemple 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 an image source
results = model("path/to/image.jpg")

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

Conclusion

EfficientDet et YOLO11 sont tous deux des réalisations marquantes dans le domaine de la vision par ordinateur. EfficientDet reste une référence précieuse pour la conception d'architectures évolutives et convient aux applications de niche pour lesquelles les FLOP théoriques sont la principale contrainte.

Cependant, pour la grande majorité des applications modernes de vision par ordinateur, Ultralytics YOLO11 est le meilleur choix. Son architecture offre un bien meilleur équilibre entre précision et vitesse, en particulier sur le matériel GPU utilisé dans la plupart des environnements de production. Associé à un cadre multitâche polyvalent, à un écosystème robuste et à une facilité d'utilisation inégalée, YOLO11 permet aux développeurs de concevoir et de déployer en toute confiance des solutions d'IA performantes.

Explorer d’autres comparaisons

Pour mieux comprendre le paysage des modèles de détection d'objets, nous vous invitons à explorer ces comparaisons supplémentaires :


Commentaires