DAMO-YOLO vs YOLOX#
Le paysage de la vision par ordinateur en temps réel évolue constamment. Deux étapes majeures de cette évolution sont DAMO-YOLO et YOLOX, qui apportent chacun des innovations uniques à la détection d'objets à haute vitesse et haute précision. Bien que les deux modèles aient largement contribué à la communauté open source, il est essentiel pour les ingénieurs en machine learning de comprendre leurs différences architecturales, leurs méthodes d'entraînement et leurs scénarios de déploiement idéaux.
Ce guide complet explore les subtilités techniques des deux modèles et explique pourquoi les alternatives modernes comme la plateforme Ultralytics YOLO26 offrent de meilleures performances et une plus grande facilité d'utilisation dans les environnements de production actuels.
Présentation des modèles#
Détails de DAMO-YOLO#
Développé par une équipe de chercheurs d'Alibaba Group, DAMO-YOLO a été introduit comme une méthode de détection d'objets hautement efficace qui exploite la recherche d'architecture automatisée.
- 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
- Documentation : Documentation de DAMO-YOLO
Détails de YOLOX#
Créé par des chercheurs de Megvii, YOLOX a cherché à combler le fossé entre les communautés de recherche et industrielles en faisant basculer la série YOLO vers une conception sans ancres, ce qui simplifie 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 : 2021-07-18
- Arxiv : https://arxiv.org/abs/2107.08430
- GitHub : https://github.com/Megvii-BaseDetection/YOLOX
- Documentation : Documentation de YOLOX
Analyse architecturale#
Architecture de DAMO-YOLO#
DAMO-YOLO repose largement sur la recherche d'architecture neuronale (NAS). Ses composants principaux comprennent :
- Ossatures MAE-NAS : Utilise une recherche guidée par l'entropie maximale pour découvrir des ossatures qui offrent l'équilibre optimal entre la vitesse d'inférence et la précision.
- Efficient RepGFPN : une architecture neck lourde adaptée à la fusion des caractéristiques, qui aide le modèle à maintenir une grande précision avec des objets de différentes échelles.
- ZeroHead : une tête de détection simplifiée et légère qui réduit la charge de calcul des dernières couches de prédiction.
Architecture de YOLOX#
YOLOX adopte une approche différente, axée sur la simplicité structurelle et une conception sans ancres :
- Mécanisme sans ancres : en prédisant directement les coordonnées des boîtes englobantes sans ancres prédéfinies, YOLOX réduit le nombre de paramètres de conception et les ajustements heuristiques nécessaires.
- Tête découplée : elle sépare les tâches de classification et de régression en différentes branches de caractéristiques, ce qui améliore la vitesse de convergence et la précision globale.
- Attribution des labels SimOTA : une stratégie avancée d'attribution des labels qui alloue dynamiquement les échantillons positifs aux vérités terrain, améliorant ainsi 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 strictes, YOLOX s'appuie sur d'élégantes simplifications conçues par l'humain, comme les têtes sans ancres, afin de rationaliser le pipeline de détection d'objets.
Comparaison des performances#
L'évaluation de ces modèles nécessite d'examiner la précision moyenne (mAP), les vitesses d'inférence et le nombre de paramètres. Le tableau ci-dessous présente une comparaison détaillée des variantes standard et légères des deux architectures.
| 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 |
| 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 la mAP absolue la plus élevée, à 51.1, DAMO-YOLOl offre une mAP très compétitive de 50.8 avec moins de la moitié des paramètres (42.1M contre 99.1M) et une exécution TensorRT nettement plus rapide.
Méthodes d'entraînement#
Entraînement de DAMO-YOLO#
DAMO-YOLO utilise une distillation complexe des connaissances pendant l'entraînement. Souvent, un grand modèle « enseignant » est d'abord entraîné, puis ses connaissances sont distillées dans des modèles « étudiants » plus petits. Il utilise également AlignedOTA pour l'attribution dynamique des labels. Bien que très efficace, ce processus d'entraînement en plusieurs étapes augmente considérablement le temps de calcul GPU et la surcharge mémoire nécessaires.
Entraînement de YOLOX#
YOLOX repose sur de puissantes stratégies d'augmentation des données comme MixUp et Mosaic. Cependant, les auteurs ont découvert que désactiver ces augmentations fortes pendant les 15 dernières époques permet au modèle de réduire l'écart avec la réalité, augmentant considérablement les métriques de précision finales.
Cas d’utilisation idéaux#
- DAMO-YOLO : convient particulièrement aux déploiements industriels critiques où des pipelines de distillation côté serveur peuvent être pris en charge et où le matériel cible, comme certains GPU NVIDIA, bénéficie directement de son architecture NAS à neck lourd.
- YOLOX : excellent choix pour les développeurs qui recherchent une approche entièrement sans ancres. L'élément extrêmement léger
YOLOXnanoest adapté aux anciens appareils Android, à l'informatique en périphérie et aux capteurs IoT très limités où le nombre de paramètres constitue le principal goulot d'étranglement.
L'avantage Ultralytics : découvre YOLO26#
Bien que DAMO-YOLO et YOLOX représentent d'excellentes étapes, les développeurs exigent aujourd'hui des solutions plus complètes, polyvalentes et faciles à utiliser. C'est là que la plateforme Ultralytics et le Ultralytics YOLO26 récemment publié se distinguent.
Sorti en janvier 2026, YOLO26 est le modèle recommandé par excellence pour toutes les tâches de vision par ordinateur. Il introduit une série d'innovations qui surpassent les architectures plus anciennes :
- Conception de bout en bout sans NMS : YOLO26 élimine nativement le post-traitement de suppression des non-maxima (NMS). Cela permet un déploiement nettement plus simple et plus rapide, en évitant les goulots d'étranglement liés à la latence des têtes de détection traditionnelles.
- Inférence CPU jusqu'à 43 % 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é des techniques d'entraînement des grands modèles de langage (LLM), YOLO26 introduit l'optimiseur MuSGD, un hybride de SGD et Muon, qui permet des entraînements très stables et une convergence beaucoup plus rapide que les configurations traditionnelles de YOLOX.
- ProgLoss + STAL : ces fonctions de perte avancées améliorent notablement la reconnaissance des petits objets, rendant YOLO26 largement supérieur pour les images prises par drone et la robotique.
- Polyvalence : contrairement à DAMO-YOLO, strictement destiné à la détection d'objets, YOLO26 prend en charge de manière fluide la segmentation d'instances, l'estimation de pose, la classification et les boîtes englobantes orientées (OBB), nativement au sein du même écosystème bien maintenu.
Facilité d'utilisation avec Ultralytics#
L'API Python d'Ultralytics simplifie l'expérience des développeurs. L'entraînement d'un modèle YOLO26 de pointe nécessite beaucoup moins de code passe-partout et évite les pipelines de distillation complexes de DAMO-YOLO. De plus, les modèles Ultralytics nécessitent exceptionnellement peu de mémoire CUDA pendant l'entraînement par rapport aux modèles lourds basés sur des Transformers.
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 sur l'edge à l'aide de la plateforme Ultralytics, qui gère pour toi le versionnage des données et la mise à disposition de GPU cloud.
Conclusion#
Le choix entre DAMO-YOLO et YOLOX dépend de contraintes spécifiques : DAMO-YOLO offre des rapports vitesse-précision exceptionnels sur certains GPU grâce au NAS, tandis que YOLOX propose une conception épurée et sans ancres, idéale pour les scénarios edge légers.
Cependant, pour les équipes à la recherche d'une solution moderne et pérenne, soutenue par une communauté active, l'architecture Ultralytics YOLO26 constitue le choix définitif. Sa conception sans NMS, sa rapide inférence CPU et son API unifiée pour les tâches de détection, de segmentation et de pose la rendent inégalée pour passer en douceur de la recherche à une production robuste dans le monde réel.
Pour les développeurs souhaitant explorer d'autres architectures modernes, nous recommandons également de découvrir Ultralytics YOLO11 ou des modèles basés sur des Transformers comme RT-DETR, disponibles dans la documentation complète d'Ultralytics.