YOLO11 vs YOLOv5#
Sélectionner la bonne architecture de réseau neuronal est une décision cruciale pour tout projet de vision par ordinateur. À mesure que le paysage de l’intelligence artificielle évolue, les outils à la disposition des développeurs et des chercheurs évoluent eux aussi. Ce guide complet propose une comparaison technique approfondie entre deux modèles emblématiques de l’écosystème Ultralytics : le très réputé YOLOv5 et le modèle avancé YOLO11.
Que tu déploies des modèles légers pour des applications d’IA en périphérie ou que tu traites des flux vidéo haute résolution sur des GPU cloud, comprendre les nuances architecturales, les métriques de performance et les cas d’utilisation idéaux de ces modèles te permettra de faire un choix fondé sur les données, adapté à tes contraintes de déploiement.
Lignée des modèles et détails techniques#
Les deux modèles reflètent l’engagement d’Ultralytics en faveur de la collaboration open source, de performances robustes et d’une facilité d’utilisation inégalée, ce qui les rend très appréciés par la communauté mondiale du machine learning.
Détails de YOLO11#
- Auteurs : Glenn Jocher et Jing Qiu
- Organisation : Ultralytics
- Date : 2024-09-27
- GitHub : ultralytics/ultralytics
- Documentation : Documentation YOLO11
Détails de YOLOv5#
- Auteurs : Glenn Jocher
- Organisation : Ultralytics
- Date : 2020-06-26
- GitHub : ultralytics/yolov5
- Documentation : Documentation de YOLOv5
Différences architecturales#
L’évolution de YOLOv5 à YOLO11 introduit plusieurs changements architecturaux majeurs conçus pour optimiser la précision et l’efficacité en matière de paramètres.
YOLOv5 a été un pionnier de l’écosystème PyTorch, en introduisant un backbone CSPNet (réseau partiel entre étapes) hautement optimisé et un neck PANet (réseau d’agrégation de chemins). Il reposait sur une détection fondée sur des ancres, qui nécessitait des boîtes d’ancrage prédéfinies pour prédire les contours des objets. Bien que très efficace, le réglage de ces ancres pour des jeux de données de vision par ordinateur personnalisés pouvait être fastidieux.
À l’inverse, YOLO11 adopte un paradigme de détection plus moderne, sans ancres. Cela élimine le besoin de régler manuellement les boîtes d’ancrage, simplifie le processus d’entraînement et améliore la généralisation sur des jeux de données variés comme le jeu de données COCO. De plus, YOLO11 possède une tête découplée : les tâches de classification et de régression des boîtes englobantes sont traitées dans des branches distinctes. Cette séparation améliore considérablement la vitesse de convergence et la précision moyenne (mAP), en particulier pour les scénarios complexes de détection d’objets.
Métriques de performance et benchmarks#
Le tableau ci-dessous compare les principales métriques pour différentes tailles de modèles. Les modèles Ultralytics sont réputés pour leur faible consommation de mémoire et utilisent généralement moins de mémoire CUDA pendant l’entraînement que les modèles lourds fondés sur des Transformer, ce qui réduit considérablement la barrière matérielle à l’entrée.
| Modèle | taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| 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 |
Comme on peut le constater, YOLO11 atteint un équilibre très favorable entre performances, en fournissant systématiquement des scores mAP supérieurs pour un nombre de paramètres comparable à celui de ses équivalents YOLOv5.
Méthodes d’entraînement et facilité d’utilisation#
L’un des principes fondamentaux de la philosophie d’Ultralytics est une facilité d’utilisation exceptionnelle, soutenue par un écosystème bien entretenu et une vaste communauté.
YOLOv5 s’appuyait historiquement sur de robustes scripts d’interface de ligne de commande (CLI) (train.py, detect.py) pour son exécution. Bien que puissants, l’intégration directe de ces scripts dans des applications Python personnalisées nécessitait souvent des solutions de contournement.
YOLO11 a révolutionné ce processus en introduisant le package Python rationalisé ultralytics. Cette API unifiée prend en charge toutes les étapes, de l’entraînement à l’exportation des modèles dans des formats comme ONNX, OpenVINO et TensorRT, de manière native.
Pour une expérience entièrement sans code, les développeurs peuvent utiliser la plateforme Ultralytics pour annoter les données, entraîner des modèles dans le cloud et les déployer facilement sur des appareils en périphérie.
Comparaison du code#
Entraîner un modèle Ultralytics aujourd’hui est extrêmement efficace. Voici comment entraîner YOLO11 à l’aide de son API Python native :
from ultralytics import YOLO
# Load a pretrained YOLO11 small model
model = YOLO("yolo11s.pt")
# Train the model on custom data
results = model.train(data="coco8.yaml", epochs=50, imgsz=640, device=0)
# Export the model to ONNX for deployment
model.export(format="onnx")Pour les systèmes existants utilisant YOLOv5, l’entraînement via CLI se présente comme suit :
# Clone the repository and run the training script
git clone https://github.com/ultralytics/yolov5
cd yolov5
pip install -r requirements.txt
python train.py --img 640 --batch 16 --epochs 50 --data coco128.yaml --weights yolov5s.ptCas d’utilisation idéaux et applications concrètes#
Les deux modèles possèdent des atouts distincts, adaptés à différents environnements opérationnels.
Quand utiliser YOLOv5#
Malgré l’arrivée d’une génération plus récente, YOLOv5 reste un modèle très performant. Il est vivement recommandé pour :
- Intégration aux systèmes existants : les environnements étroitement intégrés aux structures de tenseurs ou aux pipelines de déploiement spécifiques de YOLOv5, qui ne peuvent pas être facilement remaniés.
- Références académiques : les chercheurs qui ont besoin de références établies et éprouvées pour des études universitaires reproductibles en analyse d’images médicales.
Quand utiliser YOLO11#
YOLO11 représente le choix idéal pour les pipelines de production modernes grâce à sa polyvalence exceptionnelle :
- Environnements multitâches : contrairement à YOLOv5, qui est principalement un détecteur (avec des ajouts ultérieurs pour la segmentation), YOLO11 prend nativement en charge la segmentation d’instances, la classification d’images, l’estimation de pose et la détection de boîtes englobantes orientées (OBB), directement et sans configuration supplémentaire.
- Analyse vidéo à forte densité : idéale pour les systèmes de circulation intelligents ou la gestion des stocks dans le commerce de détail, où il est essentiel d’extraire une précision maximale de scènes complexes.
Perspectives : l’architecture YOLO26#
Bien que YOLO11 soit une référence exceptionnelle, la frontière de la vision par ordinateur continue de progresser rapidement. Les développeurs qui recherchent une efficacité optimale devraient également envisager le dernier modèle Ultralytics YOLO26 (sorti en janvier 2026).
YOLO26 représente un bond en avant considérable, conçu spécifiquement pour l’optimisation en périphérie et l’échelle des environnements d’entreprise. Ses principales innovations comprennent :
- Conception de bout en bout sans NMS : YOLO26 fonctionne nativement de bout en bout, éliminant le post-traitement par suppression des non-maxima (NMS) pour un déploiement plus rapide et plus simple.
- Suppression de DFL : la fonction de perte focale de distribution a été supprimée afin de simplifier l’exportation des modèles et d’améliorer la compatibilité avec les appareils basse consommation.
- Optimiseur MuSGD : un hybride révolutionnaire de SGD et de Muon, qui apporte la stabilité de l’entraînement des LLM à la vision par ordinateur pour accélérer la convergence.
- Inférence CPU jusqu’à 43 % plus rapide : fortement optimisée pour les déploiements IoT et les appareils dépourvus de GPU dédiés.
- ProgLoss + STAL : des fonctions de perte considérablement améliorées qui offrent des progrès notables dans la reconnaissance des petits objets, essentielle pour l’imagerie réalisée par drone aérien.
Résumé#
Le choix entre YOLO11 et YOLOv5 dépend en définitive de l’étape du cycle de vie de ton projet. L’héritage de YOLOv5 est indéniable : il offre une stabilité exceptionnelle et le soutien d’une communauté très vaste. Cependant, pour tout nouveau projet, YOLO11 est vivement recommandé par rapport aux générations précédentes. Il associe une précision de pointe, une API Python particulièrement élégante et une consommation mémoire réduite pendant l’entraînement, consolidant ainsi la position d’Ultralytics à l’avant-garde de l’innovation en IA. Pour repousser encore davantage les limites, explorer YOLO26, à la pointe de la technologie, sur la plateforme Ultralytics donnera des résultats inégalés.