Passer au contenu

YOLO11 vs PP-YOLOE+ : Une comparaison technique détaillée

Le choix de l'architecture de détection d'objets optimale est une décision cruciale qui influence la vitesse, la précision et la faisabilité du déploiement des projets de vision par ordinateur. Ce guide fournit une comparaison technique approfondie entre Ultralytics YOLO11, le dernier modèle de pointe d'Ultralytics, et PP-YOLOE+, un détecteur robuste de l'écosystème PaddlePaddle de Baidu. Bien que les deux modèles offrent des performances élevées, YOLO11 se distingue par son efficacité computationnelle exceptionnelle, son intégration transparente à PyTorch et un écosystème complet conçu pour accélérer le développement pour les chercheurs et les ingénieurs.

Ultralytics YOLO11 : L'efficacité au service de la polyvalence

YOLO11 représente la toute dernière évolution de la célèbre série YOLO (You Only Look Once), publiée par Ultralytics pour repousser les limites de la detection d'objets en temps réel. Conçu par Glenn Jocher et Jing Qiu, ce modèle affine l'architecture sans ancrage pour offrir une précision supérieure avec une surcharge de calcul considérablement réduite.

Auteurs : Glenn Jocher, Jing Qiu
Organisation :Ultralytics
Date : 2024-09-27
GitHub :https://github.com/ultralytics/ultralytics
Docs :https://docs.ultralytics.com/models/yolo11/

Architecture et points forts de base

YOLO11 utilise une conception de réseau simplifiée qui optimise l'extraction et la fusion des caractéristiques. Contrairement aux détecteurs basés sur des ancres traditionnels qui reposent sur des boîtes prédéfinies, YOLO11 prédit directement les centres et les échelles des objets. Cette approche simplifie la tête du modèle et réduit le nombre d'hyperparamètres nécessaires à l'ajustement.

L'architecture du modèle est très polyvalente, prenant en charge un large éventail de tâches de vision par ordinateur au-delà de la simple détection. Il gère nativement la segmentation d'instance, l'estimation de pose, la classification d'images et les boîtes englobantes orientées (obb), le tout dans un cadre unique et unifié.

Expérience du développeur

L'un des avantages les plus importants de YOLO11 est son intégration dans ultralytics Package Python. Ceci fournit une API cohérente pour l'entraînement, la validation et le déploiement, permettant aux développeurs de basculer entre les tâches ou d'exporter des modèles vers des formats tels que ONNX et TensorRT avec une seule ligne de code.

Avantages clés

  • Équilibre de performance supérieur : YOLO11 réalise un compromis inégalé dans l’industrie entre la mAP et la latence d’inférence, ce qui le rend adapté aux applications en temps réel sur les appareils périphériques.
  • Efficacité de calcul : Le modèle nécessite moins de paramètres et de FLOPs (opérations en virgule flottante) que ses concurrents comme PP-YOLOE+, ce qui se traduit par une exécution plus rapide et une consommation d’énergie plus faible.
  • Faible empreinte mémoire : Optimisé pour une utilisation efficace de la mémoire, YOLO11 s'entraîne plus rapidement et peut fonctionner sur du matériel avec une VRAM limitée, contrairement aux modèles de transformateur gourmands en ressources.
  • Écosystème robuste : Les utilisateurs bénéficient d'une maintenance active, d'une documentation complète et d'un support communautaire, assurant ainsi la viabilité à long terme des projets d'entreprise.

En savoir plus sur YOLO11

PP-YOLOE+: Haute précision dans l'écosystème PaddlePaddle

PP-YOLOE+ est une évolution de la série PP-YOLO développée par les chercheurs de Baidu. Sorti en 2022, il fait partie de la boîte à outils PaddleDetection et est conçu pour fonctionner efficacement dans le framework de deep learning PaddlePaddle.

Auteurs : Auteurs de PaddlePaddle
Organisation :Baidu
Date : 2022-04-02
ArXiv :https://arxiv.org/abs/2203.16250
GitHub :https://github.com/PaddlePaddle/PaddleDetection
Docs :Documentation PaddleDetection

Architecture et fonctionnalités

PP-YOLOE+ utilise un backbone CSPRepResNet et une tête efficace alignée sur les tâches (ET-Head). Il intègre l'attribution dynamique d'étiquettes via Task Alignment Learning (TAL) et utilise Varifocal Loss pour améliorer la qualité de la classification des objets. Le modèle est optimisé spécifiquement pour le moteur d'inférence PaddlePaddle, tirant parti de l'intégration de TensorRT pour le déploiement.

Forces et limitations

Bien que PP-YOLOE+ offre une précision compétitive sur des benchmarks comme COCO, il est confronté à des obstacles d'adoption en raison de sa dépendance au framework. La majeure partie de la communauté mondiale de la recherche s'appuie sur PyTorch, ce qui fait du passage à PaddlePaddle une source de friction. De plus, les modèles PP-YOLOE+ nécessitent généralement un nombre de paramètres plus élevé pour égaler la précision des architectures plus récentes comme YOLO11, ce qui entraîne une augmentation des coûts de calcul pendant l'entraînement et l'inférence.

