PP-YOLOE+ vs YOLOX : Comparaison de la détection avancée d'objets sans ancrage
Le choix de l'architecture optimale de détection d'objets nécessite une compréhension approfondie des compromis entre la précision, la vitesse d'inférence et la complexité du déploiement. Ce guide propose une comparaison technique entre PP-YOLOE+, un détecteur de qualité industrielle de Baidu, et YOLOX, un modèle sans ancrage très performant de Megvii. Ces deux architectures ont marqué des étapes importantes dans l'évolution vers des détecteurs sans ancrage, offrant des solutions robustes pour les ingénieurs en vision par ordinateur.
PP-YOLOE+ : l'excellence industrielle de Baidu
PP-YOLOE+ est une version évoluée de PP-YOLOE, développée par les auteurs dePaddlePaddle à Baidu. Lancée en avril 2022, elle fait partie de la suite complète PaddleDetection. Conçu spécifiquement pour les applications industrielles, PP-YOLOE+ optimise l'équilibre entre l'efficacité de l'apprentissage et la précision de l'inférence, en tirant parti des capacités du cadre PaddlePaddle .
Détails techniques :
- Auteurs : Auteurs de PaddlePaddle
- Organisation :Baidu
- Date : 2022-04-02
- Lien Arxiv :PP-YOLOE : une version évoluée de YOLO
- Lien GitHub :Dépôt de PaddleDetection
- Lien Docs :PP-YOLOE+ Documentation
Architecture et principales fonctionnalités
PP-YOLOE+ se distingue par plusieurs innovations architecturales visant à maximiser les performances sur divers matériels :
- Une épine dorsale évolutive : Il utilise CSPRepResNet, une épine dorsale qui combine la puissance d'extraction de caractéristiques des réseaux résiduels avec l'efficacité des connexions CSP (Cross Stage Partial).
- Apprentissage de l'alignement des tâches (TAL) : une innovation essentielle est l'utilisation de TAL, une fonction de perte spécialisée qui aligne dynamiquement les tâches de classification et de localisation, en veillant à ce que les scores de confiance les plus élevés correspondent aux boîtes de délimitation les plus précises.
- Tête efficace alignée sur les tâches (ET-Head) : Le modèle utilise une tête sans ancrage qui simplifie la conception de la tête de détection, réduisant ainsi la charge de calcul tout en maintenant une grande précision.
Points forts et faiblesses
PP-YOLOE+ est un outil puissant pour des scénarios de déploiement spécifiques, mais il s'accompagne de contraintes liées à l'écosystème.
Points forts :
- Précision de pointe : Le modèle obtient des résultats exceptionnels sur l'ensemble de donnéesCOCO , la variante PP-YOLOE+x atteignant un mAP 54,7 %, ce qui le rend adapté à des tâches de haute précision telles que la détection des défauts.
- Efficacité de l'inférence : Grâce à des optimisations telles que la fusion d'opérateurs dans le cadre PaddlePaddle , il offre des vitesses compétitives sur le matériel GPU , en particulier pour les modèles de grande taille.
Faiblesses :
- Dépendance à l'égard du cadre : La dépendance principale à l'égard du cadre PaddlePaddle peut être un obstacle pour les équipes standardisées sur PyTorch ou TensorFlow.
- Complexité du déploiement : Le portage de ces modèles vers d'autres moteurs d'inférence (comme ONNX Runtime ou TensorRT) nécessite souvent des outils de conversion spécifiques qui peuvent ne pas prendre en charge tous les opérateurs personnalisés.
YOLOX : Le pionnier de la liberté d'ancrage
YOLOX a été introduit en 2021 par des chercheurs de Megvii. Il a immédiatement attiré l'attention en raison du découplage de la tête de détection et de la suppression des ancres, ce qui a considérablement simplifié le pipeline d'apprentissage par rapport aux itérations précédentes de YOLO . YOLOX a comblé le fossé entre la recherche universitaire et l'application industrielle pratique, influençant de nombreuses architectures de détection d'objets ultérieures.
Détails techniques :
- Auteurs : Zheng Ge, Songtao Liu, Feng Wang, Zeming Li et Jian Sun
- Organisation :Megvii
- Date : 2021-07-18
- Lien Arxiv :YOLOX : Dépassement de la série YOLO en 2021
- Lien GitHub :Dépôt YOLOX
- Lien Docs :Documentation YOLOX
Architecture et principales fonctionnalités
YOLOX a introduit une philosophie de conception "sans ancrage" dans la famille YOLO :
- Tête découplée : contrairement aux têtes YOLO traditionnelles qui effectuent la classification et la localisation dans des branches couplées, YOLOX sépare ces tâches. Ce découplage améliore la vitesse de convergence et la précision finale.
- Attribution d'étiquettes SimOTA : YOLOX utilise SimOTA (Simplified Optimal Transport Assignment), une stratégie dynamique d'attribution d'étiquettes qui sélectionne automatiquement les meilleurs échantillons positifs pour chaque objet de vérité terrain, réduisant ainsi la nécessité d'un réglage complexe des hyperparamètres.
- Mécanisme sans ancrage : En éliminant les boîtes d'ancrage prédéfinies, YOLOX réduit le nombre de paramètres de conception et améliore la généralisation à toutes les formes d'objets, en particulier ceux qui présentent des rapports d'aspect extrêmes.
Points forts et faiblesses
Points forts :
- Simplicité de mise en œuvre : La suppression des ancres et l'utilisation des opérations standard de PyTorch rendent la base de code relativement facile à comprendre et à modifier à des fins de recherche.
- Une base solide : Il constitue une excellente base de référence pour la recherche universitaire sur les techniques de formation avancées et les modifications architecturales.
Faiblesses :
- Des performances vieillissantes : Bien que révolutionnaire en 2021, ses performances brutes (compromis vitesse/précision) ont été dépassées par des modèles plus récents tels que YOLOv8 et YOLO11.
- Intensité des ressources de formation : Les stratégies d'affectation avancées telles que SimOTA peuvent augmenter la charge de calcul pendant la phase de formation par rapport aux méthodes d'affectation statiques plus simples.
Soutien à l'héritage
Bien que YOLOX soit encore largement utilisé dans la recherche, les développeurs qui recherchent un support à long terme et des mises à jour actives peuvent trouver que les nouvelles architectures sont plus avantageuses pour les environnements de production.
Comparaison des performances techniques
Pour choisir entre PP-YOLOE+ et YOLOX, les mesures de performance sur des critères de référence standard constituent la base la plus objective pour la prise de décision. Les données suivantes mettent en évidence leurs performances sur l'ensemble de validation COCO
| Modèle | Taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| 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 |
| YOLOXnano | 416 | 25.8 | - | - | 0.91 | 1.08 |
| YOLOXtiny | 416 | 32.8 | - | - | 5.06 | 6.45 |
| YOLOXs | 640 | 40.5 | - | 2.56 | 9.0 | 26.8 |
| YOLOXm | 640 | 46.9 | - | 5.43 | 25.3 | 73.8 |
| YOLOXl | 640 | 49.7 | - | 9.04 | 54.2 | 155.6 |
| YOLOXx | 640 | 51.1 | - | 16.1 | 99.1 | 281.9 |
Analyse
- Domination de la précision : PP-YOLOE+ surpasse systématiquement YOLOX pour des tailles de modèles comparables. Le modèle PP-YOLOE+x atteint un mAP 54,7 %, soit une amélioration significative par rapport aux 51,1 % de YOLOX-x.
- Efficacité : PP-YOLOE+ fait preuve d'une efficacité supérieure en matière de paramètres. Par exemple, le
sobtient une plus grande précision (43,7 % contre 40,5 %) tout en utilisant moins de paramètres (7,93 M contre 9,0 M) et de FLOP. - Vitesse d'inférence : Alors que YOLOX reste compétitif dans les petites tailles, PP-YOLOE+ s'adapte mieux au matériel GPU (T4 TensorRT), offrant des vitesses plus rapides pour ses grands et très grands modèles malgré une précision plus élevée.
Ultralytics YOLO11: La norme moderne
Bien que PP-YOLOE+ et YOLOX soient des détecteurs performants, le paysage de la vision par ordinateur évolue rapidement. Pour les développeurs à la recherche d'un mélange optimal de performances, de convivialité et de soutien de l'écosystème, Ultralytics YOLO11 représente l'état de l'art.
Pourquoi choisir Ultralytics YOLO11 ?
- Facilité d'utilisation : Contrairement à la configuration complexe souvent requise pour les référentiels de recherche ou les outils spécifiques au cadre, YOLO11 offre une APIPython et une CLI simplifiées. Vous pouvez passer de l'installation à l'inférence en quelques secondes.
- Un écosystème bien entretenu : Les modèles Ultralytics sont soutenus par un écosystème solide qui comprend des mises à jour fréquentes, une documentation complète et une intégration transparente avec les outils MLOps.
- Équilibre des performances : YOLO11 est conçu pour offrir un compromis favorable entre la vitesse et la précision, dépassant souvent les générations précédentes avec des exigences de mémoire plus faibles à la fois pendant l'entraînement et l'inférence.
- Polyvalence : Alors que PP-YOLOE+ et YOLOX se concentrent principalement sur la détection des boîtes englobantes, YOLO11 prend nativement en charge la segmentation des instances, l'estimation de la pose, les boîtes englobantes orientées (OBB) et la classification au sein d'un cadre unique.
- Efficacité de la formation : Les modèles Ultralytics sont optimisés pour une formation efficace, utilisant des augmentations avancées et des poids pré-formés facilement disponibles pour réduire le temps et les ressources de calcul nécessaires pour atteindre la convergence.
Exemple concret
La mise en œuvre de la détection d'objets avec YOLO11 est intuitive. L'exemple suivant montre comment charger un modèle pré-entraîné et effectuer une inférence sur une image :
from ultralytics import YOLO
# Load a pre-trained YOLO11 model
model = YOLO("yolo11n.pt")
# Perform inference on a local image
results = model("path/to/image.jpg")
# Display the results
results[0].show()
Cette simplicité contraste fortement avec la configuration en plusieurs étapes souvent nécessaire pour d'autres architectures, ce qui permet aux développeurs de se concentrer sur la résolution des problèmes de l'entreprise plutôt que sur le code.
Conclusion
PP-YOLOE+ et YOLOX ont tous deux apporté des contributions significatives au domaine de la vision par ordinateur. PP-YOLOE+ est un excellent choix pour ceux qui sont profondément intégrés dans l'écosystème Baidu PaddlePaddle et qui ont besoin d'une grande précision industrielle. YOLOX reste une référence respectée pour les chercheurs qui étudient les méthodologies sans ancrage.
Cependant, pour la majorité des nouveaux projets, Ultralytics YOLO11 offre la solution la plus convaincante. Sa combinaison de performances de pointe, de faible utilisation de la mémoire et d'une expérience de développement inégalée en fait le meilleur choix pour déployer des solutions d'inférence en temps réel évolutives.