YOLOv5 vs YOLO11#
Lorsque tu choisis la bonne architecture de vision par ordinateur pour un nouveau projet, il est essentiel de comprendre l’évolution des modèles de pointe. La progression des architectures précédentes vers les frameworks unifiés modernes met en évidence des avancées majeures, tant en matière d’efficacité algorithmique que d’expérience développeur. Ce guide propose une comparaison technique approfondie de deux modèles emblématiques développés par Ultralytics : le pionnier YOLOv5 et le modèle hautement perfectionné YOLO11.
Introduction aux modèles#
Ces deux architectures représentent des étapes majeures dans le domaine de la détection d’objets en temps réel et offrent des avantages distincts selon ton environnement de déploiement et tes exigences en matière de compatibilité avec l’existant.
YOLOv5 : le modèle de référence du secteur#
Sorti à l’été 2020, YOLOv5 est rapidement devenu une référence du secteur grâce à son implémentation native PyTorch, qui a considérablement abaissé la barrière à l’entrée pour l’entraînement et le déploiement. Il s’est éloigné des frameworks C complexes de Darknet utilisés par ses prédécesseurs, en proposant une approche Pythonique de la construction des modèles.
- Auteurs : Glenn Jocher
- Organisation : Ultralytics
- Date : 2020-06-26
- GitHub : ultralytics/yolov5
- Documentation : Documentation de YOLOv5
YOLOv5 a établi une référence solide en matière de facilité d’utilisation et a introduit de puissantes méthodologies d’entraînement, notamment l’augmentation avancée des données par mosaïque et l’ancrage automatique. Il reste extrêmement populaire auprès des chercheurs qui s’appuient sur une base de code bien documentée et largement testée.
YOLO11 : le framework unifié de vision#
S’appuyant sur des années de retours et de recherches architecturales, YOLO11 a été introduit dans le cadre d’un framework unifié capable de gérer nativement plusieurs tâches de vision. Ne se limitant plus aux boîtes englobantes, il a été conçu dès le départ pour offrir un maximum de polyvalence et d’efficacité.
- Auteurs : Glenn Jocher et Jing Qiu
- Organisation : Ultralytics
- Date : 2024-09-27
- GitHub : ultralytics/ultralytics
- Documentation : Documentation YOLO11
YOLO11 offre une expérience utilisateur simplifiée grâce au package Python ultralytics, avec une API simple qui unifie la détection d’objets, la segmentation d’instances, la classification, l’estimation de pose et les boîtes englobantes orientées (OBB). Il offre un compromis très avantageux entre vitesse et précision, ce qui le rend idéal pour divers scénarios de déploiement en conditions réelles.
Les deux modèles bénéficient de l’écosystème bien maintenu fourni par la plateforme Ultralytics. Cet environnement intégré simplifie l’annotation des jeux de données, l’entraînement dans le cloud et l’exportation des modèles vers diverses cibles matérielles.
Comparaison des performances et des métriques#
Une comparaison directe de ces modèles révèle comment les perfectionnements architecturaux se traduisent par des gains de performances concrets. Le tableau ci-dessous présente la précision moyenne (mAP) évaluée sur le jeu de données COCO, ainsi que les vitesses d’inférence sur CPU et GPU et le nombre de paramètres.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (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 |
| YOLO11n | 640 | 39.5 | 56.1 | 1.5 | 2.6 | 6.5 |
| YOLO11s | 640 | 47.0 | 90.0 | 2.5 | 9.4 | 21.5 |
| YOLO11m | 640 | 51.5 | 183.2 | 4.7 | 20.1 | 68.0 |
| YOLO11l | 640 | 53.4 | 238.6 | 6.2 | 25.3 | 86.9 |
| YOLO11x | 640 | 54.7 | 462.8 | 11.3 | 56.9 | 194.9 |
Analyse des résultats#
Les métriques mettent en évidence une nette amélioration de l’équilibre des performances obtenu par YOLO11. Par exemple, le modèle YOLO11n (nano) atteint une mAP de 39,5 %, contre 28,0 % pour YOLOv5n, tout en réduisant le temps d’inférence sur CPU lors de l’exportation via ONNX. En outre, YOLO11 nécessite nettement moins de mémoire pendant l’entraînement que les modèles lourds fondés sur des Transformers, ce qui le rend particulièrement accessible pour un déploiement sur du matériel grand public et des appareils edge.
Différences architecturales#
Les améliorations de performances de YOLO11 découlent de plusieurs évolutions architecturales clés. Alors que YOLOv5 utilisait un backbone CSPNet standard avec des modules C3, YOLO11 a introduit des blocs d’extraction de caractéristiques plus efficaces, comme C2f puis C3k2, qui optimisent la propagation des gradients et réduisent la charge de calcul.
YOLO11 dispose également d’une tête largement perfectionnée. S’éloignant de la conception fondée sur les ancres des anciens modèles, les architectures Ultralytics plus récentes adoptent une approche sans ancres. Cela réduit le nombre de prédictions de boîtes, rationalise le pipeline de post-traitement et améliore la capacité du modèle à généraliser à différentes échelles et proportions. En outre, ces modèles offrent une efficacité d’entraînement supérieure et des poids préentraînés facilement disponibles, qui accélèrent la convergence des jeux de données ajustés.
Implémentation et exemples de code#
L’une des caractéristiques les plus remarquables de l’écosystème Ultralytics est sa simplicité. Alors que YOLOv5 a popularisé l’utilisation de torch.hub pour l’inférence rapide, YOLO11 va encore plus loin avec le package Python unifié ultralytics.
Entraînement avec YOLO11#
Le chargement, l’entraînement et la validation d’un modèle nécessitent très peu de code de préparation. L’API gère de manière transparente l’ajustement des hyperparamètres et la gestion des modèles.
from ultralytics import YOLO
# Load a pretrained YOLO11 model
model = YOLO("yolo11s.pt")
# Train on a custom dataset for 50 epochs
results = model.train(data="coco8.yaml", epochs=50, imgsz=640)
# Run fast inference and display results
predictions = model("https://ultralytics.com/images/bus.jpg")
predictions[0].show()
# Easily export the model to TensorRT for hardware acceleration
model.export(format="engine")Inférence avec YOLOv5 pour les pipelines existants#
Si tu maintiens un pipeline plus ancien, YOLOv5 s’intègre directement au mécanisme de chargement natif de PyTorch, ce qui permet de l’intégrer facilement à des scripts d’inférence existants.
import torch
# Load a custom or pretrained YOLOv5 model from PyTorch Hub
model = torch.hub.load("ultralytics/yolov5", "yolov5s")
# Perform inference on an image URL
results = model("https://ultralytics.com/images/zidane.jpg")
# Print prediction details to the console
results.print()Les deux modèles prennent en charge de nombreux formats d’exportation. Que tu cibles un NVIDIA Jetson avec TensorRT ou une application iOS avec CoreML, le processus de déploiement est largement documenté et pris en charge par la communauté.
Cas d’utilisation idéaux#
Le choix entre ces modèles dépend principalement de l’étape du cycle de vie de ton projet et de tes exigences spécifiques.
Quand choisir YOLOv5#
- Maintenance de bases de code existantes : si ton environnement de production est fortement personnalisé autour de la structure du dépôt YOLOv5 ou de techniques spécifiques d’évolution des hyperparamètres.
- Références académiques : lorsque tu publies des recherches nécessitant une comparaison directe avec les standards établis de la vision par ordinateur de 2020 à 2022.
Quand choisir YOLO11#
- Projets multitâches : lorsque ton application nécessite une combinaison de tâches telles que l’estimation de pose et la segmentation d’instances à l’aide d’une API unifiée unique.
- Déploiements edge : pour les scénarios d’informatique edge où il est essentiel d’optimiser la mAP pour un budget de calcul donné (FLOPs).
- Solutions d’IA commerciales : idéal pour les applications d’entreprise dans le commerce de détail et la sécurité, en tirant parti du support robuste de la plateforme Ultralytics.
La prochaine génération : Ultralytics YOLO26#
Bien que YOLO11 offre un excellent équilibre entre vitesse et précision, le domaine de l’intelligence artificielle évolue rapidement. Pour les développeurs qui commencent de nouveaux projets aujourd’hui, nous recommandons vivement d’explorer la dernière référence en matière d’IA pour la vision : Ultralytics YOLO26.
Sorti en janvier 2026, YOLO26 introduit des avancées qui changent les paradigmes et qui sont conçues spécifiquement pour les besoins modernes de déploiement :
- Conception de bout en bout sans NMS : s’appuyant sur des concepts introduits pour la première fois dans YOLOv10, YOLO26 est nativement de bout en bout. Il élimine le besoin d’un post-traitement par suppression des non-maxima (NMS), ce qui simplifie considérablement les pipelines de déploiement et réduit la latence.
- Optimiseur MuSGD : inspiré des innovations de l’entraînement des LLM issues de modèles comme Kimi K2 de Moonshot AI, cet hybride de SGD et de Muon garantit un entraînement extrêmement stable et une convergence nettement plus rapide.
- Vitesse CPU inégalée : en supprimant la perte focale de distribution (DFL), YOLO26 atteint une inférence sur CPU jusqu’à 43 % plus rapide, ce qui en fait le meilleur choix pour les appareils edge et les environnements dépourvus de GPU dédiés.
- Fonctions de perte avancées : l’intégration de ProgLoss et de STAL améliore sensiblement la reconnaissance des petits objets, un aspect essentiel pour l’analyse par drone, l’IoT et la robotique.
- Améliorations spécifiques aux tâches : il introduit des optimisations spécialisées, comme l’estimation de la log-vraisemblance résiduelle (RLE) pour la pose et une fonction de perte d’angle spécialisée pour les boîtes englobantes orientées, afin de garantir des performances supérieures pour toutes les tâches de vision par ordinateur.
Pour les utilisateurs qui s’intéressent à des architectures spécialisées au-delà de la détection d’objets standard, tu peux également explorer des modèles comme RT-DETR pour la détection fondée sur les Transformers, ou YOLO-World pour le suivi et la détection à vocabulaire ouvert. En adoptant ces outils bien maintenus et hautement optimisés, tu t’assures que tes pipelines de vision par ordinateur restent efficaces, évolutifs et à la pointe.