Passer au contenu

DAMO-YOLO vs. YOLOv6-3.0 : Une comparaison technique

La sélection de l'architecture de détection d'objets idéale est une décision cruciale pour les ingénieurs en vision par ordinateur, nécessitant souvent un équilibre délicat entre la précision, la latence d'inférence et les contraintes matérielles. Ce guide fournit une analyse technique complète comparant DAMO-YOLO, un modèle de haute précision d'Alibaba Group, et YOLOv6-3.0, un framework axé sur l'efficacité de Meituan.

Nous examinons leurs innovations architecturales, les performances de référence sur les ensembles de données standard et leur adéquation au déploiement dans le monde réel. De plus, nous explorons comment Ultralytics YOLO11 offre une alternative moderne et polyvalente aux développeurs à la recherche d'une solution unifiée.

Présentation de DAMO-YOLO

DAMO-YOLO est une méthode de détection d'objets de pointe développée par le groupe Alibaba. Elle privilégie le compromis entre la vitesse et la précision en intégrant la recherche d'architecture neuronale (NAS) et plusieurs nouveaux modules conçus pour éliminer les goulots d'étranglement computationnels.

Auteurs : Xianzhe Xu, Yiqi Jiang, Weihua Chen, Yilun Huang, Yuan Zhang et Xiuyu Sun
Organisation :Alibaba Group
Date : 2022-11-23
Arxiv :https://arxiv.org/abs/2211.15444v2
GitHub :https://github.com/tinyvision/DAMO-YOLO
Docs :https://github.com/tinyvision/DAMO-YOLO/blob/master/README.md

Architecture et principales fonctionnalités

DAMO-YOLO introduit une stratégie de mise à l'échelle "Tiny-to-Large" soutenue par une conception architecturale unique. Les composants clés incluent :

  • Les dorsales MAE-NAS : En utilisant la recherche d'architecture neuronale (NAS), le modèle emploie des dorsales MazeNet dont la structure varie afin de maximiser l'efficacité de l'extraction des caractéristiques dans différents budgets de calcul.
  • RepGFPN efficace : Un réseau de pyramide de caractéristiques généralisé (GFPN) amélioré avec la reparamétrisation (Rep) permet une fusion supérieure des caractéristiques multi-échelles. Cette conception garantit que les informations spatiales de bas niveau et les informations sémantiques de haut niveau sont combinées efficacement sans entraîner de coûts de latence importants.
  • ZeroHead : Une conception de tête de détection minimaliste (« ZeroHead ») qui réduit considérablement le nombre de paramètres. En découplant efficacement les tâches de classification et de régression, elle maintient des performances élevées tout en rationalisant les couches de prédiction finales.
  • AlignedOTA : Une stratégie avancée d’attribution d’étiquettes qui résout les désalignements entre les scores de classification et l’IoU (Intersection sur Union) de régression, garantissant que le modèle se concentre sur les ancres de haute qualité pendant la formation.

Points forts et faiblesses

DAMO-YOLO excelle dans les scénarios où chaque point de pourcentage de mAP est critique.

  • Avantages :

    • Haute précision : Surpasse souvent les modèles comparables en termes de mAP pour les petites et moyennes tailles en raison de son backbone optimisé par NAS.
    • Conception innovante : Le concept ZeroHead réduit la lourde charge de calcul que l'on trouve généralement dans les têtes de détection.
    • Forte distillation : Comprend un mécanisme de distillation robuste (distillation des connaissances) qui améliore les performances des modèles étudiants plus petits à l’aide de réseaux enseignants plus grands.
  • Inconvénients :

    • Architecture complexe : L'utilisation de backbones générés par NAS peut rendre l'architecture plus difficile à personnaliser ou à déboguer par rapport aux conceptions standard basées sur CSP.
    • Écosystème limité : En tant que version axée sur la recherche, il lui manque l'intégration étendue d'outils tiers que l'on trouve dans les écosystèmes plus larges.
    • Variabilité de la latence : Bien qu'optimisées, les structures NAS ne correspondent pas toujours parfaitement aux accélérateurs matériels spécifiques, comme le font les CNN standard.

Cas d'utilisation idéaux

  • Surveillance des villes intelligentes : Là où une grande précision est nécessaire pour detect de petits objets comme des piétons ou des véhicules à distance.
  • Inspection automatisée de la qualité : Identification des défauts subtils dans les chaînes de fabrication où la précision est primordiale.

En savoir plus sur DAMO-YOLO

Présentation de YOLOv6-3.0

YOLOv6-3.0 est la troisième itération du framework YOLOv6 développé par Meituan. Il est conçu spécifiquement pour les applications industrielles, en mettant l'accent sur un débit élevé sur les GPU et une facilité de déploiement.

Auteurs : Chuyi Li, Lulu Li, Yifei Geng, Hongliang Jiang, Meng Cheng, Bo Zhang, Zaidan Ke, Xiaoming Xu et Xiangxiang Chu
Organisation :Meituan
Date : 2023-01-13
Arxiv :https://arxiv.org/abs/2301.05586
GitHub :https://github.com/meituan/YOLOv6
Docs :https://docs.ultralytics.com/models/yolov6/

Architecture et principales fonctionnalités

