Ultralytics YOLO27 :
Get Started

YOLOX vs YOLOv6-3.0#

L’évolution de la vision par ordinateur est largement marquée par les progrès rapides de la série YOLO. Choisir la bonne architecture pour ton déploiement revient souvent à trouver un équilibre entre débit brut, simplicité architecturale et efficacité de l’entraînement. Deux jalons importants de cette évolution sont l’orientation de YOLOX vers la recherche sans ancres et le débit industriel hautement optimisé de YOLOv6-3.0.

Cette comparaison technique détaille leurs différences architecturales, leurs indicateurs de performance et leurs cas d’utilisation idéaux, tout en présentant les capacités de nouvelle génération d’Ultralytics YOLO26 aux développeurs en quête de la solution ultime de déploiement en périphérie et dans le cloud.

YOLOX : faire le lien entre recherche et industrie#

Développé par des chercheurs de Megvii, YOLOX a été présenté comme une évolution majeure visant à simplifier l’architecture YOLO en la rendant entièrement sans ancres.

Points forts de l’architecture#

YOLOX a intégré avec succès une conception sans ancres à la famille YOLO. En éliminant les boîtes d’ancrage prédéfinies, le modèle réduit considérablement le nombre de paramètres de conception et les ajustements heuristiques nécessaires pendant l’entraînement. YOLOX s’adapte ainsi facilement à divers jeux de données personnalisés sans recalcul manuel des ancres.

De plus, YOLOX a introduit une architecture à tête découplée. En répartissant les tâches de classification et de régression dans des branches distinctes, le modèle résout le conflit inhérent entre déterminer ce qu’est un objet et où il se trouve. Associé à la stratégie d’attribution des étiquettes SimOTA, YOLOX accélère la convergence et améliore la précision moyenne (mAP).

En savoir plus sur YOLOX

Avantage de l’absence d’ancres

Les détecteurs sans ancres comme YOLOX donnent souvent de meilleurs résultats sur les jeux de données personnalisés contenant des objets aux proportions inhabituelles, car ils ne dépendent pas de boîtes englobantes de référence fixes qui pourraient ne pas correspondre aux nouvelles données.

YOLOv6-3.0 : le poids lourd de l’industrie#

Développé par le département Vision AI de Meituan, YOLOv6-3.0 est résolument conçu pour maximiser le débit industriel, en particulier sur les GPU NVIDIA avec des accélérateurs matériels comme TensorRT.

  • Auteurs : Chuyi Li, Lulu Li, Yifei Geng, et al.
  • Organisation : Meituan
  • Date : 2023-01-13
  • Arxiv : 2301.05586
  • GitHub : meituan/YOLOv6

Optimisation pour le déploiement#

YOLOv6-3.0 vise à maximiser l’utilisation du GPU. Il introduit un module de concaténation bidirectionnelle (BiC) dans le cou, afin d’améliorer la fusion des caractéristiques tout en conservant des vitesses d’inférence élevées. Bien que la phase d’inférence soit entièrement sans ancres, YOLOv6-3.0 utilise une stratégie innovante d’entraînement assisté par ancres (AAT) pour bénéficier de la stabilité des méthodes à base d’ancres pendant l’entraînement.

Le backbone repose sur l’architecture EfficientRep, conçue pour le matériel et spécifiquement pensée pour réduire les coûts d’accès à la mémoire et maximiser la densité de calcul sur les accélérateurs modernes. YOLOv6 est ainsi un candidat particulièrement performant pour l’analyse vidéo côté serveur.

En savoir plus sur YOLOv6

Comparaison des performances#

Pour comparer ces modèles, les développeurs doivent mettre en balance la précision brute, la vitesse d’inférence et le nombre de paramètres. Le tableau suivant présente les performances des deux familles de modèles pour différentes tailles.

Modèletaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
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
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7

YOLOv6-3.0 affiche une mAP supérieure et d’excellentes vitesses avec TensorRT pour les variantes les plus grandes, mais YOLOX reste très compétitif grâce à sa simplicité et à ses performances robustes sur du matériel ancien.

Cas d’utilisation et recommandations#

Le choix entre YOLOX et YOLOv6 dépend des besoins spécifiques de ton projet, de tes contraintes de déploiement et de tes préférences en matière d’écosystème.

Quand choisir YOLOX#

YOLOX est un excellent choix pour :

  • Recherche sur la détection sans ancres : recherche universitaire qui utilise l’architecture épurée sans ancres de YOLOX comme référence pour expérimenter de nouvelles têtes de détection ou fonctions de perte.
  • Appareils périphériques ultralégers : déploiement sur des microcontrôleurs ou du matériel mobile ancien, où l’empreinte extrêmement réduite (0,91 M de paramètres) de la variante YOLOX-Nano est essentielle.
  • Études sur l’assignation d’étiquettes SimOTA : projets de recherche qui étudient les stratégies d’assignation d’étiquettes basées sur le transport optimal et leur impact sur la convergence de l’entraînement.

Quand choisir YOLOv6#

YOLOv6 est recommandé pour :

  • Déploiement adapté au matériel industriel : les scénarios où la conception de YOLOv6, adaptée au matériel, et son reparamétrage efficace optimisent les performances sur un matériel cible spécifique.
  • Détection rapide à un seul étage : les applications qui privilégient la vitesse d’inférence brute sur GPU pour le traitement vidéo en temps réel dans des environnements contrôlés.
  • Intégration à l’écosystème Meituan : les équipes qui travaillent déjà dans la pile technologique et l’infrastructure de déploiement de Meituan.

