YOLOv9 vs PP-YOLOE+ : une comparaison technique
Choisir le bon modèle de détection d'objets implique un compromis essentiel entre la précision, la vitesse et les besoins en ressources. Cette page fournit une comparaison technique détaillée entre Ultralytics YOLOv9, un modèle de pointe reconnu pour ses innovations architecturales, et PP-YOLOE+ de Baidu, un concurrent sérieux de l'écosystème PaddlePaddle. Nous analyserons leurs architectures, leurs mesures de performance et leurs cas d'utilisation idéaux afin de vous aider à choisir le meilleur modèle pour vos projets de vision par ordinateur.
YOLOv9 : Information de gradient programmable pour un apprentissage amélioré
Ultralytics YOLOv9 représente une avancée significative dans la détection d'objets en temps réel, introduisant des concepts révolutionnaires pour relever les défis de longue date dans l'apprentissage profond.
Auteurs : Chien-Yao Wang et Hong-Yuan Mark Liao
Organisation : Institut des sciences de l'information, Academia Sinica, Taïwan
Date : 2024-02-21
Arxiv : https://arxiv.org/abs/2402.13616
GitHub : https://github.com/WongKinYiu/yolov9
Documentation : https://docs.ultralytics.com/models/yolov9/
Les principales innovations de YOLOv9 sont Programmable Gradient Information (PGI) et Generalized Efficient Layer Aggregation Network (GELAN). PGI est conçu pour s’attaquer au problème de la perte d’informations lorsque les données circulent dans les réseaux profonds, garantissant ainsi que des informations de gradient fiables sont disponibles pour des mises à jour précises du modèle. Cela permet de préserver les principales caractéristiques et d’améliorer l’apprentissage. GELAN est une nouvelle architecture de réseau optimisée pour une utilisation supérieure des paramètres et une efficacité du calcul. Cette combinaison puissante permet à YOLOv9 d’atteindre une précision exceptionnelle tout en maintenant des vitesses d’inférence élevées.
Un avantage clé de YOLOv9 est son intégration dans l’écosystème Ultralytics. Cela offre une expérience utilisateur rationalisée avec une API simple, une documentation complète et un réseau de support robuste. L’écosystème bénéficie d’un développement actif, d’une communauté forte sur des plateformes comme GitHub et Discord, et de mises à jour fréquentes. Cela garantit que les développeurs ont accès à des processus d’entraînement efficaces, à des poids pré-entraînés facilement disponibles et à une plateforme qui prend en charge plusieurs tâches comme la détection d’objets et la segmentation d’instances.
Points forts
- Haute précision : Obtient des scores mAP à la pointe de la technologie sur des ensembles de données difficiles comme COCO, le modèle YOLOv9-E établissant une nouvelle référence pour les détecteurs en temps réel.
- Architecture efficace : L'architecture GELAN et PGI conduisent à d'excellentes performances avec beaucoup moins de paramètres et de FLOPs par rapport aux modèles avec une précision similaire.
- Préservation de l'information : PGI atténue efficacement le problème du goulot d'étranglement de l'information dans les réseaux profonds, ce qui conduit à une meilleure convergence et précision du modèle.
- Écosystème Ultralytics : Bénéficie de la facilité d'utilisation, d'une documentation complète, d'une maintenance active et d'un fort soutien de la communauté. Il est construit sur PyTorch, le framework d'IA le plus populaire, le rendant très accessible.
- Polyvalence : L'architecture est polyvalente, prenant en charge plusieurs tâches de vision par ordinateur au-delà de la simple détection.
Faiblesses
- Nouveau modèle : En tant que version récente, l'étendue des exemples proposés par la communauté et des intégrations de tiers est toujours en croissance, bien que son inclusion dans le framework Ultralytics accélère l'adoption.
- Ressources d'entraînement : Bien qu'il soit efficace pour son niveau de performance, l'entraînement des plus grandes variantes de YOLOv9 peut nécessiter d'importantes ressources de calcul.
Cas d'utilisation idéaux
YOLOv9 excelle dans les applications qui exigent les plus hauts niveaux de précision et d'efficacité. Cela le rend idéal pour les tâches complexes telles que la conduite autonome, les systèmes de sécurité avancés et la robotique de haute précision. Sa conception efficace rend également les variantes plus petites adaptées au déploiement dans des environnements d'IA en périphérie aux ressources limitées.
PP-YOLOE+ : Haute précision au sein de l'écosystème PaddlePaddle
PP-YOLOE+ est un détecteur d'objets haute performance développé par Baidu et constitue un élément clé de leur suite PaddleDetection. Il est conçu pour offrir un bon équilibre entre vitesse et précision, mais son implémentation est étroitement liée au framework de deep learning PaddlePaddle.
Auteurs : Auteurs PaddlePaddle
Organisation : Baidu
Date : 2022-04-02
Arxiv : https://arxiv.org/abs/2203.16250
GitHub : https://github.com/PaddlePaddle/PaddleDetection/
Documentation : https://github.com/PaddlePaddle/PaddleDetection/blob/release/2.8.1/configs/ppyoloe/README.md
PP-YOLOE+ est un détecteur sans ancrage à une seule étape qui s'appuie sur les versions précédentes de PP-YOLO. Il intègre un backbone efficace, souvent basé sur CSPRepResNet, et une tête de détection qui utilise Task Alignment Learning (TAL) pour améliorer l'alignement de la classification et de la localisation. La série de modèles offre différentes tailles (s, m, l, x) pour répondre à différents budgets de calcul.
Points forts
- Performance élevée : Offre une précision et une vitesse compétitives, ce qui en fait un modèle performant pour de nombreuses tâches de détection d'objets.
- Optimisé pour PaddlePaddle : Pour les équipes qui utilisent déjà l'écosystème Baidu PaddlePaddle, PP-YOLOE+ offre une intégration transparente et des performances optimisées.
Faiblesses
- Dépendance au Framework : Sa dépendance au framework PaddlePaddle peut être un obstacle important pour la communauté au sens large, qui utilise principalement PyTorch. La migration de projets ou l'intégration avec des outils basés sur PyTorch peut être complexe.
- Polyvalence limitée : PP-YOLOE+ est principalement axé sur la détection d'objets. En revanche, les modèles Ultralytics tels que YOLOv8 et YOLO11 offrent un framework unifié prêt à l'emploi pour de multiples tâches, notamment la segmentation, l'estimation de pose et la classification.
- Écosystème et support : L'écosystème autour de PP-YOLOE+ est moins étendu que celui d'Ultralytics YOLO. Les utilisateurs peuvent trouver moins de tutoriels communautaires, des canaux de support moins réactifs et des mises à jour plus lentes par rapport à l'écosystème Ultralytics dynamique et activement maintenu.
Cas d'utilisation idéaux
PP-YOLOE+ est particulièrement adapté aux développeurs et aux organisations qui sont déjà standardisés sur le framework de deep learning PaddlePaddle de Baidu. C'est un choix judicieux pour les applications standard de détection d'objets où l'équipe de développement possède une expertise existante dans PaddlePaddle.
Analyse des performances : YOLOv9 vs. PP-YOLOE+
Lorsqu'on compare les performances, il est clair que YOLOv9 établit une norme plus élevée en matière de précision et d'efficacité.
Modèle | Taille (pixels) |
mAPval 50-95 |
Vitesse CPU ONNX (ms) |
Vitesse T4 TensorRT10 (ms) |
paramètres (M) |
FLOPs (B) |
---|---|---|---|---|---|---|
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 |
PP-YOLOE+t | 640 | 39.9 | - | 2.84 | 4.85 | 19.15 |
PP-YOLOE+s | 640 | 43.7 | - | 2.62 | 7.93 | 17.36 |
PP-YOLOE+m | 640 | 49.8 | - | 5.56 | 23.43 | 49.91 |
PP-YOLOE+l | 640 | 52.9 | - | 8.36 | 52.2 | 110.07 |
PP-YOLOE+x | 640 | 54.7 | - | 14.3 | 98.42 | 206.59 |
- Précision maximale : YOLOv9-E atteint le mAP le plus élevé de 55,6, surpassant le plus grand modèle PP-YOLOE+x (54,7 mAP) tout en utilisant beaucoup moins de paramètres (57,3 M contre 98,42 M).
- Efficacité : YOLOv9 démontre une efficacité supérieure des paramètres dans tous les domaines. Par exemple, YOLOv9-C atteint 53,0 mAP avec seulement 25,3 millions de paramètres, tandis que PP-YOLOE+l nécessite 52,2 millions de paramètres pour atteindre un mAP similaire de 52,9. Le plus petit modèle, YOLOv9-T, est exceptionnellement léger avec seulement 2,0 millions de paramètres.
- Compromis vitesse/précision : Bien que PP-YOLOE+s affiche le temps d’inférence le plus rapide sur un GPU T4, cela se fait au détriment de la précision (43,7 mAP). En revanche, YOLOv9-S offre un mAP beaucoup plus élevé de 46,8 avec seulement une augmentation marginale de la latence, ce qui représente un meilleur compromis pour les applications où la précision est importante.
Conclusion : Quel modèle devriez-vous choisir ?
Pour la grande majorité des développeurs, des chercheurs et des entreprises, YOLOv9 est le choix supérieur. Sa précision de pointe, combinée à une efficacité remarquable en termes de calcul et de paramètres, établit une nouvelle norme en matière de détection d'objets en temps réel.
L'avantage principal de YOLOv9 ne réside pas seulement dans ses performances, mais dans son intégration au sein de l'écosystème Ultralytics. Construit sur le framework PyTorch largement adopté, il offre une facilité d'utilisation inégalée, une documentation complète, une polyvalence multi-tâches et une communauté dynamique et solidaire. Cet environnement holistique réduit considérablement le temps de développement et simplifie le déploiement et la maintenance.
PP-YOLOE+ est un modèle performant, mais sa valeur est largement limitée aux utilisateurs opérant déjà dans l'écosystème Baidu PaddlePaddle. Pour ceux qui se trouvent en dehors de cet environnement spécifique, les coûts liés à l'adoption d'un nouveau framework, ainsi que les limitations en termes de polyvalence et de support communautaire, en font une option moins pratique par rapport à la solution puissante et accessible offerte par Ultralytics YOLOv9.
Autres modèles à considérer
Si vous explorez différentes architectures, vous pourriez également être intéressé par d'autres modèles disponibles dans l'écosystème Ultralytics :
- YOLOv8 : Un modèle très polyvalent et équilibré, excellent pour un large éventail de tâches et reconnu pour sa rapidité et sa facilité d'utilisation.
- YOLO11 : Le dernier modèle officiel d'Ultralytics, repoussant encore les limites de la performance et de l'efficacité.
- RT-DETR : Un détecteur en temps réel basé sur un transformateur qui offre une approche architecturale différente de la détection d'objets.