DAMO-YOLO vs. YOLOv8 : Une comparaison technique
Choisir le bon modèle de détection d'objets est une décision cruciale qui équilibre la précision, la vitesse et la facilité de mise en œuvre. Cette page fournit une comparaison technique détaillée entre DAMO-YOLO, un modèle haute performance du groupe Alibaba, et Ultralytics YOLOv8, un modèle de pointe reconnu pour sa polyvalence et son écosystème robuste. Nous examinerons en profondeur leurs différences architecturales, leurs mesures de performance et leurs cas d'utilisation idéaux pour vous aider à sélectionner le meilleur modèle pour votre projet de vision par ordinateur.
DAMO-YOLO : Une méthode rapide et précise d’Alibaba
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 est un détecteur d'objets puissant issu de la recherche d'Alibaba, introduisant plusieurs techniques innovantes pour repousser les limites du compromis vitesse-précision. Son architecture est le résultat d'une approche globale qui combine la recherche d'architecture neuronale (NAS) avec des principes de conception avancés.
- Backbone alimenté par NAS : DAMO-YOLO utilise un backbone généré par NAS, ce qui lui permet de découvrir des structures d’extraction de caractéristiques très efficaces, adaptées à la détection d’objets.
- Neck RepGFPN efficace : Il introduit une nouvelle structure de neck, le Generalized Feature Pyramid Network (GFPN), qui est améliorée avec des techniques de reparamétrisation pour améliorer la fusion des caractéristiques avec une surcharge de calcul minimale.
- ZeroHead : Le modèle utilise une tête de détection sans ancrage légère, appelée ZeroHead, qui réduit la complexité de calcul tout en maintenant des performances élevées.
- Attribution de label AlignedOTA : Elle utilise une stratégie avancée d'attribution de labels appelée AlignedOTA, qui améliore la stabilité de l'entraînement et la précision du modèle en alignant mieux les échantillons positifs avec les objets de vérité terrain appropriés.
- Distillation des connaissances : Les modèles plus grands de la famille DAMO-YOLO sont améliorés grâce à la distillation des connaissances afin d’améliorer davantage la performance.
Points forts
- Haute précision et vitesse sur GPU : DAMO-YOLO est hautement optimisé pour le matériel GPU, offrant un excellent équilibre entre mAP et vitesse d’inférence, ce qui en fait un concurrent sérieux pour les applications où les performances du GPU sont essentielles.
- Architecture innovante : Son utilisation de NAS et de composants personnalisés tels que RepGFPN et ZeroHead met en évidence la recherche avancée et fournit une architecture très efficace.
Faiblesses
- Écosystème limité : Comparé à Ultralytics YOLO, l’écosystème autour de DAMO-YOLO est moins développé. Il manque la documentation complète, les tutoriels et les outils intégrés comme Ultralytics HUB qui simplifient le flux de travail de bout en bout.
- Spécificité de la tâche : DAMO-YOLO est principalement conçu pour la détection d’objets. Il n’offre pas de prise en charge native pour d’autres tâches de vision telles que la segmentation, l’estimation de pose ou la classification dans le même cadre.
- Communauté et support : Bien qu'il s'agisse d'une contribution open source précieuse, il n'a pas le même niveau de support communautaire actif ou de mises à jour fréquentes que la série YOLO d'Ultralytics.
Ultralytics YOLOv8 : polyvalence et performances
Auteurs : Glenn Jocher, Ayush Chaurasia et Jing Qiu
Organisation : Ultralytics
Date : 2023-01-10
GitHub : https://github.com/ultralytics/ultralytics
Docs : https://docs.ultralytics.com/models/yolov8/
Architecture et principales fonctionnalités
Ultralytics YOLOv8 est un modèle de pointe qui s'appuie sur le succès des versions précédentes de YOLO. Il est conçu pour être rapide, précis et incroyablement facile à utiliser, tout en fournissant un cadre unifié pour une variété de tâches de vision par ordinateur.
- Backbone CSPDarknet affiné : YOLOv8 utilise un backbone CSPDarknet avancé, optimisant le processus d'extraction de caractéristiques pour de meilleures performances.
- C2f Neck : Il intègre le module C2f dans son neck, qui remplace le module C3 de YOLOv5, permettant une fusion de caractéristiques plus efficace.
- Tête découplée sans ancres : Comme DAMO-YOLO, YOLOv8 est sans ancres, ce qui simplifie le processus de correspondance pendant l’apprentissage. Sa tête découplée sépare les tâches de classification et de régression, ce qui améliore la précision globale du modèle.
Points forts
- Facilité d'utilisation : YOLOv8 est réputé pour sa conception conviviale. Grâce à une API Python et une CLI simplifiées, les développeurs peuvent former, valider et déployer des modèles avec seulement quelques lignes de code.
- Écosystème bien maintenu : Il est soutenu par l'écosystème complet d'Ultralytics, qui comprend une documentation exhaustive, un développement actif, un fort soutien de la communauté et une intégration transparente avec des outils tels que Ultralytics HUB pour l'entraînement sans code et le MLOps.
- Équilibre des performances : YOLOv8 offre un compromis exceptionnel entre vitesse et précision sur une gamme de matériel, des appareils périphériques aux puissants GPU cloud.
- Polyvalence : Un avantage clé de YOLOv8 est sa prise en charge native de plusieurs tâches : détection d'objets, segmentation d'instance, classification d'images, estimation de la pose et détection d'objets orientés (OBB). Cela en fait une solution unique pour les projets de vision complexes.
- Efficacité de l'entraînement et de la mémoire : Les modèles YOLOv8 sont conçus pour un entraînement efficace, nécessitant souvent moins de mémoire CUDA que les alternatives. La disponibilité de poids pré-entraînés sur des ensembles de données comme COCO accélère le développement de modèles personnalisés.
Faiblesses
- Besoins en ressources pour les grands modèles : Le plus grand modèle, YOLOv8x, offre la plus haute précision, mais nécessite des ressources de calcul importantes, un compromis courant pour les modèles les plus performants.
Analyse des performances : Vitesse et précision
Une comparaison directe sur l’ensemble de données COCO révèle le paysage concurrentiel entre DAMO-YOLO et YOLOv8. Le tableau suivant résume leurs mesures de performance.
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 |
YOLOv8n | 640 | 37.3 | 80.4 | 1.47 | 3.2 | 8.7 |
YOLOv8s | 640 | 44.9 | 128.4 | 2.66 | 11.2 | 28.6 |
YOLOv8m | 640 | 50.2 | 234.7 | 5.86 | 25.9 | 78.9 |
YOLOv8l | 640 | 52.9 | 375.2 | 9.06 | 43.7 | 165.2 |
YOLOv8x | 640 | 53.9 | 479.1 | 14.37 | 68.2 | 257.8 |
D'après le tableau, nous pouvons tirer plusieurs conclusions :
- Précision : YOLOv8x atteint le mAP le plus élevé de 53,9 %, surpassant toutes les variantes DAMO-YOLO. Dans les tailles moyennes, YOLOv8m (50,2 mAP) est plus précis que DAMO-YOLOm (49,2 mAP). Cependant, DAMO-YOLOs (46,0 mAP) surpasse légèrement YOLOv8s (44,9 mAP).
- Vitesse GPU : Les deux familles de modèles sont extrêmement rapides sur GPU. YOLOv8n est le plus rapide avec 1,47 ms. DAMO-YOLOt affiche une vitesse impressionnante de 2,32 ms, ce qui est plus rapide que YOLOv8s.
- Vitesse du CPU : YOLOv8 fournit des benchmarks clairs pour l'inférence CPU, un facteur essentiel pour de nombreuses applications d'IA en périphérie. L'absence de benchmarks CPU officiels pour DAMO-YOLO rend difficile l'évaluation pour les déploiements liés au CPU, alors que YOLOv8 est un performeur éprouvé dans ces scénarios.
- Efficacité : Les modèles YOLOv8 sont généralement plus efficaces en termes de paramètres. Par exemple, YOLOv8s a moins de paramètres (11,2M contre 16,3M) et de FLOPs (28,6B contre 37,8B) que DAMO-YOLOs tout en offrant une précision comparable.
Méthodologies de formation et convivialité
Le processus de formation de DAMO-YOLO exploite des techniques avancées telles qu’AlignedOTA et la distillation des connaissances, qui peuvent atteindre des performances élevées, mais peuvent nécessiter une expertise plus approfondie pour la configuration et le réglage.
En revanche, le framework Ultralytics privilégie une expérience utilisateur transparente. L'entraînement d'un modèle YOLOv8 est simple, que ce soit en utilisant la CLI ou le SDK python. Le framework fait abstraction d'une grande partie de la complexité, permettant aux utilisateurs de se concentrer sur leurs données et leurs objectifs d'application. Le processus d'entraînement efficace, combiné aux poids pré-entraînés facilement disponibles et aux guides complets sur des sujets tels que le réglage des hyperparamètres, rend YOLOv8 accessible aux débutants comme aux experts.
Conclusion : Quel modèle devriez-vous choisir ?
DAMO-YOLO et YOLOv8 sont tous deux des modèles de détection d'objets exceptionnels qui repoussent les limites de l'état de l'art.
DAMO-YOLO est un excellent choix pour les chercheurs et les développeurs qui privilégient les performances GPU brutes et qui sont à l’aise de travailler dans un cadre plus axé sur la recherche. Son architecture innovante offre des résultats impressionnants, en particulier dans les scénarios où les ressources GPU sont abondantes.
Cependant, pour la grande majorité des développeurs et des applications, Ultralytics YOLOv8 se distingue comme le choix supérieur. Ses principaux avantages en font un outil plus pratique et puissant pour la construction de solutions de vision par ordinateur réelles :
- Polyvalence inégalée : La prise en charge de la détection, de la segmentation, de la pose, de la classification et du suivi dans un seul cadre permet de gagner un temps de développement considérable.
- Facilité d'utilisation supérieure : Une API simple et intuitive et une documentation complète abaissent la barrière à l'entrée et accélèrent les délais des projets.
- Écosystème robuste : Des mises à jour continues, un fort soutien de la communauté et des outils tels que Ultralytics HUB fournissent un environnement complet pour l'ensemble du cycle de vie de l'IA.
- Balanced Performance : YOLOv8 offre un mélange exceptionnel de vitesse et de précision sur CPU et GPU, assurant une flexibilité pour divers objectifs de déploiement.
En fin de compte, bien que DAMO-YOLO témoigne de la recherche de pointe, YOLOv8 offre un ensemble plus complet, convivial et polyvalent, ce qui en fait le choix recommandé pour la création de solutions d’IA robustes et évolutives.
Explorer d’autres comparaisons de modèles
Si vous souhaitez savoir comment ces modèles se comparent à d'autres architectures de pointe, consultez ces comparaisons supplémentaires :
- YOLOv9 vs. DAMO-YOLO
- YOLO11 vs. DAMO-YOLO
- RT-DETR vs. DAMO-YOLO
- YOLOv8 vs. YOLOv9
- YOLOv8 vs. RT-DETR
- YOLOv8 vs. YOLOv7