YOLOv9 vs YOLO11: évolution architecturale et analyse des performances
Le paysage de la vision par ordinateur est défini par une innovation rapide, avec des modèles qui repoussent sans cesse les limites de la précision, de la vitesse et de l'efficacité. Cette comparaison explore deux étapes importantes dans la détection d'objets : YOLOv9un modèle axé sur la recherche qui introduit de nouveaux concepts architecturaux, et Ultralytics YOLO11Ultralytics YOLO11 , la dernière évolution prête pour la production et conçue pour une utilisation polyvalente dans le monde réel.
Tout en YOLOv9 se concentre sur les goulets d'étranglement de l'apprentissage profond grâce à des percées théoriques, Ultralytics YOLO11 affine les performances de pointe (SOTA) en mettant l'accent sur la convivialité, l'efficacité et l'intégration transparente dans l'écosystèmeUltralytics .
Mesures de performance : Vitesse et précision
Le tableau suivant présente une comparaison directe des principales mesures de performance évaluées sur l'ensemble de donnéesCOCO . Lors de la sélection d'un modèle, il est essentiel de trouver un équilibre entre la précision moyennemAP, la vitesse d'inférence et le coût de calcul (FLOPs).
| Modèle | Taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| YOLOv9t | 640 | 38.3 | - | 2.3 | 2.0 | 7.7 |
| YOLOv9s | 640 | 46.8 | - | 3.54 | 7.1 | 26.4 |
| YOLOv9m | 640 | 51.4 | - | 6.43 | 20.0 | 76.3 |
| YOLOv9c | 640 | 53.0 | - | 7.16 | 25.3 | 102.1 |
| YOLOv9e | 640 | 55.6 | - | 16.77 | 57.3 | 189.0 |
| 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 |
Comme le montrent les données, YOLO11 fait preuve d'une efficacité supérieure. Par exemple, le modèle YOLO11n atteint un mAP plus élevé (39,5 %) que YOLOv9t (38,3 %) tout en utilisant moins de FLOP et en fonctionnant beaucoup plus rapidement sur le GPU. Bien que le plus grand modèle YOLOv9e conserve un léger avantage en termes de précision brute, il nécessite près du double du temps d'inférence de YOLO11l, ce qui fait de YOLO11 le choix le plus pragmatique pour les scénarios d'inférence en temps réel.
YOLOv9: S'attaquer au goulot d'étranglement de l'information
YOLOv9 a été publié avec un objectif académique spécifique : résoudre le problème de la perte d'informations lorsque les données passent par des réseaux neuronaux profonds. Son architecture est fortement influencée par la nécessité de conserver les informations de gradient pendant l'entraînement.
Détails techniques :
Auteurs : Chien-Yao Wang, Hong-Yuan Mark Liao
Organisation:Institute of Information Science, Academia Sinica, Taiwan
Date : 2024-02-21
Arxiv:https://arxiv.org/abs/2402.13616
GitHub:https://github.com/WongKinYiu/yolov9
Docsultralytics
Principales caractéristiques architecturales
Les principales innovations de YOLOv9 sont l'information programmable de gradient (PGI) et le réseau d'agrégation de couches efficace généralisé (GELAN).
- PGI : Ce cadre de supervision auxiliaire garantit que les couches profondes reçoivent des informations fiables sur le gradient, atténuant ainsi le "goulot d'étranglement de l'information" qui entrave souvent la convergence des réseaux profonds.
- GELAN : cette architecture optimise l'efficacité des paramètres en combinant les forces de CSPNet et d'ELAN, ce qui permet une mise à l'échelle flexible des calculs.
Priorité à l'enseignement
YOLOv9 constitue une excellente étude de cas pour les chercheurs qui s'intéressent à la théorie de l'apprentissage profond, en particulier en ce qui concerne le flux de gradient et la préservation de l'information dans les réseaux neuronaux convolutionnels.
Ultralytics YOLO11: la polyvalence au service de l'efficacité
S'appuyant sur l'héritage de YOLOv8YOLO11 représente le summum de la vision par ordinateur orientée vers la production. Il a été conçu non seulement pour obtenir des résultats de référence, mais aussi pour être déployé de manière pratique, facile à utiliser et multitâche.
Détails techniques :
Auteurs : Glenn Jocher, Jing Qiu
Organisation :Ultralytics
Date : 2024-09-27
GitHubultralytics
Docsyolo11
Principales caractéristiques architecturales
YOLO11 présente une architecture raffinée conçue pour maximiser l'extraction des caractéristiques tout en minimisant la charge de calcul. Il utilise une structure de colonne vertébrale et de cou améliorée qui améliore l'intégration des caractéristiques à différentes échelles, ce qui est essentiel pour la détection des petits objets.
Le modèle présente également une conception améliorée des têtes pour une convergence plus rapide pendant l'entraînement. Contrairement aux modèles centrés sur la recherche, YOLO11 est construit dans un cadre unifié qui prend en charge la détection, la segmentation, la classification, l'estimation de la pose et les boîtes de délimitation orientées (OBB) de manière native.
Points de comparaison détaillés
Facilité d'utilisation et écosystème
L'une des différences les plus significatives réside dans l'expérience de l'utilisateur. Ultralytics YOLO11 a été conçu dans l'optique de donner la priorité aux développeurs. Il s'intègre parfaitement à l'écosystème Ultralytics , qui comprend des outils pour l'annotation des données, la gestion des ensembles de données et l'exportation des modèles.
- YOLO11: Il peut être formé, validé et déployé en quelques lignes de code à l'aide de la fonction
ultralyticspaquetage Python ou CLI. Il bénéficie de mises à jour fréquentes, d'une documentation complète et d'une communauté importante. - YOLOv9: Bien que pris en charge par la bibliothèque Ultralytics , la mise en œuvre originale et certaines configurations avancées peuvent nécessiter une compréhension plus approfondie de l'article de recherche sous-jacent.
Besoins en mémoire et efficacité de l'entraînement
L'utilisation efficace des ressources est une caractéristique des modèles Ultralytics . YOLO11 est optimisé pour nécessiter moins de mémoire CUDA lors de l'entraînement par rapport à de nombreuses alternatives basées sur des transformateurs ou à d'anciennes itérations de YOLO . Cela permet aux développeurs de former des lots plus importants sur du matériel grand public, accélérant ainsi le cycle de développement.
En outre, YOLO11 fournit des poids pré-entraînés de haute qualité et facilement disponibles pour toutes les tâches, garantissant ainsi un apprentissage par transfert à la fois rapide et efficace. Cela contraste avec les modèles de recherche qui peuvent offrir des points de contrôle pré-entraînés limités, axés principalement sur la détection de COCO .
Polyvalence des tâches
Alors que YOLOv9 est principalement reconnu pour ses réalisations dans le domaine de la détection d'objets, YOLO11 offre un support natif pour un large éventail de tâches de vision par ordinateur dans un cadre unique :
- Segmentation des instances : Masquage précis des objets.
- Estimation de la pose : Détection des points clés du squelette (par exemple, pour la pose humaine).
- Classification : Catégorisation d'images entières.
- Boîtes de délimitation orientées (OBB) : Détection d'objets en rotation, essentielle pour l'imagerie aérienne.
API unifiée
Pour passer d'une tâche à l'autre dans YOLO11 , il suffit de changer le fichier de poids du modèle (par exemple, de yolo11n.pt pour la détection à yolo11n-seg.pt pour la segmentation).
Exemple de code : La comparaison en action
Le code Python suivant montre comment les deux modèles peuvent être facilement chargés et utilisés dans le cadre d'Ultralytics , en mettant en évidence l'API unifiée qui simplifie les tests des différentes architectures.
from ultralytics import YOLO
# Load the research-focused YOLOv9 model (compact version)
model_v9 = YOLO("yolov9c.pt")
# Load the production-optimized YOLO11 model (medium version)
model_11 = YOLO("yolo11m.pt")
# Run inference on a local image
# YOLO11 provides a balance of speed and accuracy ideal for real-time apps
results_11 = model_11("path/to/image.jpg")
# Display results
results_11[0].show()
Cas d'utilisation idéaux
Quand choisir YOLOv9
YOLOv9 est un excellent choix pour la recherche universitaire et les scénarios où la précision maximale sur des images statiques est la seule priorité, quel que soit le coût de calcul.
- Projets de recherche : Étude du flux de gradient et de l'architecture des réseaux neuronaux.
- L'étalonnage des performances : Des compétitions où chaque fraction de mAP compte.
- Déploiement de serveurs haut de gamme : Lorsque des GPU puissants (comme les A100) sont disponibles pour gérer les FLOPs plus élevés de la variante "E".
Quand choisir Ultralytics YOLO11
YOLO11 est le choix recommandé pour les applications commerciales, l'informatique de pointe et les systèmes multitâches.
- Edge AI : déploiement sur des appareils tels que NVIDIA Jetson ou Raspberry Pi en raison d'un rapport vitesse/poids supérieur.
- Analyse en temps réel : Surveillance du trafic, analyse des sports et contrôle de la qualité de la fabrication lorsque le temps de latence est critique.
- Pipelines complexes : Applications nécessitant simultanément la détection, la segmentation et l'estimation de la pose.
- Prototypage rapide : Les startups et les entreprises qui ont besoin de passer rapidement du concept au déploiement en utilisant l'APIUltralytics .
Autres modèles à explorer
Si YOLOv9 et YOLO11 sont des concurrents puissants, la bibliothèque Ultralytics prend en charge une variété d'autres modèles adaptés à des besoins spécifiques :
- YOLOv8: Le prédécesseur fiable de YOLO11, toujours largement utilisé et soutenu.
- RT-DETR: un détecteur basé sur un transformateur qui excelle dans la précision mais qui peut nécessiter plus de mémoire.
- YOLOv10: une architecture distincte axée sur la formation NMS pour une latence réduite dans des configurations spécifiques.
Découvrez la gamme complète d'options dans la section Comparaison des modèles.
Conclusion
Ces deux architectures représentent des avancées significatives dans le domaine de la vision par ordinateur. YOLOv9 apporte de précieuses connaissances théoriques sur la formation des réseaux profonds, tandis que Ultralytics YOLO11 synthétise ces avancées en un outil robuste, polyvalent et très efficace. Pour la plupart des développeurs et des chercheurs qui cherchent à créer des applications évolutives en temps réel, l'équilibre entre les performances, la facilité d'utilisation et le support complet de l'écosystème de YOLO11 en fait le meilleur choix.