Passer au contenu

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 étapes importantes dans cette évolution sont YOLO et YOLOX, qui apportent chacune des innovations uniques au problème de la détection d'objets à grande vitesse et haute précision. Bien que ces deux modèles aient apporté une contribution significative à la communauté open source, il est essentiel pour les ingénieurs en apprentissage automatique de comprendre leurs différences architecturales, leurs méthodologies de formation et leurs scénarios de déploiement idéaux.

Ce guide complet explore les nuances techniques des deux modèles et souligne pourquoi les alternatives modernes telles que la plateforme Ultralytics offrent des performances supérieures et une grande facilité d'utilisation pour les environnements de production actuels.

Aperçus des modèles

YOLO

Développé par une équipe de chercheurs du groupe Alibaba, DAMO-YOLO a été introduit comme une méthode de détection d'objets très efficace qui exploite la découverte 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 DAMO-YOLO

En savoir plus sur DAMO-YOLO

Détails YOLOX

Créé par des chercheurs de Megvii, YOLOX visait à combler le fossé entre les communautés de recherche et industrielles en faisant passer la série YOLO à une conception sans ancre, simplifiant drastiquement l'architecture tout en atteignant 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 YOLOX

En savoir plus sur YOLOX

Analyse architecturale

Architecture de DAMO-YOLO

DAMO-YOLO s'appuie fortement sur la recherche d'architecture neuronale (NAS). Les composants clés incluent :

  • Backbones MAE-NAS : Utilise un algorithme de recherche évolutionnaire multi-objectif pour découvrir des backbones qui offrent l'équilibre optimal entre vitesse d'inférence et précision.
  • RepGFPN Efficace : Une conception de type "heavy-neck" adaptée à la fusion de caractéristiques, ce qui aide le modèle à maintenir une grande précision sur différentes échelles d'objets.
  • ZeroHead: Une tête de détection simplifiée et légère qui réduit la charge computationnelle dans les couches de prédiction finales.

Architecture YOLOX

YOLOX a adopté une approche différente, en mettant l'accent sur la simplicité structurelle et une conception sans ancrage :

  • 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 d'ajustements heuristiques requis.
  • 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.
  • Assignation d'étiquettes SimOTA: Une stratégie avancée d'assignation d'étiquettes qui alloue dynamiquement des échantillons positifs aux vérités terrain, améliorant l'efficacité de l'entraînement.

Philosophies de conception

Alors queYOLO des recherches NAS automatisées pour trouver des architectures optimales dans des conditions très contraignantes, YOLOX s'appuie sur des simplifications élégantes conçues par l'homme (comme les têtes sans ancrage) pour rationaliser le processus de détection d'objets.

Comparaison des performances

Pour évaluer ces modèles, il faut examiner la précision moyenne (mAP), les vitesses d'inférence et le nombre de paramètres. Vous trouverez ci-dessous un tableau comparatif détaillé des variantes standard et allégées pour les deux architectures.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3
YOLOXnano41625.8--0.911.08
YOLOXtiny41632.8--5.066.45
YOLOXs64040.5-2.569.026.8
YOLOXm64046.9-5.4325.373.8
YOLOXl64049.7-9.0454.2155.6
YOLOXx64051.1-16.199.1281.9

Alors que YOLOXx atteint le mAP absolu le plus élevé mAP 51,1, DAMO-YOLOl offre un mAP très compétitif de 50,8 mAP moins de la moitié des paramètres (42,1 millions contre 99,1 millions) et TensorRT nettement plus rapide.

Méthodologies d'entraînement

FormationYOLO

DAMO-YOLO utilise une amélioration complexe par distillation pendant l'entraînement. Souvent, un grand modèle "enseignant" est d'abord entraîné, et ses connaissances sont distillées dans les plus petits modèles "étudiants". Il utilise également AlignedOTA pour l'assignation dynamique d'étiquettes. Bien que très efficace, ce processus d'entraînement multi-étapes augmente drastiquement le temps de calcul GPU et la surcharge mémoire requis.

Formation YOLOX

YOLOX s'appuie sur des stratégies d'augmentation des données puissantes telles que MixUp Mosaic. Cependant, les auteurs ont découvert que la désactivation de ces augmentations puissantes pendant les 15 derniers cycles permettait au modèle de combler l'écart avec la réalité, améliorant ainsi considérablement les mesures de précision finales.

Cas d'utilisation idéaux

  • DAMO-YOLO : Idéalement adapté aux déploiements industriels à enjeux élevés où les 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 à col lourd.
  • YOLOX : Excellent pour les développeurs à la recherche d'une approche pure sans ancrage. Extrêmement léger. YOLOXnano rend cela viable pour Android anciens Android , informatique en périphérie, et les capteurs IoT très contraints où le nombre de paramètres est le goulot d'étranglement absolu.

Ultralytics : entrez YOLO26

SiYOLO YOLOX constituent des avancées remarquables, les développeurs exigent aujourd'hui des solutions plus complètes, polyvalentes et faciles à utiliser. C'est là que la Ultralytics et le tout nouveau Ultralytics entrent en jeu.

Sorti en janvier 2026, YOLO26 est le modèle ultime recommandé 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 par Non-Maximum Suppression (NMS). Cela permet un déploiement significativement plus simple et plus rapide, évitant les goulots d'étranglement de latence inhérents aux têtes de détection traditionnelles.
  • Inférence CPU jusqu'à 43 % plus rapide : En supprimant stratégiquement la Distribution Focal Loss (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 linguistiques (LLM), YOLO26 introduit l'optimiseur MuSGD (un hybride de SGD et Muon), ce qui se traduit par 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 apportent des améliorations notables à la reconnaissance des petits objets, rendant YOLO26 nettement supérieur pour les séquences 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'instances, l'estimation de pose, la classification et les boîtes englobantes orientées (OBB) nativement au sein du même écosystème bien entretenu.

En savoir plus sur YOLO26

Facilité d'utilisation avec Ultralytics

Python Ultralytics simplifie l'expérience des développeurs. L'entraînement d'un modèle YOLO26 de pointe nécessite beaucoup moins de code standard et évite les pipelines de distillation complexes deYOLO. De plus, Ultralytics ont des besoins CUDA exceptionnellement faibles pendant l'entraînement par rapport aux modèles lourds basés sur des transformateurs.

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")

Entraînement et déploiement dans le cloud

Vous pouvez automatiquement annoter, entraîner et déployer des modèles à la périphérie à l'aide de la Ultralytics , qui gère pour vous toutes les versions des données et GPU dans le cloud.

Conclusion

Le choix 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 propose une conception propre et sans ancre, idéale pour les scénarios légers en périphérie.

Cependant, pour les équipes à la recherche d'une solution moderne et évolutive avec une communauté active, l'architecture Ultralytics est le choix incontournable. Sa conception NMS, CPU rapide et son API unifiée pour les tâches de détection, de segmentation et de pose en font un outil inégalé pour passer en douceur de la recherche à une production robuste dans le monde réel.

Pour les développeurs intéressés par d'autres architectures modernes, nous recommandons également de consulter Ultralytics YOLO11 ou des modèles basés sur des transformateurs tels que RT-DETR disponibles dans la Ultralytics complète Ultralytics .


Commentaires