DAMO-YOLO vs. YOLOX : Une comparaison technique complète
Le paysage de la vision par ordinateur en temps réel est en constante évolution. Deux jalons notables de ce parcours sont DAMO-YOLO et YOLOX, chacun apportant des innovations uniques au problème de la détection d'objets haute vitesse et haute précision. Bien que les deux modèles aient contribué de manière significative à la communauté open-source, comprendre leurs différences architecturales, leurs méthodologies d'entraînement et leurs scénarios de déploiement idéaux est crucial pour les ingénieurs en apprentissage automatique.
Ce guide complet explore les nuances techniques des deux modèles et souligne pourquoi des alternatives modernes comme la plateforme Ultralytics YOLO26 offrent des performances supérieures et une facilité d'utilisation pour les environnements de production d'aujourd'hui.
Présentation des modèles
Détails sur DAMO-YOLO
Développé par une équipe de chercheurs chez Alibaba Group, DAMO-YOLO a été introduit comme une méthode de détection d'objets très efficace qui tire parti de la découverte automatique d'architecture.
Auteurs : Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang et Xiuyu Sun
Organisation : Alibaba Group
Date : 23/11/2022
Arxiv : https://arxiv.org/abs/2211.15444v2
GitHub : https://github.com/tinyvision/DAMO-YOLO
Docs : Documentation de DAMO-YOLO
Détails de YOLOX
Créé par des chercheurs chez Megvii, YOLOX visait à combler le fossé entre les communautés de recherche et industrielles en faisant passer la série YOLO à une conception sans ancres, simplifiant radicalement l'architecture tout en obtenant de meilleures performances à l'époque.
Auteurs : Zheng Ge, Songtao Liu, Feng Wang, Zeming Li et Jian Sun
Organisation : Megvii
Date : 18/07/2021
Arxiv : https://arxiv.org/abs/2107.08430
GitHub : https://github.com/Megvii-BaseDetection/YOLOX
Docs : Documentation de YOLOX
Analyse architecturale
Architecture de DAMO-YOLO
DAMO-YOLO repose fortement sur la recherche d'architecture neuronale (NAS). Les composants principaux incluent :
- Backbones MAE-NAS : utilise un algorithme de recherche évolutionnaire multi-objectifs pour découvrir des backbones qui offrent l'équilibre optimal entre la vitesse d'inférence et la précision.
- Efficient RepGFPN : une conception à cou lourd adaptée pour la fusion de caractéristiques, qui aide le modèle à maintenir une haute précision à travers différentes échelles d'objets.
- ZeroHead : une tête de détection simplifiée et légère qui réduit la surcharge computationnelle dans les couches de prédiction finales.
Architecture de YOLOX
YOLOX a adopté une approche différente, se concentrant sur la simplicité structurelle et une conception sans ancres :
- Mécanisme sans ancres : en prédisant les coordonnées de la bbox directement sans ancres prédéfinies, YOLOX réduit le nombre de paramètres de conception et le réglage heuristique requis.
- Tête découplée : il sépare les tâches de classification et de régression dans différentes branches de caractéristiques, ce qui améliore la vitesse de convergence et la précision globale.
- Affectation d'étiquettes SimOTA : une stratégie avancée d'affectation d'étiquettes qui alloue dynamiquement des échantillons positifs aux vérités terrain, améliorant l'efficacité de l'entraînement.
Alors que DAMO-YOLO utilise des recherches NAS pilotées par machine pour trouver des architectures optimales sous des contraintes serrées, YOLOX exploite d'élégantes simplifications conçues par l'homme (comme les têtes sans ancres) pour rationaliser le pipeline de détection d'objets.
Comparaison des performances
Évaluer ces modèles nécessite d'examiner la précision moyenne (mAP), les vitesses d'inférence et le nombre de paramètres. Voici ci-dessous un tableau de comparaison détaillé des variantes standard et légères pour les deux architectures.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | params (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 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
Alors que YOLOXx atteint le mAP absolu le plus élevé à 51,1, DAMO-YOLOl délivre un mAP de 50,8 très compétitif avec moins de la moitié des paramètres (42,1M contre 99,1M) et une exécution TensorRT nettement plus rapide.
Méthodologies d'entraînement
Entraînement de DAMO-YOLO
DAMO-YOLO utilise une amélioration par distillation complexe pendant l'entraînement. Souvent, un grand modèle « enseignant » est entraîné en premier, et ses connaissances sont distillées dans des modèles « étudiants » plus petits. Il utilise également AlignedOTA pour l'affectation dynamique des étiquettes. Bien que très efficace, ce processus d'entraînement multi-étapes augmente considérablement le temps de calcul GPU et la surcharge mémoire requis.
Entraînement de YOLOX
YOLOX s'appuie sur des stratégies d'augmentation de données fortes comme MixUp et Mosaic. Cependant, les auteurs ont découvert que désactiver ces fortes augmentations pour les 15 dernières époques permet au modèle de combler l'écart avec la réalité, boostant considérablement les métriques de précision finale.
Cas d'utilisation idéaux
- DAMO-YOLO : mieux adapté aux déploiements industriels à enjeux élevés où des pipelines de distillation côté serveur peuvent être pris en charge, et où le matériel cible (comme des GPU NVIDIA spécifiques) bénéficie directement de son architecture NAS à cou lourd.
- YOLOX : excellent pour les développeurs recherchant une approche purement sans ancres. Le
YOLOXnanoextrêmement léger le rend viable pour les appareils Android hérités, le edge computing et les capteurs IoT très contraints où le nombre de paramètres est le goulot d'étranglement absolu.
L'avantage Ultralytics : place à YOLO26
Bien que DAMO-YOLO et YOLOX représentent d'excellents jalons, les développeurs exigent aujourd'hui des solutions plus complètes, polyvalentes et faciles à utiliser. C'est là que la Plateforme Ultralytics et le tout nouveau Ultralytics YOLO26 brillent.
Sorti en janvier 2026, YOLO26 est le modèle ultime recommandé pour toutes les tâches de vision par ordinateur. Il introduit une suite de percées qui surpassent les anciennes architectures :
- Conception de bout en bout sans NMS : YOLO26 élimine nativement le post-traitement de suppression non maximale (NMS). Cela permet un déploiement nettement plus simple et plus rapide, évitant les goulots d'étranglement de latence inhérents aux têtes de détection traditionnelles.
- Jusqu'à 43 % d'inférence CPU plus rapide : En supprimant stratégiquement la perte focale de distribution (DFL) et en optimisant les couches, YOLO26 offre des vitesses inégalées sur les CPU et le matériel edge.
- Optimiseur MuSGD : Inspiré par les techniques d'entraînement des grands modèles de langage (LLM), YOLO26 introduit l'optimiseur MuSGD (un hybride de SGD et Muon), résultant en des exécutions d'entraînement très stables et une convergence beaucoup plus rapide par rapport aux configurations héritées de YOLOX.
- ProgLoss + STAL : Ces fonctions de perte avancées produisent des améliorations notables dans la reconnaissance des petits objets, rendant YOLO26 bien supérieur pour les images de drones et la robotique.
- Polyvalence : Contrairement à DAMO-YOLO, qui est strictement destiné à la détection d'objets, YOLO26 gère de manière transparente la segmentation d'instance, l' estimation de pose, la classification et les BBox orientées (OBB) nativement au sein du même écosystème bien maintenu.
Facilité d'utilisation avec Ultralytics
L'API Python d'Ultralytics rationalise l'expérience du développeur. Entraîner un modèle YOLO26 de pointe nécessite beaucoup moins de code répétitif et évite les pipelines de distillation complexes de DAMO-YOLO. De plus, les modèles Ultralytics présentent des besoins en mémoire CUDA exceptionnellement bas pendant l'entraînement par rapport aux modèles lourds basés sur Transformer.
from ultralytics import YOLO
# Load the latest Ultralytics YOLO26 nano model
model = YOLO("yolo26n.pt")
# Train the model on your custom dataset with one line of code
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Run fast, NMS-free inference on an image
results = model("https://ultralytics.com/images/bus.jpg")
# Export to ONNX or TensorRT seamlessly
model.export(format="onnx")Tu peux annoter, entraîner et déployer automatiquement des modèles vers l'edge en utilisant la Plateforme Ultralytics, qui gère tout le versionnage des données et l'approvisionnement en GPU cloud pour toi.
Conclusion
Choisir entre DAMO-YOLO et YOLOX dépend de contraintes spécifiques : DAMO-YOLO offre des ratios vitesse-précision exceptionnels sur des GPU spécifiques via NAS, tandis que YOLOX fournit une conception propre et sans ancres idéale pour les scénarios edge légers.
Cependant, pour les équipes recherchant une solution moderne et pérenne avec une communauté active, l'architecture Ultralytics YOLO26 est le choix définitif. Sa conception sans NMS, son inférence CPU rapide et son API unifiée pour les tâches de détection, segmentation et pose la rendent inégalée pour passer en douceur de la recherche à une production réelle robuste.
Pour les développeurs intéressés par l'exploration d'autres architectures modernes, nous recommandons également de consulter Ultralytics YOLO11 ou les modèles basés sur Transformer comme RT-DETR disponibles dans la documentation complète d'Ultralytics.