RTDETRv2 vs YOLOv7: une comparaison technique détaillée
Le paysage de la détection d'objets en temps réel a été le théâtre d'une concurrence féroce entre les réseaux neuronaux convolutionnels (CNN) et les transformateurs de vision émergents (ViT). Deux étapes importantes de cette évolution sont RTDETRv2 (Real-Time Detection Transformer v2) et YOLOv7 (You Only Look Once version 7). Alors que YOLOv7 représente le summum de l'optimisation efficace de l'architecture CNN, RTDETRv2 introduit la puissance des transformateurs pour éliminer le besoin d'étapes de post-traitement telles que la suppression non maximaleNMS.
Cette comparaison explore les spécifications techniques, les différences architecturales et les mesures de performance des deux modèles afin d'aider les développeurs à choisir l'outil adéquat pour leurs applications de vision par ordinateur.
Mesures de performance : Précision et rapidité
Le tableau suivant présente une comparaison directe des principales mesures de performance. RTDETRv2-x fait preuve d'une précision supérieure avec un mAP plus élevé, en grande partie grâce à sa compréhension du contexte global basée sur les transformateurs. Cependant, YOLOv7 reste compétitif, en particulier dans les scénarios où un poids plus léger et des vitesses d'inférence équilibrées sur du matériel variable sont nécessaires.
| Modèle | Taille (pixels) | mAPval 50-95 | Vitesse CPU ONNX (ms) | Vitesse T4 TensorRT10 (ms) | paramètres (M) | FLOPs (B) |
|---|---|---|---|---|---|---|
| RTDETRv2-s | 640 | 48.1 | - | 5.03 | 20 | 60 |
| RTDETRv2-m | 640 | 51.9 | - | 7.51 | 36 | 100 |
| RTDETRv2-l | 640 | 53.4 | - | 9.76 | 42 | 136 |
| RTDETRv2-x | 640 | 54.3 | - | 15.03 | 76 | 259 |
| YOLOv7l | 640 | 51.4 | - | 6.84 | 36.9 | 104.7 |
| YOLOv7x | 640 | 53.1 | - | 11.57 | 71.3 | 189.9 |
RTDETRv2 : L'approche du transformateur
RTDETRv2 s'appuie sur le succès du RT-DETR original, le premier détecteur à base de transformateurs à rivaliser véritablement avec les modèles YOLO en termes de vitesse en temps réel. Développé par des chercheurs de Baidu, il s'attaque aux goulets d'étranglement informatiques associés à l'interaction multi-échelle dans les architectures DETR standard.
- Auteurs : Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang et Yi Liu
- Organisation :Baidu
- Date : 2023-04-17
- Arxiv :https://arxiv.org/abs/2304.08069
- GitHub :https://github.com/lyuwenyu/RT-DETR/tree/main/rtdetrv2_pytorch
Principales caractéristiques architecturales
RTDETRv2 utilise un codeur hybride qui traite efficacement les caractéristiques multi-échelles en découplant l'interaction intra-échelle et la fusion inter-échelle. Cette conception réduit considérablement les coûts de calcul par rapport aux transformateurs standard. L'une des caractéristiques les plus remarquables est la sélection des requêtesIoU, qui améliore l'initialisation des requêtes sur les objets, ce qui permet une convergence plus rapide et une plus grande précision. Contrairement aux modèles basés sur le CNN, RTDETRv2 est NMS, ce qui signifie qu'il ne nécessite pas de post-traitement de suppression non maximale, simplifiant ainsi le pipeline de déploiement et réduisant la gigue de latence.
Avantage du transformateur
Le principal avantage de l'architecture RTDETRv2 est sa capacité à saisir le contexte global. Alors que les CNN examinent des champs réceptifs localisés, le mécanisme d'auto-attention des transformateurs permet au modèle de prendre en compte l'ensemble du contexte de l'image lors de la détection d'objets, ce qui est bénéfique pour résoudre les ambiguïtés dans les scènes complexes avec occlusion.
YOLOv7: Le pic de CNN
YOLOv7 repousse les limites de ce qui est possible avec les réseaux neuronaux convolutifs. Il se concentre sur l'optimisation du processus de formation et de l'architecture du modèle afin d'obtenir un "bag-of-freebies", c'est-à-dire des méthodes qui augmentent la précision sans augmenter le coût de l'inférence.
- Auteurs : Chien-Yao Wang, Alexey Bochkovskiy et Hong-Yuan Mark Liao
- Organisation : Institut des sciences de l'information, Academia Sinica
- Date : 2022-07-06
- Arxiv :https://arxiv.org/abs/2207.02696
- GitHub :https://github.com/WongKinYiu/yolov7
Principales caractéristiques architecturales
YOLOv7 introduit E-ELAN (Extended Efficient Layer Aggregation Network), qui améliore la capacité d'apprentissage du réseau en contrôlant la longueur du chemin du gradient. Il utilise également la re-paramétrisation du modèle, une technique dans laquelle la structure du modèle est complexe pendant l'entraînement pour un meilleur apprentissage, mais simplifiée pendant l'inférence pour plus de rapidité. Cela permet à YOLOv7 de maintenir des performances élevées sur les appareilsGPU tout en conservant des paramètres relativement bas par rapport aux modèles de transformateurs.
Analyse comparative
Architecture et polyvalence
La différence fondamentale réside dans la conception de l'épine dorsale et de la tête. YOLOv7 s'appuie sur des structures CNN profondes qui sont hautement optimisées pour les technologies CUDA mais qui peuvent avoir du mal à gérer les dépendances à longue distance dans une image. RTDETRv2 exploite les mécanismes d'attention pour comprendre les relations entre les pixels distants, ce qui le rend robuste dans les environnements encombrés. Cependant, cela se fait au prix d'une plus grande consommation de mémoire lors de l'apprentissage.
Les modèles Ultralytics comme YOLO11 comblent cette lacune en proposant une architecture basée sur le CNN qui intègre des modules modernes de type attention, offrant la vitesse des CNN avec la précision habituellement réservée aux transformateurs. En outre, alors que RTDETRv2 est avant tout un détecteur d'objets, les modèles Ultralytics les plus récents prennent en charge la segmentation des instances, l'estimation de la pose et la classification en mode natif.
Formation et facilité d'utilisation
L'apprentissage de modèles de transformation tels que RTDETRv2 nécessite généralement une mémoire GPU importante et des périodes d'apprentissage plus longues pour converger par rapport à des CNN tels que YOLOv7.
Pour les développeurs à la recherche de Efficacité de la formation et Facilité d'utilisationl'écosystème Ultralytics offre un avantage certain. Grâce à la ultralytics Python , les utilisateurs peuvent entraîner, valider et déployer des modèles avec seulement quelques lignes de code, en accédant à une série de poids pré-entraînés pour différentes tâches.
from ultralytics import RTDETR, YOLO
# Load an Ultralytics YOLOv7-style model (if available) or YOLO11
model_yolo = YOLO("yolo11n.pt") # Recommended for best performance
model_yolo.train(data="coco8.yaml", epochs=10)
# Load RT-DETR for comparison
model_rtdetr = RTDETR("rtdetr-l.pt")
model_rtdetr.predict("asset.jpg")
Déploiement et écosystème
YOLOv7 bénéficie d'un large soutien en raison de son ancienneté, mais son intégration dans les pipelines MLOps modernes peut être manuelle. RTDETRv2 est plus récent et bénéficie d'un soutien croissant. En revanche, Ultralytics bénéficient d'un écosystème bien entretenu, y compris l'exportation transparente vers ONNXTensorRT et CoreML, et l'intégration avec des outils tels que Ultralytics HUB pour l'entraînement en nuage et la gestion des ensembles de données.
Cas d'utilisation idéaux
- Choisissez RTDETRv2 si : Vous disposez d'une mémoire GPU importante et vous avez besoin d'une grande précision dans les scènes avec une forte occlusion ou un fort encombrement, où le NMS échoue traditionnellement. Il est excellent pour la recherche et les systèmes de surveillance haut de gamme.
- Choisissez YOLOv7 si : Vous avez besoin d'une architecture CNN éprouvée qui s'exécute efficacement sur du matériel GPU standard pour des tâches de détection générales.
- Choisissez Ultralytics YOLO11 si : Vous avez besoin d'un équilibre optimal entre vitesse et précision, d'une mémoire réduite et d'un modèle polyvalent capable de détecter, de segmenter et d'estimer la pose. C'est le choix idéal pour les développeurs qui apprécient un flux de travail rationalisé et une documentation complète.
Pourquoi passer à YOLO11?
YOLOv7 et RTDETRv2 sont puissants, YOLO11 représente la dernière évolution en matière d'IA visionnaire. Il nécessite moins de mémoire CUDA que les transformateurs, s'entraîne plus rapidement et offre une précision de pointe sur une plus large gamme de matériel, des périphériques aux serveurs en nuage.
Conclusion
RTDETRv2 et YOLOv7 ont tous deux façonné l'orientation de la vision par ordinateur. RTDETRv2 a remis en question la notion selon laquelle les transformateurs sont trop lents pour les applications en temps réel, tandis que YOLOv7 a démontré l'efficacité durable des CNN. Cependant, pour la plupart des applications du monde réel aujourd'hui, le système d'imagerie numérique est trop lent pour être utilisé. Ultralytics YOLO11 d'Ultralytics offre une expérience de développement supérieure, en combinant les meilleurs attributs de ces prédécesseurs avec un écosystème moderne et favorable.
Explorer d’autres comparaisons
Pour mieux comprendre le paysage des modèles, examinez ces comparaisons :