DAMO-YOLO vs. YOLO11 : Une comparaison technique
Dans le paysage en évolution rapide de la vision par ordinateur, le choix du bon modèle de détection d'objets est essentiel pour la réussite d'une application. Cette comparaison complète analyse deux architectures importantes : DAMO-YOLO, développé par Alibaba Group, et Ultralytics YOLO11, le dernier modèle de pointe d'Ultralytics. Bien que les deux modèles visent à optimiser le compromis entre vitesse et précision, ils servent des objectifs principaux différents et offrent des avantages distincts en fonction du scénario de déploiement.
Ce guide fournit un aperçu approfondi de leurs architectures, de leurs mesures de performance et de leurs cas d'utilisation idéaux pour aider les développeurs et les chercheurs à prendre des décisions éclairées.
DAMO-YOLO
Auteurs : Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang et Xiuyu Sun
Organisation :Alibaba Group
Date : 2022-11-23
Arxiv :https://arxiv.org/abs/2211.15444v2
GitHub :https://github.com/tinyvision/DAMO-YOLO
Docs :https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md
DAMO-YOLO est un framework de détection d'objets qui intègre plusieurs technologies de pointe pour atteindre des performances élevées. Il se concentre sur la réduction de la latence tout en maintenant une précision compétitive grâce à une série d'innovations architecturales issues de la recherche d'Alibaba.
Architecture et innovation
DAMO-YOLO introduit une approche de "Distillation et Sélection" et intègre les composants clés suivants :
- L'épine dorsale MAE-NAS : Grâce à la recherche d'architecture neuronale (NAS), l'épine dorsale est optimisée en fonction de contraintes spécifiques afin de garantir une extraction efficace des caractéristiques.
- RepGFPN efficace : Un réseau de pyramide de caractéristiques généralisé (GFPN) utilise intensivement des mécanismes de reparamétrisation pour améliorer la fusion des caractéristiques à différentes échelles sans entraîner de coûts de calcul importants pendant l’inférence.
- ZeroHead : Cette tête de détection légère découple les tâches de classification et de régression, dans le but de maximiser la vitesse d’inférence.
- AlignedOTA : Une stratégie d’attribution d’étiquettes qui résout le désalignement entre les cibles de classification et de régression, améliorant ainsi la convergence pendant la formation.
Bien que DAMO-YOLO présente des avancées théoriques impressionnantes, il s'agit principalement d'un cadre axé sur la recherche et concentré sur la détection d'objets. Il manque généralement la prise en charge native multi-tâches que l'on trouve dans les écosystèmes plus complets.
Ultralytics YOLO11
Auteurs : Glenn Jocher, Jing Qiu
Organisation :Ultralytics
Date : 2024-09-27
GitHub :https://github.com/ultralytics/ultralytics
Docs :https://docs.ultralytics.com/models/yolo11/
Ultralytics YOLO11 représente le summum de la vision par ordinateur en temps réel, affinant l'héritage de la série YOLO avec des améliorations significatives en matière d'architecture, d'efficacité et de facilité d'utilisation. Il est conçu non seulement comme un modèle, mais aussi comme un outil polyvalent pour un déploiement pratique et réel dans divers environnements matériels.
Architecture et écosystème
YOLO11 s'appuie sur les succès précédents avec une architecture sans ancrage raffinée. Il dispose d'une dorsale améliorée pour une extraction de caractéristiques supérieure et d'une conception de col modifiée qui améliore le flux d'informations à différentes échelles.
Les principaux avantages du framework Ultralytics YOLO11 sont les suivants :
- Polyvalence : Contrairement à de nombreux concurrents, YOLO11 prend en charge nativement un large éventail de tâches, notamment la détection d’objets, la segmentation d’instance, l’estimation de pose, la classification d’images et les boîtes englobantes orientées (OBB).
- Facilité d'utilisation : Le modèle est encapsulé dans une API Python conviviale et une CLI, le rendant accessible aux débutants comme aux experts.
- Efficacité de l'entraînement : Optimisé pour une convergence plus rapide, YOLO11 utilise des fonctions d'augmentation des données et de perte efficaces, permettant aux utilisateurs d'entraîner des modèles personnalisés sur des ensembles de données tels que COCO avec une surcharge de ressources moindre.
- Écosystème bien maintenu : Soutenu par l’équipe Ultralytics, les utilisateurs bénéficient de mises à jour fréquentes, d’une documentation complète et d’une intégration transparente avec les outils MLOps tels que Ultralytics HUB.
Le saviez-vous ?
YOLO11 est conçu pour être très efficace sur les appareils Edge AI. Son architecture optimisée garantit une faible utilisation de la mémoire et des vitesses d'inférence élevées sur du matériel tel que NVIDIA Jetson et Raspberry Pi, ce qui en fait un choix supérieur pour les applications embarquées par rapport aux modèles basés sur les transformateurs plus lourds.
Comparaison des performances
Le graphique et le tableau suivants illustrent les différences de performance entre DAMO-YOLO et YOLO11. Ultralytics YOLO11 démontre constamment une précision supérieure (mAP) et des vitesses d'inférence favorables, en particulier sur le matériel CPU où DAMO-YOLO ne dispose pas de benchmarks officiels.
| Modèle | Taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
Analyse des résultats
- Précision : YOLO11 surpasse considérablement les modèles DAMO-YOLO comparables. Par exemple, YOLO11m atteint un mAP de 51,5, sensiblement plus élevé que DAMO-YOLOm à 49,2 mAP, malgré un nombre de paramètres inférieur (20,1 M contre 28,2 M).
- Vitesse d'inférence : Sur GPU (T4 TensorRT), YOLO11 offre une latence très compétitive. YOLO11n est incroyablement rapide avec 1,5 ms, ce qui le rend adapté aux applications à très faible latence.
- Performance du CPU : Un avantage majeur des modèles Ultralytics est leur transparence en ce qui concerne les performances du CPU. YOLO11 est optimisé pour l’inférence CPU via ONNX et OpenVINO, tandis que DAMO-YOLO se concentre fortement sur le GPU, laissant souvent les performances de déploiement du CPU non définies.
- Efficacité du modèle : YOLO11 démontre un meilleur équilibre entre les paramètres et les performances. L'efficacité architecturale permet d'obtenir des fichiers de modèle plus petits, ce qui se traduit par des téléchargements plus rapides et des besoins de stockage moindres sur les appareils périphériques.
Principaux facteurs de différenciation et cas d’utilisation
Points forts d'Ultralytics YOLO11
Les développeurs utilisant Ultralytics YOLO11 bénéficient d'un environnement de qualité robuste pour la production.
- Équilibre des performances : L'architecture du modèle est méticuleusement réglée pour offrir le meilleur compromis entre la vitesse d'inférence et la précision, ce qui est crucial pour l'analyse vidéo en temps réel.
- Capacités multi-tâches : Si la portée de votre projet s'étend de la détection au track ou à la segmentation, YOLO11 gère cela de manière transparente au sein du même code.
- Facilité d'utilisation : L'argument
ultralyticspackage simplifie l'ensemble du pipeline. Charger un modèle, exécuter des prédictions et exporter vers des formats tels que CoreML, TFLite ou TensorRT peut se faire avec seulement quelques lignes de code. - Exigences de mémoire réduites : Comparé aux détecteurs à base de transformateurs ou aux architectures non optimisées, YOLO11 nécessite généralement moins de mémoire CUDA pendant l'entraînement, ce qui permet aux chercheurs de s'entraîner sur des GPU grand public.
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11n.pt")
# Train on a custom dataset
model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run inference on an image
results = model("path/to/image.jpg")
Points forts de DAMO-YOLO
DAMO-YOLO est un concurrent sérieux dans les cercles de recherche universitaires.
- Innovation en matière de recherche : Des fonctionnalités telles que MAE-NAS et ZeroHead offrent des aperçus intéressants sur la recherche d’architecture neuronale et le découplage de la tête.
- Débit du GPU : Pour les applications industrielles spécifiques s'exécutant exclusivement sur les GPU pris en charge, DAMO-YOLO offre un débit élevé, bien qu'il soit souvent à la traîne derrière YOLO11 en termes d'efficacité pure précision par paramètre.
Conclusion
Bien que DAMO-YOLO introduise des concepts novateurs de l'équipe de recherche d'Alibaba, Ultralytics YOLO11 se distingue comme le choix supérieur pour la grande majorité des développeurs et des entreprises. Sa domination est définie non seulement par des scores mAP plus élevés et une inférence plus rapide, mais aussi par l'écosystème complet qui le prend en charge.
De la facilité d'utilisation et de la polyvalence à une base de code bien maintenue et à un soutien communautaire actif, YOLO11 abaisse la barrière à l'entrée pour la création de solutions d'IA avancées. Qu'il s'agisse de déploiement sur des serveurs cloud ou des appareils périphériques aux ressources limitées, YOLO11 offre la fiabilité et les performances nécessaires aux applications modernes de vision par ordinateur.
Explorer d’autres comparaisons de modèles
Pour mieux comprendre comment les modèles Ultralytics se comparent à d'autres architectures, consultez nos pages de comparaison détaillées :