Comparaison de modèles : YOLOv6-3.0 vs YOLOv5 pour la détection d'objets
Choisir le modèle de détection d'objets optimal est essentiel pour la réussite des applications de vision par ordinateur. Meituan YOLOv6-3.0 et Ultralytics YOLOv5 sont tous deux des choix populaires reconnus pour leur efficacité et leur précision. Cette page fournit une comparaison technique pour vous aider à décider quel modèle convient le mieux aux besoins de votre projet. Nous examinons en profondeur leurs nuances architecturales, leurs benchmarks de performance, leurs approches de formation et leurs applications appropriées, en soulignant les atouts de l'écosystème Ultralytics.
Meituan YOLOv6-3.0
YOLOv6-3.0, développé par Meituan, est un framework de détection d’objets conçu principalement pour les applications industrielles. Publié au début de 2023, il visait à fournir un équilibre entre la vitesse et la précision adapté aux scénarios de déploiement réels.
- 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
- Documentation : https://docs.ultralytics.com/models/yolov6/
Architecture et principales fonctionnalités
YOLOv6 a introduit des modifications architecturales telles qu'un backbone efficace et reparamétrable et une conception de neck rationalisée. La version 3.0 a affiné davantage ces éléments et intégré des techniques telles que l'auto-distillation pendant l'entraînement afin d'améliorer les performances. Il propose également des modèles spécifiques optimisés pour le déploiement mobile (YOLOv6Lite).
Points forts
- Bon compromis vitesse-précision : Offre des performances compétitives, en particulier pour les tâches de détection d'objets industrielles sur GPU.
- Prise en charge de la quantification : Fournit des outils et des tutoriels pour la quantification de modèle, ce qui est bénéfique pour le déploiement sur du matériel doté de ressources limitées.
- Optimisation mobile : Inclut les variantes YOLOv6Lite spécialement conçues pour l'inférence mobile ou basée sur le CPU.
Faiblesses
- Polyvalence limitée : Principalement axé sur la détection d'objets, il ne prend pas en charge nativement la segmentation d'instance, la classification d'images et l'estimation de pose que l'on retrouve dans les modèles Ultralytics tels que YOLOv8.
- Écosystème et maintenance : Bien qu'il soit open source, l'écosystème n'est ni aussi complet ni aussi activement maintenu que la plateforme Ultralytics. Cela peut entraîner des mises à jour plus lentes, un soutien communautaire moindre et une expérience utilisateur plus complexe.
- Utilisation plus importante des ressources : Comme le montre le tableau des performances, les modèles YOLOv6 plus volumineux peuvent avoir plus de paramètres et de FLOP que les modèles YOLOv5 comparables, ce qui peut nécessiter davantage de ressources de calcul.
Ultralytics YOLOv5
Ultralytics YOLOv5 est un modèle de détection d’objets à étape unique, réputé pour sa vitesse, sa facilité d’utilisation et son adaptabilité. Développé par Ultralytics, il représente une étape importante dans la démocratisation de la détection d’objets haute performance auprès d’un large public.
- Auteurs : Glenn Jocher
- Organisation : Ultralytics
- Date : 2020-06-26
- GitHub : https://github.com/ultralytics/yolov5
- Documentation : https://docs.ultralytics.com/models/yolov5/
Construit entièrement en PyTorchYOLOv5 dispose d'un backbone CSPDarknet53 et d'un cou PANet pour une extraction et une fusion efficaces des caractéristiques. Son architecture est hautement modulaire, ce qui permet une mise à l'échelle facile à travers différentes tailles de modèles (n, s, m, l, x) pour répondre à diverses exigences de performance.
Points forts de YOLOv5
- Vitesse et efficacité : YOLOv5 excelle en vitesse d’inférence, ce qui le rend idéal pour les applications en temps réel et le déploiement sur des appareils périphériques aux ressources limitées. Ses performances CPU sont particulièrement remarquables.
- Facilité d'utilisation : Reconnu pour sa simplicité, YOLOv5 offre une expérience utilisateur simplifiée avec une API simple, une documentation exhaustive et de nombreux tutoriels.
- Écosystème bien maintenu : Bénéficie de l'écosystème Ultralytics intégré, comprenant un développement actif, un fort soutien de la communauté, des mises à jour fréquentes et une intégration transparente avec Ultralytics HUB pour MLOps.
- Équilibre des performances : Offre un bon compromis entre vitesse et précision, adapté à divers scénarios de déploiement réels.
- Efficacité de l'entraînement : Offre des processus d'entraînement efficaces, des poids pré-entraînés facilement disponibles et des besoins en mémoire inférieurs à ceux de nombreuses autres architectures, en particulier les modèles basés sur des transformateurs.
- Polyvalence : Prend en charge plusieurs tâches, notamment la détection d'objets, la segmentation d'instance et la classification d'images au sein d'un framework unifié.
Faiblesses de YOLOv5
- Précision maximale : Bien que très précis et efficaces, les modèles plus récents comme YOLOv6-3.0 ou Ultralytics YOLOv8 peuvent offrir un mAP légèrement plus élevé sur certains benchmarks, en particulier les variantes de modèles plus grands sur GPU.
Comparaison directe des performances : YOLOv6-3.0 contre YOLOv5
Le tableau ci-dessous fournit une comparaison détaillée des performances entre les modèles YOLOv6-3.0 et YOLOv5 sur le jeu de données COCO.
Modèle | Taille (pixels) |
mAPval 50-95 |
Vitesse CPU ONNX (ms) |
Vitesse T4 TensorRT10 (ms) |
paramètres (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
YOLOv6-3.0n | 640 | 37.5 | - | 1.17 | 4.7 | 11.4 |
YOLOv6-3.0s | 640 | 45.0 | - | 2.66 | 18.5 | 45.3 |
YOLOv6-3.0m | 640 | 50.0 | - | 5.28 | 34.9 | 85.8 |
YOLOv6-3.0l | 640 | 52.8 | - | 8.95 | 59.6 | 150.7 |
YOLOv5n | 640 | 28.0 | 73.6 | 1.12 | 2.6 | 7.7 |
YOLOv5s | 640 | 37.4 | 120.7 | 1.92 | 9.1 | 24.0 |
YOLOv5m | 640 | 45.4 | 233.9 | 4.03 | 25.1 | 64.2 |
YOLOv5l | 640 | 49.0 | 408.4 | 6.61 | 53.2 | 135.0 |
YOLOv5x | 640 | 50.7 | 763.2 | 11.89 | 97.2 | 246.4 |
D'après les données, les modèles YOLOv6-3.0 ont tendance à atteindre des scores mAP plus élevés pour leurs tailles respectives sur GPU. Cependant, Ultralytics YOLOv5 démontre un équilibre supérieur en termes de performances, en particulier en termes de vitesse CPU et d'efficacité du modèle. Par exemple, YOLOv5n est nettement plus rapide sur CPU et possède moins de paramètres et de FLOPs que n'importe quel modèle YOLOv6-3.0, ce qui en fait un excellent choix pour les applications légères et en temps réel. Bien que YOLOv6-3.0l ait le mAP le plus élevé, YOLOv5x offre un mAP compétitif avec un framework bien documenté et pris en charge.
Méthodologie d'entraînement
Les deux modèles exploitent des techniques d'apprentissage profond standard pour l'entraînement sur de grands ensembles de données comme COCO. Ultralytics YOLOv5 bénéficie considérablement de l'écosystème Ultralytics, offrant des flux de travail d'entraînement rationalisés, des guides exhaustifs, une optimisation AutoAnchor et une intégration avec des outils tels que Weights & Biases et ClearML pour le suivi des expériences. L'entraînement de YOLOv6-3.0 suit les procédures décrites dans son dépôt, ce qui peut nécessiter une configuration plus manuelle et ne pas disposer de l'outillage MLOps intégré de la plateforme Ultralytics.
Cas d'utilisation idéaux
- Meituan YOLOv6-3.0 : Un concurrent sérieux lorsque l’optimisation de la précision sur GPU est l’objectif principal, tout en nécessitant une inférence rapide. Il convient aux applications où les légères améliorations de la mAP par rapport à YOLOv5 justifient une complexité potentiellement accrue ou un support d’écosystème moindre, comme dans l’automatisation industrielle spécialisée.
- Ultralytics YOLOv5 : Fortement recommandé pour les applications exigeant des performances en temps réel et une facilité de déploiement, en particulier sur CPU ou les appareils périphériques. Sa polyvalence, son support étendu et son utilisation efficace des ressources en font un choix idéal pour le prototypage rapide, les applications mobiles, la vidéosurveillance et les projets bénéficiant d’un écosystème mature et bien documenté.
Conclusion
Ultralytics YOLOv5 reste un choix exceptionnel, particulièrement apprécié pour sa vitesse exceptionnelle, sa facilité d'utilisation et son écosystème robuste. Il offre un excellent équilibre entre performance et efficacité, soutenu par une documentation complète et un support communautaire, le rendant très accessible aux développeurs et aux chercheurs.
YOLOv6-3.0 offre des performances compétitives, en particulier en termes de mAP maximal pour les modèles plus grands sur GPU. Il constitue une alternative viable pour les utilisateurs qui privilégient la plus haute précision possible dans le framework YOLO, en particulier pour les applications industrielles.
Pour ceux qui recherchent les dernières avancées, envisagez d'explorer les nouveaux modèles Ultralytics tels que YOLOv8, YOLOv9, YOLOv10 et YOLO11, qui offrent d'autres améliorations en termes de performances, de polyvalence et d'efficacité. Les modèles spécialisés tels que RT-DETR offrent également des avantages uniques pour des cas d'utilisation spécifiques.
Explorez toute la gamme d'options dans la Documentation des modèles Ultralytics.