Passer au contenu

YOLOv9 vs. YOLO: une comparaison technique complète

Dans le paysage en évolution rapide de la vision par ordinateur, le choix de l'architecture optimale de détection d'objets est essentiel pour la réussite d'un projet. Cette analyse fournit une comparaison technique détaillée entre deux modèles formidables : YOLOv9célèbre pour ses innovations architecturales en matière d'informations de gradient, et YOLO, un modèle du groupe Alibaba conçu pour l'inférence à grande vitesse. Nous examinons leurs architectures uniques, leurs mesures de performance et leurs scénarios de déploiement idéaux afin d'aider les développeurs et les chercheurs à prendre des décisions éclairées.

YOLOv9: informations de gradient programmables pour une précision supérieure

YOLOv9 marque une évolution significative dans la série You Only Look OnceYOLO), en se concentrant sur la résolution du problème du goulot d'étranglement de l'information inhérent aux réseaux neuronaux profonds. En veillant à ce que les données d'entrée cruciales soient préservées dans toutes les couches du réseau, YOLOv9 atteint une précision de pointe.

Auteurs : Chien-Yao Wang et Hong-Yuan Mark Liao
Organisation:Institute of Information Science, Academia Sinica, Taiwan
Date : 2024-02-21
Arxiv:2402.13616
GitHub:WongKinYiu/yolov9
Docs:Ultralytics YOLOv9 Documentation

Architecture et innovations fondamentales

L'architecture de YOLOv9 repose sur deux concepts révolutionnaires conçus pour optimiser l'efficacité de l'apprentissage profond :

  1. Information de gradient programmable (PGI) : L'IGP est un cadre de supervision auxiliaire qui traite le problème de la perte d'informations lorsque les données se propagent à travers des couches profondes. Il garantit que la fonction de perte reçoit des gradients fiables, ce qui permet au modèle d'apprendre des caractéristiques plus efficaces sans ajouter de coût d'inférence.
  2. Réseau d'agrégation de couches efficace généralisé (GELAN) : Cette nouvelle architecture combine les forces de CSPNet et d'ELAN. GELAN est conçu pour maximiser l'utilisation des paramètres et l'efficacité des calculs, en fournissant un réseau fédérateur léger mais puissant qui prend en charge divers blocs de calcul.

Forces et écosystème

  • Précision de premier ordre : YOLOv9 atteint une précision exceptionnelle mAP exceptionnels sur le jeu de donnéesCOCO , établissant ainsi des références pour les détecteurs d'objets en temps réel.
  • Efficacité des paramètres : Grâce à GELAN, le modèle offre des performances élevées avec moins de paramètres que ses prédécesseurs.
  • IntégrationUltralytics : En faisant partie de l'écosystème Ultralytics , YOLOv9 bénéficie d'une APIPython unifiée, d'options d'exportation de modèles transparentesONNX, TensorRT, CoreML) et d'une documentation solide.
  • Stabilité de la formation : Le cadre de l'IGP améliore considérablement la vitesse de convergence et la stabilité pendant l'apprentissage du modèle.

Faiblesses

  • Intensité des ressources : Bien qu'efficaces pour leur classe de précision, les variantes les plus importantes (comme YOLOv9 nécessitent d'importantes ressources en GPU pour l'entraînement.
  • Objectif de la tâche : La recherche fondamentale porte principalement sur la détection d'objets, alors que d'autres modèles Ultralytics tels que YOLO11 prennent nativement en charge un plus large éventail de tâches, y compris l'estimation de la pose et l'OBB.

En savoir plus sur YOLOv9

YOLO: Architecture neuronale à la recherche de la vitesse

YOLO témoigne de la puissance de la conception automatisée d'architectures. Développée par Alibaba, elle s'appuie sur la recherche d'architecture neuronale (NAS) pour trouver l'équilibre optimal entre la latence de l'inférence et les performances de détection, en ciblant spécifiquement les applications industrielles.

Auteurs : Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang et Xiuyu Sun
Organisation:Alibaba Group
Date : 2022-11-23
Arxiv:2211.15444
GitHub:YOLO

Architecture et principales fonctionnalités

YOLO se distingue par plusieurs avancées technologiques visant à maximiser le rendement :

  • Réseau MAE-NAS : Il utilise une structure dorsale dérivée de la méthode Method-Aware Efficient Neural Architecture Search, optimisant la topologie du réseau pour des contraintes matérielles spécifiques.
  • RepGFPN efficace : Le modèle utilise un réseau pyramidal de caractéristiques généralisé reparamétré pour son cou, ce qui améliore la fusion des caractéristiques tout en maintenant une faible latence.
  • ZeroHead : conception d'une tête de détection légère qui réduit la surcharge de calcul généralement associée aux couches de prédiction finales.
  • AlignedOTA : une stratégie améliorée d'attribution d'étiquettes qui résout les problèmes d'alignement entre les tâches de classification et de régression au cours de la formation.

Points forts

  • Faible latence : YOLO est conçu pour la vitesse, ce qui le rend très efficace pour l'inférence en temps réel sur les périphériques et les GPU.
  • Conception automatisée : L'utilisation des NAS garantit que l'architecture est réglée mathématiquement pour être efficace, plutôt que de s'appuyer uniquement sur des heuristiques manuelles.
  • Sans ancrage : il adopte une approche sans ancrage, ce qui simplifie le processus de réglage des hyperparamètres lié aux boîtes d'ancrage.