YOLOv6-3.0 se concentre sur des conceptions hardware-friendly qui maximisent l'utilisation du GPU:

  • EfficientRep Backbone : Le backbone utilise des blocs reparamétrables qui condensent les structures complexes du temps d'apprentissage en simples convolutions 3x3 pour l'inférence, ce qui augmente la vitesse sur du matériel tel que NVIDIA TensorRT.
  • Cou Rep-PAN : L'architecture du cou équilibre la capacité de fusion des caractéristiques avec l'efficacité du matériel, garantissant que les données circulent de manière fluide à travers le réseau sans goulots d'étranglement.
  • Concaténation bidirectionnelle (BiC) : Améliore la précision de la localisation en améliorant la façon dont les caractéristiques sont agrégées à différentes échelles.
  • Formation assistée par l’ancrage (AAT) : Une stratégie hybride qui combine les avantages des paradigmes basés sur l’ancrage et sans ancrage pendant la phase de formation afin de stabiliser la convergence et d’améliorer la précision finale.

Points forts et faiblesses

YOLOv6-3.0 est une centrale électrique pour les environnements industriels nécessitant un déploiement standard de GPU.

  • Avantages :

    • Vitesse d'Inference : L'argument nano variante est exceptionnellement rapide, ce qui la rend idéale pour les exigences de FPS élevés.
    • Optimisation Matérielle : Conçu explicitement pour le débit GPU, fonctionnant bien avec la quantification TensorRT.
    • Déploiement simplifié : La re-paramétrisation simplifie le graphe final, réduisant les problèmes de compatibilité lors de l'exportation.
  • Inconvénients :

    • Concentration sur une seule tâche : Principalement capable de détection d'objets, sans prise en charge native de la segmentation ou de l'estimation de pose dans le référentiel principal, contrairement aux frameworks multi-tâches.
    • Efficacité des paramètres : Les variantes plus grandes peuvent être plus lourdes en termes de paramètres par rapport à certains concurrents pour des gains de précision similaires.

Cas d'utilisation idéaux

  • Automatisation Industrielle : Tri à haute vitesse et vérification de l'assemblage sur les lignes de production.
  • Analyse de vente au détail :Inférence en temps réel pour la surveillance des rayons et l'analyse du comportement des clients.
  • Informatique en périphérie : Déploiement de modèles légers tels que YOLOv6-Lite sur des appareils mobiles ou embarqués.

En savoir plus sur YOLOv6

Analyse des performances

La comparaison ci-dessous met en évidence les performances des deux modèles sur le jeu de données COCO. Les mesures se concentrent sur le mAP de validation (précision moyenne moyenne) à IoU 0,5-0,95, la vitesse d'inférence sur les GPU T4 à l'aide de TensorRT et la complexité du modèle (paramètres et FLOPs).

Aperçus des performances

YOLOv6-3.0n se distingue comme le champion de la vitesse, offrant une inférence inférieure à 2 ms, ce qui le rend parfait pour les applications extrêmement sensibles à la latence. Cependant, les modèles DAMO-YOLO (en particulier les variantes Small et Medium) atteignent souvent des scores mAP plus élevés que leurs homologues YOLOv6, ce qui démontre une forte efficacité architecturale découlant de leurs backbones NAS.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
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
YOLOv6-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.0l64052.8-8.9559.6150.7

L'avantage Ultralytics

Bien que DAMO-YOLO et YOLOv6-3.0 offrent des fonctionnalités intéressantes pour des niches spécifiques, Ultralytics YOLO11 représente une évolution holistique de l'IA en vision par ordinateur. Conçu pour les développeurs qui ont besoin de plus qu'un simple modèle de détection, YOLO11 intègre des performances de pointe avec une expérience utilisateur inégalée.

Pourquoi choisir Ultralytics YOLO ?

  • Écosystème unifié : Contrairement aux référentiels de recherche autonomes, Ultralytics fournit une plateforme complète. De l’annotation des données à la formation et au déploiement des modèles, le flux de travail est transparent. La communauté active sur GitHub et Discord vous assure de ne jamais développer en isolation.
  • Polyvalence inégalée : Une seule architecture de modèle YOLO11 prend en charge un large éventail de tâches de vision par ordinateur, notamment la détection d’objets, la segmentation d’instance, l’estimation de pose, les boîtes englobantes orientées (OBB) et la classification. Cette flexibilité vous permet de vous attaquer à des projets complexes sans changer de framework.
  • Efficacité de l'entraînement : Les modèles Ultralytics sont optimisés pour l'efficacité de l'entraînement, nécessitant souvent beaucoup moins de mémoire GPU que les alternatives basées sur des transformateurs. Des fonctionnalités telles que la détermination automatique de la taille des lots et l'entraînement en précision mixte (AMP) sont activées par défaut, ce qui simplifie le passage des données au déploiement.
  • Facilité d'utilisation : L'API python est conçue pour la simplicité. Vous pouvez charger un modèle pré-entraîné, exécuter l'inférence sur une image et l'exporter vers des formats tels que ONNX ou TensorRT avec seulement quelques lignes de code.
from ultralytics import YOLO

# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")

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

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

# Export the model to ONNX format for deployment
model.export(format="onnx")

Conclusion

Pour les projets nécessitant strictement le débit le plus élevé sur les GPU industriels, YOLOv6-3.0 est un concurrent sérieux. Si votre objectif est de maximiser la précision dans un budget de paramètres spécifique à l'aide de NAS, DAMO-YOLO est une excellente option de niveau recherche.

Cependant, pour la grande majorité des applications commerciales et de recherche, Ultralytics YOLO11 offre le meilleur équilibre entre performance, convivialité et maintenabilité à long terme. Sa capacité à gérer plusieurs tâches, combinée à un écosystème robuste et bien entretenu, en fait le choix recommandé pour la création de solutions de vision par ordinateur évolutives.

Explorer d'autres modèles

Élargissez votre compréhension du paysage de la détection d'objets en explorant ces autres comparaisons détaillées :


Commentaires