Quand choisir Ultralytics (YOLO26)#

Pour la plupart des nouveaux projets, Ultralytics YOLO26 offre le meilleur équilibre entre performances et expérience développeur :

  • Déploiement en périphérie sans NMS : les applications qui exigent des inférences à faible latence et constantes, sans la complexité du post-traitement par suppression non maximale.
  • Environnements exclusivement CPU : les appareils dépourvus d’accélération GPU dédiée, où l’inférence CPU jusqu’à 43 % plus rapide de YOLO26 constitue un avantage décisif.
  • Détection de petits objets : les situations difficiles, comme l’imagerie aérienne par drone ou l’analyse de capteurs IoT, où ProgLoss et STAL améliorent considérablement la précision pour les objets minuscules.

L’avantage Ultralytics#

Megvii et Meituan proposent toutes deux de puissants dépôts de recherche, mais le déploiement de leurs modèles en production nécessite souvent d’importants efforts d’ingénierie. L’écosystème Ultralytics intégré élimine ces obstacles en proposant une API unifiée et abondamment documentée.

En utilisant le paquet Ultralytics, les développeurs bénéficient d’une expérience utilisateur inégalée : augmentation automatique intégrée (auto-augmentation), gestion très efficace de la mémoire pendant l’entraînement (réduisant fortement les besoins en VRAM par rapport aux modèles Transformer comme RT-DETR) et pipelines d’exportation fluides vers des formats comme ONNX et OpenVINO.

Contrairement aux modèles spécialisés, les architectures Ultralytics sont polyvalentes par nature et prennent en charge dès leur installation la détection d’objets, la segmentation d’instances, l’estimation de pose, la classification d’images et les boîtes englobantes orientées (OBB).

Voici YOLO26 : la solution ultime pour la périphérie#

Pour les équipes qui lancent de nouveaux projets de vision par ordinateur, nous recommandons vivement de passer à la nouvelle version Ultralytics YOLO26. S’appuyant sur les réussites de YOLO11 et YOLOv8, YOLO26 introduit des innovations qui changent la donne :

  • Conception de bout en bout sans NMS : explorée pour la première fois dans YOLOv10, la tête un-à-un facultative de YOLO26 (nms=False) élimine le post-traitement par suppression non maximale (NMS). Cela garantit une inférence déterministe à latence ultra-faible, indispensable à la robotique en temps réel.
  • Optimiseur MuSGD : inspiré des techniques d’entraînement des LLM, comme celles de Kimi K2 de Moonshot AI, YOLO26 utilise l’optimiseur MuSGD, un hybride de SGD et de Muon, pour obtenir une dynamique d’entraînement extrêmement stable et une convergence plus rapide.
  • Inférence sur CPU jusqu’à 43 % plus rapide : en supprimant la perte focale de distribution (DFL) et en rationalisant la tête du réseau, YOLO26 est fortement optimisé pour les appareils périphériques reposant sur l’exécution sur CPU, où il surpasse largement YOLOv6.
  • ProgLoss + STAL : ces formulations avancées de fonctions de perte améliorent considérablement la détection des petits objets, ce qui rend YOLO26 idéal pour l’imagerie aérienne et l’inspection de défauts microscopiques.

Exemple d’entraînement unifié#

Avec l’API Python Ultralytics, l’entraînement de modèles à la pointe de la technologie ne nécessite que quelques lignes de code. Cette même interface épurée s’applique que tu testes un ancien modèle YOLO ou que tu déploies le framework de pointe YOLO26.

from ultralytics import YOLO

# Load the next-generation YOLO26 model (NMS-free, optimized for edge)
model = YOLO("yolo26n.pt")

# Train the model on the COCO8 dataset
# The ecosystem handles dataset downloading, caching, and batching natively
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Validate the model and print mAP metrics
metrics = model.val()
print(f"Validation mAP50-95: {metrics.box.map}")

# Export the model for edge deployment
model.export(format="onnx")
Plateforme Ultralytics

Pour une expérience encore plus fluide, gère tes jeux de données, suis tes expériences et entraîne tes modèles dans le cloud avec la plateforme Ultralytics, sans écrire de code.

Recommandations selon les cas d’utilisation#

Pour choisir entre ces architectures, tiens compte des contraintes matérielles et des besoins spécifiques de ton projet :

  • Choisis YOLOX si tu mènes des recherches universitaires sur les stratégies d’attribution des étiquettes ou si tu as besoin d’une base de référence sans ancres, pure et facile à comprendre, pour modifier l’architecture.
  • Choisis YOLOv6-3.0 si tu déploies ton modèle sur un serveur industriel équipé de GPU NVIDIA haut de gamme (comme l’A100 ou le T4), où tu peux utiliser de grandes tailles de lot et les optimisations TensorRT pour traiter simultanément des centaines de flux vidéo.
  • Choisis YOLO26 pour la grande majorité des applications modernes. Si tu développes des applications d’IA en périphérie pour des appareils IoT, des drones ou des téléphones mobiles, la conception native sans NMS de YOLO26, ses optimisations CPU et la prise en charge complète de son écosystème en font le meilleur choix incontestable pour combler l’écart entre l’entraînement et la production.

Commentaires