Faiblesses

  • Ecosystème limité : Comparé à l'outillage étendu disponible pour les modèles Ultralytics , YOLO dispose d'une plus petite communauté et de moins d'outils d'intégration prêts à l'emploi pour les MLOps.
  • Polyvalence : Il est principalement spécialisé dans la détection et ne dispose pas des capacités multitâches natives (segmentation, classification) que l'on trouve dans des cadres plus complets.

En savoir plus sur DAMO-YOLO

Analyse des performances : Vitesse vs. Précision

Lorsque l'on compare les mesures de performance, les compromis entre les deux architectures apparaissent clairement. YOLOv9 donne la priorité à la préservation des informations pour atteindre une précision supérieure, dépassant souvent YOLO en termes de scores mAP pour des modèles de taille similaire. À l'inverse, YOLO se concentre sur le débit brut.

Cependant, l'efficacité de l'architecture GELAN de YOLOv9 lui permet de rester très compétitif en termes de vitesse tout en offrant une meilleure qualité de détection. Par exemple, YOLOv9 atteint un mAP nettement plus élevé (53,0 %) que YOLO (50,8 %) tout en utilisant moins de paramètres (25,3 M contre 42,1 M). Cela met en évidence la capacité de YOLOv9 à fournir "plus pour moins" en termes de complexité du modèle.

Interprétation des performances

Lors de l'évaluation des modèles, tenez compte du nombre de FLOPs (Floating Point Operations) parallèlement au nombre de paramètres. Un nombre de FLOPs inférieur indique généralement un modèle plus léger en termes de calcul et potentiellement plus rapide sur le matériel d'IA mobile ou périphérique.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv9t64038.3-2.32.07.7
YOLOv9s64046.8-3.547.126.4
YOLOv9m64051.4-6.4320.076.3
YOLOv9c64053.0-7.1625.3102.1
YOLOv9e64055.6-16.7757.3189.0
DAMO-YOLOt64042.0-2.328.518.1
DAMO-YOLOs64046.0-3.4516.337.8
DAMO-YOLOm64049.2-5.0928.261.8
DAMO-YOLOl64050.8-7.1842.197.3

Cas d'utilisation idéaux

Les différences architecturales déterminent les scénarios de déploiement idéaux pour chaque modèle.

Applications YOLOv9

YOLOv9 est le choix privilégié pour les applications où la précision n'est pas négociable.

  • Imagerie médicale : Détection d'anomalies subtiles dans l'analyse d'images médicales, lorsqu'une erreur de détection peut s'avérer critique.
  • Navigation autonome : Systèmes de perception avancés pour les voitures autonomes nécessitant une grande confiance dans la détection des objets.
  • Surveillance détaillée : Les systèmes de sécurité qui doivent identifier de petits objets ou fonctionner dans des environnements complexes et très encombrés.

Applications YOLO

YOLO excelle dans les environnements contraints par des budgets de latence stricts.

  • Fabrication à grande vitesse : Lignes industrielles où les systèmes de vision par ordinateur doivent suivre le rythme des bandes transporteuses rapides.
  • Analyse vidéo : Traitement de volumes massifs de flux vidéo pour lesquels le coût du débit est une préoccupation majeure.

L'avantage Ultralytics

Bien que les deux modèles soient techniquement impressionnants, le choix d'un modèle au sein de l'écosystèmeUltralytics - tel que YOLOv9 ou le modèle d'avant-garde YOLO11-offre des avantages distincts aux développeurs et aux entreprises.

Un flux de travail et une facilité d'utilisation sans faille

Ultralytics privilégie la facilité d'utilisation. Les modèles sont accessibles via une interface unifiée qui fait abstraction du code standard complexe. Que vous vous entraîniez sur des données personnalisées ou que vous fassiez de l'inférence, le processus est cohérent et intuitif.

from ultralytics import YOLO

# Load a pre-trained YOLOv9 model
model = YOLO("yolov9c.pt")

# Train the model on your custom dataset
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)

# Run inference on an image
results = model("path/to/image.jpg")

Un écosystème bien entretenu

Les modèles Ultralytics sont soutenus par une communauté active et des mises à jour fréquentes. Des fonctionnalités telles que Ultralytics HUB permettent la gestion des ensembles de données et la formation sur le Web, tandis que les intégrations étendues avec des outils tels que TensorBoard et MLflow rationalisent le cycle de vie des MLOps. En revanche, les modèles de recherche tels que YOLO manquent souvent de ce niveau de support continu et d'intégration d'outils.

Polyvalence et efficacité

Les modèles Ultralytics sont conçus pour être polyvalents. Alors que YOLO est spécifique à la détection, les modèles Ultralytics tels que YOLO11 étendent leurs capacités à la segmentation des instances, à l'estimation de la pose et à la détection de la boîte de délimitation orientée (OBB). En outre, ils sont optimisés pour l'efficacité de la mémoire, nécessitant souvent moins de mémoire CUDA pendant l'entraînement que d'autres architectures, ce qui permet d'économiser sur les coûts matériels.

Conclusion

La comparaison entreYOLOv9 et YOLO montre que les deux modèles illustrent les progrès rapides de l'IA. YOLO offre une architecture convaincante pour l'optimisation de la vitesse pure. Cependant, YOLOv9 s'impose comme la solution la plus robuste pour la plupart des applications pratiques. Elle offre une précision supérieure par paramètre, utilise une architecture avancée pour éviter la perte d'informations et réside dans l'écosystème florissant d'Ultralytics . Pour les développeurs qui recherchent le meilleur équilibre entre performance, facilité d'utilisation et support à long terme, les modèles Ultralytics restent le choix recommandé.

Explorer d'autres modèles

Découvrez la comparaison avec d'autres modèles de pointe dans notre documentation :


Commentaires