YOLO YOLOv9: avancées dans la détection d'objets en temps réel
Le domaine de la détection d'objets est en constante évolution, les chercheurs repoussant sans cesse les limites en matière de précision, de latence et d'efficacité. Deux architectures remarquables qui ont fait beaucoup de bruit dans le monde de la vision par ordinateur sont YOLO, développée par Alibaba Group, et YOLOv9, créée par les chercheurs de l'Academia Sinica.
Si les deux modèles visent à résoudre le défi de la détection en temps réel, ils abordent le problème avec des philosophies architecturales distinctes.YOLO la recherche d'architecture neuronale (NAS) et une reparamétrisation intensive pour optimiser la faible latence, tandis que YOLOv9 des concepts tels que les informations de gradient programmables (PGI) afin de maximiser la rétention d'informations pendant le processus d'apprentissage profond.
YOLO: efficacité grâce à la recherche d'architecture neuronale
YOLO (Distillation-Enhanced Neural Architecture Search for You Only Look Once) a été introduit fin 2022, avec pour objectif principal d'équilibrer strictement les performances et la vitesse pour les applications industrielles.
- Auteurs : Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang et Xiuyu Sun
Organisation :Alibaba Group
Date : 23/11/2022
Arxiv :YOLO: rapport sur la conception de la détection d'objets en temps réel
GitHub :YOLO
Principales caractéristiques architecturales
YOLO sur trois technologies clés conçues pour tirer le maximum de performances de ressources matérielles limitées :
- MAE-NAS Backbone : contrairement aux backbones conçus manuellement,YOLO une recherche d'architecture neuronale basée sur un auto-encodeur masqué (MAE) pour trouver la structure de réseau optimale. Il en résulte une structure mathématiquement adaptée à des contraintes de calcul spécifiques.
- RepGFPN efficace : il utilise un réseau pyramidal généralisé (GFPN) amélioré grâce à des mécanismes de reparamétrage. Cela permet au modèle de bénéficier des avantages d'une fusion complexe de caractéristiques multi-échelles pendant l'entraînement, tout en se réduisant à une structure plus simple et plus rapide pendant l'inférence.
- ZeroHead & AlignedOTA : La tête de détection, baptisée « ZeroHead », est extrêmement légère afin de réduire la charge de calcul des couches de sortie finales. De plus, la stratégie d'attribution des étiquettes, AlignedOTA, résout les problèmes de désalignement entre les tâches de classification et de régression pendant l'entraînement.
Points forts et faiblesses
Le principal atout deYOLO son rapport latence/précision. Pour certains matériels industriels spécifiques, la dorsale dérivée du NAS peut offrir un débit supérieur. Cependant, le modèle repose sur un pipeline de formation par distillation complexe, dans lequel un modèle « enseignant » plus grand doit d'abord être formé pour guider le modèle plus petit, ce qui peut rendre le processus de formation fastidieux pour les développeurs qui ont besoin d'itérations rapides. De plus, l'écosystème autour deYOLO moins actif que la YOLO au sens large, ce qui peut limiter la prise en charge des nouvelles cibles de déploiement.
YOLOv9: apprentissage avec des gradients programmables
YOLOv9, lancé début 2024, s'attaque au problème de la perte d'informations dans les réseaux profonds. À mesure que les réseaux neuronaux convolutifs deviennent plus profonds, les données essentielles nécessaires pour mapper les entrées aux sorties sont souvent perdues, un phénomène connu sous le nom de « goulot d'étranglement informationnel ».
- Auteurs : Chien-Yao Wang et Hong-Yuan Mark Liao
Organisation :Institut des sciences de l'information, Academia Sinica
Date : 21 février 2024
Arxiv :YOLOv9: Apprendre ce que vous voulez apprendre à l'aide d'informations de gradient programmables
GitHub :WongKinYiu/yolov9
Principales caractéristiques architecturales
YOLOv9 deux concepts révolutionnaires pour atténuer la perte d'informations :
- Informations sur les gradients programmables (PGI) : PGI est un cadre de supervision auxiliaire qui génère des gradients fiables pour mettre à jour les poids du réseau, garantissant ainsi que les couches profondes conservent les informations sémantiques essentielles. Il comprend une branche auxiliaire réversible qui n'est utilisée que pendant l'entraînement et supprimée pour l'inférence, n'entraînant aucun coût supplémentaire lors du déploiement.
- GELAN (Generalized Efficient Layer Aggregation Network) : cette architecture combine les meilleures caractéristiques de CSPNet et ELAN. GELAN est conçu pour être léger et rapide tout en prenant en charge différents blocs de calcul, ce qui permet un contrôle strict du nombre de paramètres sans sacrifier le champ réceptif.
Points forts et faiblesses
YOLOv9 en matière de précision, établissant de nouvelles références sur COCO . Sa capacité à conserver les informations le rend exceptionnel pour détecter des objets difficiles que d'autres modèles pourraient manquer. Cependant, la complexité architecturale introduite par les branches auxiliaires peut rendre le code source plus difficile à modifier pour des tâches personnalisées par rapport à des conceptions modulaires plus simples. Bien que très efficaces sur les GPU, les agrégations de couches spécifiques peuvent ne pas être entièrement optimisées pour tous les périphériques de pointe CPU par rapport aux modèles conçus spécifiquement pour ces cibles.
Comparaison des performances
Le tableau suivant met en évidence les indicateurs de performance deYOLO YOLOv9. Notez les compromis entre le nombre de paramètres, la charge de calcul (FLOP) et la précision (mAP).
| Modèle | Taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| DAMO-YOLOt | 640 | 42.0 | - | 2.32 | 8.5 | 18.1 |
| DAMO-YOLOs | 640 | 46.0 | - | 3.45 | 16.3 | 37.8 |
| DAMO-YOLOm | 640 | 49.2 | - | 5.09 | 28.2 | 61.8 |
| DAMO-YOLOl | 640 | 50.8 | - | 7.18 | 42.1 | 97.3 |
| 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 |
Alors que YOLOv9 atteint généralement une précision maximale plus élevée (jusqu'à 55,6 % mAP), YOLO offre des performances compétitives dans le domaine des petits modèles, mais au prix d'un nombre de paramètres plus élevé pour la variante « tiny ». YOLOv9t est nettement plus léger en termes de FLOP (7,7 G contre 18,1 G), ce qui le rend potentiellement plus adapté aux appareils aux ressources extrêmement limitées, malgré un mAP inférieur.
Ultralytics : entrez YOLO26
SiYOLO YOLOv9 des avancées académiques significatives, les développeurs qui se concentrent sur la production dans le monde réel ont souvent besoin d'une combinaison de performances de pointe, de facilité d'utilisation et de flexibilité de déploiement. C'est là Ultralytics se distingue comme le choix idéal pour les applications d'IA modernes.
Pourquoi YOLO26 ?
Sorti en janvier 2026, YOLO26 s'appuie sur l'héritage des générations précédentes, mais introduit des changements fondamentaux dans l'architecture et la stabilité de la formation.
- Conception NMS de bout en bout : contrairement à YOLOv9 YOLO, qui nécessitent généralement une suppression non maximale (NMS) pour filtrer les boîtes englobantes en double, YOLO26 est nativement de bout en bout. Cela élimine complètement l'étape NMS , réduisant ainsi la latence et la variance de l'inférence, et simplifiant considérablement les pipelines de déploiement.
- Optimiseur MuSGD : inspiré par les innovations dans la formation des grands modèles linguistiques (LLM), YOLO26 utilise l'optimiseur MuSGD. Cet hybride de SGD Muon (issu du Kimi K2 de Moonshot AI) apporte une stabilité sans précédent à la formation, garantissant une convergence plus rapide et réduisant le besoin d'un réglage approfondi des hyperparamètres.
- Efficacité Edge-First : en supprimant la perte focale de distribution (DFL) et en optimisant l'architecture pour CPU , YOLO26 atteint des vitesses CPU jusqu'à 43 % plus rapides. Cela en fait le candidat idéal pour l'edge computing sur des appareils tels que Raspberry Pi ou les téléphones mobiles, qui ne disposent pas de GPU.
- Détection améliorée des petits objets : grâce à l'introduction de ProgLoss + STAL (Self-Taught Anchor Learning), YOLO26 affiche des améliorations notables dans la reconnaissance des petits objets, une exigence essentielle pour l'imagerie par drone et les capteurs IoT.
Flux de travail rationalisé grâce à Ultralytics
Oubliez les pipelines de distillation complexes ou les configurations manuelles de l'environnement. Avec la Ultralytics , vous pouvez gérer vos ensembles de données, former des modèles YOLO26 dans le cloud et les déployer dans n'importe quel format (ONNX, TensorRT, CoreML) en un seul clic.
Polyvalence inégalée
Alors queYOLO avant tout un modèle de détection, Ultralytics garantit que YOLO26 prend en charge toute une gamme de tâches dès son installation. Que vous ayez besoin d'une segmentation d'instance, d'une estimation de pose avec estimation de la vraisemblance résiduelle (RLE) ou d'une détection OBB (Oriented Bounding Box) pour des levés aériens, l'API reste cohérente et simple.
Exemple de code : Formation avec Ultralytics
Python Ultralytics simplifie la complexité de l'entraînement des modèles avancés. Vous pouvez passer de YOLOv9 YOLO26 en toute transparence.
from ultralytics import YOLO
# Load the state-of-the-art YOLO26 model
# Pre-trained on COCO for instant transfer learning
model = YOLO("yolo26n.pt")
# Train the model on your custom dataset
# No complex configuration files or distillation steps required
results = model.train(
data="coco8.yaml",
epochs=100,
imgsz=640,
device=0, # Use GPU 0
)
# Run inference with NMS-free speed
# Results are ready immediately without post-processing tuning
results = model("https://ultralytics.com/images/bus.jpg")
Conclusion
Le choix du modèle approprié dépend de vos contraintes spécifiques. YOLO est un candidat sérieux si vous effectuez des recherches sur les architectures NAS ou si vous disposez d'un matériel qui tire spécifiquement parti de sa structure RepGFPN. YOLOv9 est un excellent choix pour les scénarios exigeant la plus grande précision possible sur des benchmarks académiques tels que COCO.
Cependant, pour les développeurs et les entreprises à la recherche d'une solution prête à l'emploi, Ultralytics offre la solution la plus convaincante. Sa conceptionNMS, CPU et son intégration avec la Ultralytics réduisent considérablement le délai de mise sur le marché. En combinant les atouts théoriques des modèles précédents avec des innovations pratiques telles que l'optimiseur MuSGD, YOLO26 vous garantit non seulement un modèle, mais aussi une solution complète et évolutive.