YOLOv5 vs YOLOX#
L'évolution de la vision par ordinateur en temps réel a connu de nombreuses étapes clés, avec différentes architectures repoussant les limites de la vitesse et de la précision. Deux modèles très influents dans ce domaine sont YOLOv5 et YOLOX. Bien que tous deux soient reconnus pour leurs hautes performances en détection d'objets, ils adoptent des approches architecturales fondamentalement différentes.
Ce guide fournit une analyse technique approfondie de ces deux modèles, en comparant leurs architectures, leurs mesures de performance, leurs méthodologies d'entraînement et leurs scénarios de déploiement idéaux pour aider les développeurs et les chercheurs à choisir l'outil adapté à leurs projets de vision par IA.
Présentation des modèles et différences architecturales#
Ultralytics YOLOv5#
- Auteur : Glenn Jocher
- Organisation : Ultralytics
- Date : 2020-06-26
- GitHub : Répertoire Ultralytics YOLOv5
- Documentation : Documentation officielle de YOLOv5
Introduit par Ultralytics, YOLOv5 est rapidement devenu un standard de l'industrie en raison de son exceptionnel équilibre entre performances, facilité d'utilisation et efficacité mémoire. Construit nativement sur le framework PyTorch, YOLOv5 utilise une architecture basée sur des ancres. Il s'appuie sur des formes de boîtes englobantes prédéfinies pour prédire l'emplacement des objets, ce qui le rend hautement efficace pour les tâches de détection d'objets standard.
L'une des plus grandes forces de YOLOv5 réside dans son écosystème bien entretenu. Il bénéficie d'une documentation complète, d'une API Python incroyablement simple et d'une intégration native avec Ultralytics Platform. Cela permet aux développeurs de passer facilement de l'étiquetage des jeux de données à l'entraînement et à l'exportation vers des formats tels que ONNX et TensorRT.
Les modèles YOLO d'Ultralytics nécessitent généralement beaucoup moins de mémoire GPU lors de l'entraînement par rapport aux alternatives complexes basées sur les Transformer. Cette faible empreinte mémoire rend YOLOv5 très accessible aux chercheurs travaillant avec du matériel grand public.
Megvii YOLOX#
- Auteurs : Zheng Ge, Songtao Liu, Feng Wang, Zeming Li et Jian Sun
- Organisation : Megvii
- Date : 18-07-2021
- Arxiv : YOLOX: Exceeding YOLO Series in 2021
- GitHub : Répertoire Megvii YOLOX
- Documentation : Documentation GitHub de YOLOX
Développé par des chercheurs chez Megvii, YOLOX a pris une voie différente en introduisant une conception sans ancres dans la famille YOLO. En éliminant les anchor boxes, YOLOX simplifie la tête de détection et réduit considérablement le nombre de paramètres heuristiques nécessitant un réglage manuel lors de l'entraînement.
YOLOX intègre également une tête découplée—séparant les tâches de classification et de régression en différentes branches de réseau—et utilise la stratégie d'assignation d'étiquettes SimOTA. Ces innovations comblent le fossé entre la recherche académique et les applications industrielles, rendant YOLOX particulièrement efficace dans des environnements avec des échelles d'objets très variées.
Performances et mesures#
Lors de l'évaluation des modèles de vision par ordinateur, le compromis entre la précision moyenne (mAP) et la vitesse d'inférence est critique. Les deux modèles offrent une gamme de tailles (de Nano à Extra-Large) pour s'adapter à différentes contraintes matérielles.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | params (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
| YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
| YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
| YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
| YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
| 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 |
Bien que YOLOXx atteigne une précision de pointe légèrement supérieure (51.1 mAP), YOLOv5 offre un pipeline de déploiement beaucoup plus robuste et minutieusement testé sur CPU et GPU. Les vitesses TensorRT pour YOLOv5 soulignent son optimisation poussée pour les appareils d'informatique en périphérie (edge computing), ce qui en fait un choix très fiable pour l'analyse vidéo en temps réel.
Méthodologies d'entraînement et utilisabilité#
L'expérience développeur varie considérablement entre ces deux architectures.
L'approche YOLOX#
L'entraînement de YOLOX nécessite généralement de cloner le dépôt d'origine, de gérer des dépendances spécifiques et d'exécuter des scripts de ligne de commande complexes. Bien qu'il prenne en charge des fonctionnalités avancées telles que l'entraînement en précision mixte et les configurations multi-nœuds via MegEngine, la courbe d'apprentissage peut être raide pour les développeurs qui ont besoin de prototypage rapide.
L'avantage Ultralytics#
En revanche, Ultralytics privilégie une expérience utilisateur exceptionnellement simplifiée. Avec le paquet Python ultralytics, tu peux charger, entraîner et valider un modèle avec un minimum de code boilerplate. Ultralytics gère automatiquement les augmentations de données complexes, l'évolution des hyperparamètres et la planification du taux d'apprentissage.
from ultralytics import YOLO
# Load a pretrained YOLOv5 small model
model = YOLO("yolov5s.pt")
# Train the model on the COCO8 dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)
# Validate the model's performance
metrics = model.val()De plus, la polyvalence de YOLOv5 s'étend au-delà de la détection d'objets standard, offrant un support robuste pour la classification d'images et la segmentation d'instances au sein de la même API cohérente.
Une fois ton entraînement terminé, exporter un modèle YOLOv5 vers CoreML, TFLite ou OpenVINO est aussi simple que d'exécuter model.export(format="onnx"). Cela élimine le besoin de scripts de conversion tiers généralement requis par les dépôts axés sur la recherche.
Applications concrètes#
Le choix entre ces modèles dépend de ton environnement de déploiement et de tes besoins techniques :
- Commerce de détail et gestion des stocks : Pour les applications nécessitant une reconnaissance de produits en temps réel sur des appareils en périphérie comme le NVIDIA Jetson, YOLOv5 est exceptionnellement bien adapté. Son empreinte mémoire minimale et ses vitesses d'inférence TensorRT rapides permettent le suivi multi-caméra sans perte d'images.
- Recherche académique et architectures personnalisées : YOLOX est très respecté dans la communauté de recherche. Sa tête découplée et sa nature sans ancres en font une excellente base pour les ingénieurs souhaitant expérimenter de nouvelles stratégies d'assignation d'étiquettes ou ceux travaillant sur des jeux de données où les anchor boxes traditionnelles ne parviennent pas à généraliser.
- IA agricole : Pour les tâches d'agriculture de précision comme la détection de fruits ou l'identification de mauvaises herbes par drones, la facilité d'entraînement et de déploiement de modèles YOLOv5 à l'aide d'Ultralytics Platform permet aux experts du domaine de mettre en œuvre des solutions d'IA sans avoir besoin de solides compétences en ingénierie du machine learning.
Cas d'utilisation et recommandations#
Choisir entre YOLOv5 et YOLOX dépend des exigences spécifiques de ton projet, des contraintes de déploiement et de tes préférences en matière d'écosystème.
Quand choisir YOLOv5#
YOLOv5 est un choix solide pour :
- Systèmes de production éprouvés : Déploiements existants où la longue expérience de stabilité de YOLOv5, sa documentation étendue et le soutien massif de la communauté sont valorisés.
- Entraînement aux ressources limitées : Environnements avec des ressources GPU limitées où le pipeline d'entraînement efficace et les exigences mémoire inférieures de YOLOv5 sont avantageux.
- Extensive Export Format Support : Projets nécessitant un déploiement sur de nombreux formats, notamment ONNX, TensorRT, CoreML et TFLite.
Quand choisir YOLOX#
YOLOX est recommandé pour :
- Recherche sur la détection sans ancres : La recherche académique utilisant l'architecture propre et sans ancres de YOLOX comme base pour expérimenter de nouvelles têtes de détection ou des fonctions de perte.
- Appareils en périphérie ultra-légers : Le déploiement sur des microcontrôleurs ou du matériel mobile ancien où l'empreinte extrêmement réduite de la variante YOLOX-Nano (0.91 M de paramètres) est critique.
- Études sur l'assignation de labels SimOTA : Les projets de recherche étudiant les stratégies d'assignation de labels basées sur le transport optimal et leur impact sur la convergence de l'entraînement.
Quand choisir Ultralytics (YOLO26)#
Pour la plupart des nouveaux projets, Ultralytics YOLO26 offre la meilleure combinaison de performance et d'expérience développeur :
- Déploiement en périphérie sans NMS : Applications nécessitant une inférence cohérente et à faible latence sans la complexité du post-traitement par Non-Maximum Suppression.
- Environnements CPU uniquement : Appareils sans accélération GPU dédiée, où l'inférence CPU jusqu'à 43 % plus rapide de YOLO26 offre un avantage décisif.
- Détection de petits objets : Les scénarios complexes tels que l'imagerie par drone aérien ou l'analyse par capteurs IoT où ProgLoss et STAL améliorent considérablement la précision sur les minuscules objets.
L'avenir de la vision par IA : Voici YOLO26#
Bien que YOLOv5 et YOLOX aient tous deux marqué l'histoire de la vision par ordinateur, le domaine progresse rapidement. Pour les développeurs qui débutent de nouveaux projets aujourd'hui, Ultralytics recommande vivement d'explorer son dernier modèle phare, YOLO26.
Sorti en janvier 2026, YOLO26 représente un bond en avant massif en termes de performance et de facilité d'utilisation. Il introduit une conception révolutionnaire de bout en bout sans NMS, éliminant complètement le post-traitement par suppression non maximale. Cela réduit considérablement la variabilité de la latence et simplifie la logique de déploiement sur les appareils à faible puissance.
De plus, YOLO26 utilise le nouvel optimiseur MuSGD — un hybride de SGD et de Muon inspiré par les innovations en matière d'entraînement de LLM — pour une convergence incroyablement stable et rapide. Grâce à la suppression de DFL (Distribution Focal Loss retirée pour une exportation simplifiée et une meilleure compatibilité avec les appareils de périphérie et à faible consommation), YOLO26 atteint jusqu'à 43 % de performances d'inférence CPU en plus, consolidant sa position de modèle ultime pour l'informatique de périphérie moderne, la robotique et les applications IoT. En outre, ProgLoss + STAL offre des fonctions de perte améliorées avec des améliorations notables de la reconnaissance des petits objets, ce qui est crucial pour l'IoT, la robotique et l'imagerie aérienne. Les utilisateurs intéressés par les générations précédentes peuvent également se tourner vers YOLO11, bien que YOLO26 reste le choix incontesté à la pointe de la technologie.
Conclusion#
YOLOv5 et YOLOX offrent tous deux d'incroyables capacités de détection d'objets. YOLOX a repoussé les limites architecturales en prouvant que les conceptions sans ancres pouvaient rivaliser avec les méthodes traditionnelles et les surpasser en 2021. Cependant, YOLOv5 reste une force dominante grâce à sa facilité d'utilisation inégalée, son vaste écosystème et ses exigences de mémoire réduites lors de l'entraînement.
Pour la grande majorité des applications commerciales, l'écosystème Ultralytics offre le chemin le plus rapide d'un jeu de données brut à un modèle de production déployé. Qu'il s'agisse d'utiliser le fiable YOLOv5 ou de passer au YOLO26 de pointe, les développeurs bénéficient d'un framework conçu pour rendre la vision par IA accessible, efficace et hautement performante.