En savoir plus sur PP-YOLOE+

Analyse des performances : efficacité et rapidité

Une comparaison directe des métriques de performance révèle que YOLO11 surpasse constamment PP-YOLOE+ en termes d'efficacité et de vitesse tout en conservant une précision de pointe.

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLO11n64039.556.11.52.66.5
YOLO11s64047.090.02.59.421.5
YOLO11m64051.5183.24.720.168.0
YOLO11l64053.4238.66.225.386.9
YOLO11x64054.7462.811.356.9194.9
PP-YOLOE+t64039.9-2.844.8519.15
PP-YOLOE+s64043.7-2.627.9317.36
PP-YOLOE+m64049.8-5.5623.4349.91
PP-YOLOE+l64052.9-8.3652.2110.07
PP-YOLOE+x64054.7-14.398.42206.59

Observations critiques

  1. Domination de l’efficacité : L’efficacité des paramètres de YOLO11 est frappante. Par exemple, YOLO11x atteint un mAP correspondant de 54,7 par rapport à PP-YOLOE+x, mais le fait avec seulement 56,9 M de paramètres contre 98,42 M. Cela implique que YOLO11x est environ 42 % plus petit, ce qui facilite le déploiement sur les appareils à stockage limité.
  2. Vitesse d’inférence : Dans les scénarios de déploiement réels, la vitesse est essentielle. YOLO11n offre un temps d’inférence incroyable de 1,5 ms sur GPU T4, ce qui est considérablement plus rapide que les 2,84 ms du PP-YOLOE+t comparable. Cet avantage de vitesse permet un traitement à fréquence d’images plus élevée dans des applications telles que les véhicules autonomes et la robotique.
  3. Performance du CPU : La disponibilité de benchmarks CPU optimisés pour YOLO11 souligne sa flexibilité. L’obtention de 56,1 ms sur le CPU avec YOLO11n permet des applications viables en temps réel, même sans accélération GPU dédiée, une mesure souvent manquante ou moins optimisée dans les frameworks concurrents.

Cas d'utilisation concrets

Les avantages architecturaux de YOLO11 se traduisent directement en avantages pour diverses industries.

  • Infrastructure de ville intelligente : Le débit élevé de YOLO11 prend en charge la surveillance du trafic en temps réel et l'analyse de la congestion sur plusieurs flux de caméras en utilisant moins de serveurs.
  • Fabrication Industrielle : Avec une précision supérieure à des latences plus faibles, YOLO11 excelle dans le contrôle qualité et la détection des défauts sur les chaînes de montage à haute vitesse.
  • Analyse de vente au détail : La capacité du modèle à gérer efficacement le comptage d'objets et la génération de cartes thermiques aide les détaillants à optimiser l'aménagement des magasins et la gestion des stocks.
  • Imagerie Médicale : La polyvalence pour effectuer la segmentation facilite l'analyse précise d'images médicales, comme l'identification de tumeurs ou l'analyse de structures cellulaires.

Entraînement et intégration de l'écosystème

Un différenciateur majeur est la facilité avec laquelle les développeurs peuvent entraîner et déployer des modèles. L'écosystème Ultralytics est conçu pour simplifier le parcours de l'utilisateur.

Flux de travail simplifié

L'entraînement d'un modèle YOLO11 sur un jeu de données personnalisé nécessite un minimum de code. Le framework gère automatiquement les tâches complexes telles que l'augmentation des données, l'évolution des hyperparamètres et l'entraînement multi-GPU.

from ultralytics import YOLO

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

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

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

En revanche, l'utilisation de PP-YOLOE+ implique souvent de naviguer dans les complexités de l'écosystème PaddlePaddle, des fichiers de configuration et des scripts de conversion potentiels si le pipeline de données original est basé sur PyTorch.

Flexibilité de déploiement

Ultralytics fournit des modes d'exportation intégrés pour un large éventail de formats, notamment ONNX, OpenVINO, CoreML et TFLite. Cela garantit qu'un modèle entraîné une fois peut être déployé n'importe où, d'un appareil de périphérie NVIDIA Jetson à un smartphone iOS ou une API cloud.

Conclusion

Bien que PP-YOLOE+ reste un modèle performant dans l'écosystème de Baidu, Ultralytics YOLO11 se distingue comme le choix supérieur pour la communauté de la vision par ordinateur au sens large. Sa combinaison d'un nombre de paramètres considérablement plus faible, de vitesses d'inférence plus rapides et de la convivialité native de PyTorch supprime les barrières à l'entrée et accélère la mise sur le marché.

Pour les développeurs à la recherche d'une solution pérenne qui équilibre les performances de pointe avec la facilité d'utilisation, YOLO11 fournit une plateforme robuste, polyvalente et très efficace pour construire la prochaine génération d'applications d'IA.

Explorer d'autres modèles

Si vous souhaitez explorer d'autres architectures au sein de l'écosystème Ultralytics, considérez ces comparaisons :


Commentaires