YOLOv10 vs EfficientDet : Comparaison des architectures de détection d'objets en temps réel
Sélectionner le réseau de neurones optimal pour la détection d'objets est une décision critique qui dicte le succès des systèmes modernes de vision par ordinateur. Deux architectures importantes qui ont considérablement influencé ce domaine sont YOLOv10 et EfficientDet. Bien que toutes deux visent à maximiser la précision tout en minimisant la charge computationnelle, elles adoptent des approches architecturales très différentes pour atteindre ces objectifs.
Ce guide complet explore leurs conceptions uniques, leurs méthodologies d'entraînement et leurs caractéristiques de déploiement, aidant les développeurs et les ingénieurs ML à prendre des décisions basées sur les données pour les applications d'IA visuelle. Nous examinerons leurs performances sur du matériel allant des périphériques d'IA en périphérie aux puissants GPU cloud.
YOLOv10 : Le pionnier sans NMS
Développé pour repousser les limites de la latence en temps réel, YOLOv10 s'est attaqué à l'un des goulots d'étranglement les plus persistants de la famille YOLO : la suppression des non-maxima (NMS). En éliminant cette étape de post-traitement, le modèle atteint une latence hautement prévisible, ce qui est essentiel pour les véhicules autonomes et la robotique à haute vitesse.
Innovations architecturales
YOLOv10 introduit des affectations doubles cohérentes pour un entraînement sans NMS. Pendant l'entraînement, il exploite à la fois des affectations d'étiquettes un-à-plusieurs et un-à-un, permettant au réseau d'apprendre des représentations riches tout en produisant nativement une seule meilleure boîte englobante par objet lors de l'inférence. L'architecture intègre également une conception holistique axée sur l'efficacité et la précision, rationalisant la tête de classification et réduisant la redondance computationnelle présente dans les itérations précédentes.
Détails du modèle
- Auteurs : Ao Wang, Hui Chen, Lihao Liu, et al.
- Organisation : Tsinghua University
- Date : 23/05/2024
- Article : YOLOv10 : Détection d'objets en temps réel de bout en bout
- GitHub : THU-MIG/yolov10
- Docs : Documentation YOLOv10
Comme YOLOv10 supprime l'étape NMS, il est intrinsèquement plus facile à exporter vers des formats comme le format ONNX et NVIDIA TensorRT sans dépendre de plugins d'exécution personnalisés pour le filtrage des boîtes englobantes.
Points forts :
- Inférence prévisible : La suppression du NMS garantit des temps d'inférence cohérents indépendamment du nombre d'objets dans la scène.
- Utilisation de la mémoire réduite : Comparé aux modèles basés sur les Transformers comme RT-DETR, YOLOv10 bénéficie de besoins en mémoire nettement inférieurs à la fois pendant l'entraînement et l'inférence.
- Excellent compromis vitesse/précision : Spécifiquement optimisé pour les scénarios à faible latence sans sacrifier les métriques de performance.
Points faibles :
- Focus sur une seule tâche : Contrairement à l'écosystème Ultralytics plus large, le dépôt original de YOLOv10 est fortement axé sur la détection, manquant de support natif pour la segmentation d'instance ou l'estimation de pose.
EfficientDet : Évolutif et équilibré
Introduit par Google Brain, EfficientDet aborde la détection d'objets sous l'angle du dimensionnement systématique du réseau. Il s'appuie sur l'épine dorsale de classification d'images EfficientNet et introduit un nouveau mécanisme de fusion de caractéristiques.
Innovations architecturales
Le cœur d'EfficientDet est le Bi-directional Feature Pyramid Network (BiFPN), qui permet une fusion de caractéristiques multi-échelle facile et rapide. Contrairement aux FPN traditionnels qui ne somment les caractéristiques que de haut en bas, BiFPN introduit des connexions bidirectionnelles inter-échelles et des poids entraînables pour apprendre l'importance des différentes caractéristiques d'entrée. De plus, EfficientDet utilise une méthode de mise à l'échelle composée qui adapte uniformément la résolution, la profondeur et la largeur pour tous les réseaux de base, de caractéristiques et de prédiction de boîte/classe.
Détails du modèle
- Auteurs : Mingxing Tan, Ruoming Pang, et Quoc V. Le
- Organisation : Google Brain
- Date : 2019-11-20
- Article : EfficientDet : Détection d'objets évolutive et efficace
- GitHub : Google AutoML EfficientDet
Points forts :
- Haute efficacité : Excellent rapport paramètres/précision, rendant les variantes plus petites
-d0à-d2très légères. - Mise à l'échelle rigoureuse : La mise à l'échelle composée permet aux utilisateurs de choisir facilement une taille de modèle qui correspond à leur budget computationnel exact.
Points faibles :
- Intégration de framework hérité : L'implémentation originale repose fortement sur d'anciennes versions de TensorFlow, ce qui peut compliquer les pipelines de déploiement modernes.
- Entraînement plus lent : Entraîner EfficientDet à partir de zéro est notoirement lent et nécessite un réglage minutieux des hyperparamètres par rapport à la convergence rapide des architectures YOLO.
- Vitesse d'inférence : Bien qu'efficace en termes de paramètres, les opérations complexes du BiFPN entraînent souvent des vitesses d'inférence réelles plus lentes sur du matériel standard par rapport aux modèles YOLO hautement optimisés.
En savoir plus sur EfficientDet
Performances et benchmarks
Le véritable test de ces modèles réside dans leurs performances empiriques sur des benchmarks standard comme le jeu de données COCO. Le tableau ci-dessous illustre les différences critiques en nombre de paramètres, opérations en virgule flottante (FLOPs) et latence d'inférence sur des NVIDIA T4 GPUs.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv10n | 640 | 39.5 | - | 1.56 | 2,3 | 6.7 |
| YOLOv10s | 640 | 46.7 | - | 2.66 | 7.2 | 21,6 |
| YOLOv10m | 640 | 51.3 | - | 5.48 | 15.4 | 59,1 |
| YOLOv10b | 640 | 52.7 | - | 6.54 | 24.4 | 92,0 |
| YOLOv10l | 640 | 53.3 | - | 8.33 | 29.5 | 120,3 |
| YOLOv10x | 640 | 54,4 | - | 12.2 | 56.9 | 160,4 |
| 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 |
Comme indiqué ci-dessus, YOLOv10 maintient un avantage significatif en termes de vitesse d'inférence brute. Par exemple, YOLOv10-S atteint 46,7 mAP avec une latence TensorRT de seulement 2,66 ms, tandis qu'EfficientDet-d3 atteint un mAP similaire de 47,5 mais prend près de 20 ms, ce qui rend YOLOv10 largement supérieur pour le streaming vidéo en temps réel ou les pipelines de fabrication rapides.
Cas d'utilisation et recommandations
Le choix entre YOLOv10 et EfficientDet dépend des exigences spécifiques de ton projet, des contraintes de déploiement et de tes préférences en matière d'écosystème.
Quand choisir YOLOv10
YOLOv10 est un choix solide pour :
- Détection en temps réel sans NMS : Applications bénéficiant d'une détection de bout en bout sans suppression des non-maximums, réduisant la complexité de déploiement.
- Compromis vitesse-précision équilibrés : Projets nécessitant un bon équilibre entre la vitesse d'inférence et la précision de détection sur différentes échelles de modèles.
- Consistent-Latency Applications: Deployment scenarios where predictable inference times are critical, such as robotics or autonomous systems.
Quand choisir EfficientDet
EfficientDet est recommandé pour :
- Pipelines Google Cloud et TPU : Systèmes profondément intégrés aux API Google Cloud Vision ou à l'infrastructure TPU où EfficientDet bénéficie d'une optimisation native.
- Recherche sur la mise à l'échelle composée : Benchmarking académique axé sur l'étude des effets d'une mise à l'échelle équilibrée de la profondeur, de la largeur et de la résolution du réseau.
- Déploiement mobile via TFLite : Projets qui nécessitent spécifiquement l'exportation TensorFlow Lite pour Android ou des appareils Linux embarqués.
Quand choisir Ultralytics (YOLO26)
Pour la plupart des nouveaux projets, Ultralytics YOLO26 offre la meilleure combinaison de performance et d'expérience développeur :
- Déploiement Edge sans NMS : Applications nécessitant une inférence cohérente et à faible latence sans la complexité du post-traitement par suppression des non-maximums.
- Environnements 100 % CPU : Appareils sans accélération GPU dédiée, où l'inférence CPU jusqu'à 43 % plus rapide de YOLO26 offre un avantage décisif.
- Détection de petits objets : Scénarios difficiles comme l'imagerie par drone aérien ou l'analyse de capteurs IoT, où ProgLoss et STAL améliorent considérablement la précision sur les objets minuscules.
La norme moderne : Voici Ultralytics YOLO26
Alors que YOLOv10 a introduit le paradigme révolutionnaire sans NMS et qu'EfficientDet a démontré une mise à l'échelle rigoureuse, le paysage de la vision par ordinateur a continué d'évoluer. Pour les développeurs qui démarrent de nouveaux projets aujourd'hui, Ultralytics YOLO26 représente l'état de l'art incontesté. Sorti en janvier 2026, il fusionne le meilleur de tous les mondes dans un package hautement optimisé et prêt pour la production au sein de la plateforme Ultralytics.
Pourquoi YOLO26 surpasse la concurrence
- Conception de bout en bout sans NMS : YOLO26 adopte nativement l'architecture sans NMS de bout en bout initiée par YOLOv10, rationalisant le déploiement et accélérant l'inférence.
- Jusqu'à 43 % d'inférence CPU plus rapide : Pour les appareils de périphérie dépourvus d'accélérateurs dédiés, YOLO26 est spécifiquement optimisé pour fonctionner efficacement sur des processeurs standard.
- Optimiseur MuSGD avancé : Inspiré par les innovations en matière d'entraînement LLM, YOLO26 utilise un hybride de SGD et de Muon pour un entraînement incroyablement stable et une convergence rapide, améliorant considérablement l'efficacité de l'entraînement par rapport à EfficientDet.
- ProgLoss + STAL : Ces fonctions de perte améliorées offrent des gains remarquables dans la reconnaissance des petits objets, un point faible traditionnel pour YOLOv10 et EfficientDet.
- Suppression du DFL : En supprimant le Distribution Focal Loss, YOLO26 s'exporte de manière transparente vers presque n'importe quel format matériel, y compris OpenVINO et CoreML.
De plus, YOLO26 offre une polyvalence inégalée. Alors qu'EfficientDet et YOLOv10 sont strictement des modèles de détection, YOLO26 gère de manière transparente les boîtes englobantes orientées, la classification d'images et la segmentation d'instance en utilisant le même package Python Ultralytics intuitif.
Facilité d'utilisation avec Ultralytics
L'écosystème bien entretenu fourni par Ultralytics garantit une expérience développeur fluide. Entraîner un modèle, le valider et l'exporter vers une intégration TensorRT ne prend que quelques lignes de code.
from ultralytics import YOLO
# Load a pre-trained YOLOv10 model (or upgrade to YOLO26 natively)
model = YOLO("yolov10n.pt")
# Train the model efficiently on a custom dataset
model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference and immediately visualize results
results = model("https://ultralytics.com/images/bus.jpg")
results[0].show()
# Export for rapid deployment
model.export(format="engine", half=True)Conclusion
Lorsque tu compares YOLOv10 et EfficientDet, le choix dépend fortement de tes préférences de framework et de tes contraintes de vitesse. EfficientDet offre une approche structurée de la mise à l'échelle des modèles au sein de l'écosystème TensorFlow. Cependant, YOLOv10 offre des performances en temps réel supérieures, une utilisation moindre de la mémoire et un chemin de déploiement plus simple grâce à son architecture sans NMS.
Pour le meilleur équilibre absolu en termes de performance, de facilité d'utilisation et de polyvalence multi-tâches, la mise à niveau vers la plateforme Ultralytics et l'utilisation de YOLO26 sont fortement recommandées. Il reprend les innovations sans NMS de YOLOv10, applique des techniques d'entraînement de pointe comme l'optimiseur MuSGD, et les enveloppe dans un framework robuste et open-source soutenu par une immense communauté mondiale.