Passer au contenu

YOLOv6.0 vs RTDETRv2 : Équilibrer la vitesse industrielle et la précision des transformateurs

La sélection de l'architecture optimale de détection d'objets implique souvent un compromis entre la latence de l'inférence et la précision de la détection. Cette comparaison technique examine deux approches distinctes pour relever ce défi : YOLOv6.0, un modèle basé sur le CNN conçu par Meituan pour la vitesse industrielle, et RTDETRv2, une architecture de transformateur de vision (ViT) de Baidu conçue pour apporter la précision des transformateurs aux applications en temps réel.

YOLOv6.0

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: YOLOv6 v3.0 : A Full-Scale Reloading
GitHub : YOLOv6
Docs: Ultralytics YOLOv6 Documentation

YOLOv6.0 représente une évolution significative dans la lignée des détecteurs à un étage, spécialement conçue pour les applications industrielles où l'efficacité matérielle est primordiale. Il introduit une "relecture complète" de l'architecture, incorporant des stratégies avancées de fusion de caractéristiques et d'apprentissage pour maximiser le débit sur les GPU.

Architecture et principales fonctionnalités

L'architecture YOLOv6.0 est axée sur une conception adaptée au matériel. Elle utilise une épine dorsale de reparamétrage efficace (RepBackbone) qui permet au modèle d'avoir des capacités d'extraction de caractéristiques complexes pendant l'entraînement tout en se regroupant en une structure rationalisée pour l'inférence. Les principales innovations architecturales sont les suivantes

  • Concaténation bidirectionnelle (BiC) : Un module dans le cou qui améliore la précision de la fusion des caractéristiques sans une lourde pénalité de calcul.
  • Formation assistée par ancrage (AAT) : Une stratégie qui combine les avantages des paradigmes avec et sans ancrage pendant la phase de formation afin de stabiliser la convergence.
  • Autodistillation : Le cadre utilise une boucle de formation enseignant-élève dans laquelle le modèle apprend à partir de ses propres prédictions, ce qui améliore la précision sans augmenter la taille du modèle.

Points forts

  • Efficacité industrielle : Le modèle est explicitement optimisé pour TensorRT et offre une latence exceptionnellement faible sur les GPU NVIDIA .
  • Faible latence à la périphérie : avec des variantes "Lite" spécifiques, il fonctionne bien sur les CPU mobiles, ce qui le rend adapté aux scanners industriels portatifs.
  • Prise en charge de la quantification : Il offre une prise en charge solide de l'apprentissage par quantification (QAT), ce qui évite une perte de précision importante lors du passage à la précision INT8.

Faiblesses

  • Limitation des tâches : YOLOv6 est principalement conçu pour la détection de boîtes englobantes. Il ne prend pas en charge les tâches complexes telles que l'estimation de la pose ou la détection de boîtes englobantes orientées (Oriented Bounding Box, OBB), que l'on trouve dans des cadres plus polyvalents.
  • Complexité de la formation : Le recours à l'autodistillation et à des étapes spécialisées de reparamétrage peut rendre le pipeline de formation plus fragile et plus difficile à personnaliser par rapport aux modèles YOLO standard.

Cas d'utilisation idéaux

  • Fabrication à grande vitesse : Détection des défauts sur les bandes transporteuses à mouvement rapide où la latence de la milliseconde est critique.
  • Robotique embarquée : Systèmes de navigation sur des plates-formes telles que le NVIDIA Jetson où les ressources informatiques sont strictement limitées.

En savoir plus sur YOLOv6.0

RTDETRv2

Auteurs: Wenyu Lv, Yian Zhao, Qinyao Chang, Kui Huang, Guanzhong Wang et Yi Liu
Organisation: Baidu
Date: 2023-04-17 (Original), 2024-07-24 (v2)
Arxiv: RT-DETRv2: Baseline améliorée avec Bag-of-Freebies
GitHub : RT-DETR
Docs: Ultralytics RT-DETR Documentation

RTDETRv2 (Real-Time Detection Transformer v2) remet en question la domination des CNN en prouvant que les transformateurs peuvent atteindre des vitesses en temps réel. Il s'appuie sur le paradigme DETR (Detection Transformer) mais s'attaque à la lenteur de la convergence et aux coûts de calcul élevés généralement associés aux mécanismes d'attention.

Architecture et principales fonctionnalités

RTDETRv2 utilise un codeur hybride qui traite efficacement les caractéristiques multi-échelles. Contrairement aux transformateurs traditionnels qui traitent toutes les parties de l'image de la même manière, RTDETRv2 concentre son attention sur les zones pertinentes dès le début du processus.

  • Encodeur hybride efficace : Découple l'interaction intra-échelle et la fusion inter-échelle pour réduire la charge de calcul.
  • Sélection des requêtesIoU: Sélectionne des requêtes d'objets initiales de haute qualité à partir de la sortie du codeur, ce qui améliore l'initialisation du décodeur et accélère la convergence.
  • Conception sans ancrage : Élimine le besoin de post-traitement de suppression non maximaleNMS, ce qui simplifie le pipeline de déploiement et réduit la variabilité de la latence dans les scènes encombrées.

Points forts

  • Conscience du contexte global : Le mécanisme d'auto-attention permet au modèle de "voir" l'ensemble de l'image à la fois, ce qui permet une meilleure détection des objets occultés par rapport aux CNN qui s'appuient sur des champs réceptifs locaux.
  • Plafond de précision élevé : Il atteint régulièrement des mAP sur l'ensemble de donnéesCOCO pour une échelle de modèle donnée par rapport à de nombreux homologues CNN.
  • NMS: l'absence de NMS rend le temps d'inférence plus déterministe, ce qui constitue un avantage significatif pour les systèmes en temps réel.

Faiblesses

  • Intensité de la mémoire : Les transformateurs ont besoin de beaucoup plus de VRAM pendant l'entraînement et l'inférence en raison de la complexité quadratique des matrices d'attention (bien que RTDETR optimise ce point).
  • Faim de données : Les transformateurs de vision ont généralement besoin d'ensembles de données plus importants et de programmes d'entraînement plus longs pour converger complètement par rapport aux CNN comme YOLOv6.

Cas d'utilisation idéaux

  • Scènes de circulation complexes : Détection des piétons et des véhicules dans des environnements denses et chaotiques où l'occlusion est fréquente.
  • Conduite autonome : Applications nécessitant une perception à haute fiabilité où le coût d'une détection manquée l'emporte sur le coût d'un matériel légèrement plus exigeant.

En savoir plus sur RTDETRv2

Comparaison des performances

Le tableau suivant compare les performances de YOLOv6.0 et de RTDETRv2. Alors que RTDETRv2 dépasse les limites de la précision, YOLOv6.0 conserve un avantage en termes de vitesse d'inférence brute, en particulier à l'échelle "Nano".

ModèleTaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT10
(ms)
paramètres
(M)
FLOPs
(B)
YOLOv6.0n64037.5-1.174.711.4
YOLOv6.0s64045.0-2.6618.545.3
YOLOv6.0m64050.0-5.2834.985.8
YOLOv6.0l64052.8-8.9559.6150.7
RTDETRv2-s64048.1-5.032060
RTDETRv2-m64051.9-7.5136100
RTDETRv2-l64053.4-9.7642136
RTDETRv2-x64054.3-15.0376259

Analyse

  • Vitesse et précision : L'argument YOLOv6-3.0n est incroyablement léger (1,17 ms d'inférence), ce qui en fait le roi incontesté pour un matériel extrêmement contraint. Cependant, si la précision est la priorité, RTDETRv2-s offre une mAP significativement plus élevée (48,1) que la YOLOv6-3.0s (45,0), mais avec un temps d'inférence presque deux fois plus long (5,03 ms contre 2,66 ms).
  • Comportement de mise à l'échelle : L'écart se réduit au fur et à mesure que la taille du modèle augmente. RTDETRv2-l (53,4 mAP) surpasse les YOLOv6-3.0l (52,8 mAP) tout en ayant moins de paramètres (42M contre 59,6M), ce qui montre l'efficacité de l'architecture du transformateur en termes de paramètres, bien que les FLOP restent comparables.
  • Implications matérielles : L'avantage de YOLOv6 réside dans sa structure CNN pure qui s'adapte très directement aux accélérateurs matériels. RTDETRv2 nécessite un matériel capable de traiter efficacement les multiplications de matrices et les opérations d'attention pour atteindre sa vitesse théorique.

Considérations relatives au déploiement

Lors du déploiement sur des appareils périphériques, n'oubliez pas que les "paramètres" ne sont pas toujours en parfaite corrélation avec la vitesse. Alors que RTDETRv2 peut avoir moins de paramètres dans certaines configurations, ses schémas d'accès à la mémoire (attention) peuvent être plus lents sur du matériel plus ancien que les convolutions hautement optimisées de YOLOv6.

Méthodologies d'entraînement

Le paysage de la formation pour ces deux modèles diffère considérablement, ce qui a un impact sur les ressources nécessaires au développement.

YOLOv6.0 suit les pratiques d'apprentissage profond standard pour les CNN. Il bénéficie de programmes d'entraînement plus courts (typiquement 300-400 époques) et d'une consommation de mémoire GPU plus faible. Les techniques telles que l'autodistillation sont gérées en interne mais ajoutent une couche de complexité au calcul de la fonction de perte.

RTDETRv2, étant basé sur des transformateurs, demande généralement plus d'efforts de la part de RTDETRv2. CUDA pendant l'apprentissage. La complexité quadratique du mécanisme d'attention par rapport à la taille de l'image signifie que la taille des lots doit souvent être réduite ou que des GPU plus puissants doivent être utilisés. En outre, les transformateurs bénéficient souvent d'horizons d'apprentissage plus longs pour apprendre pleinement les relations spatiales sans biais inductifs.

L'avantage Ultralytics

Alors que YOLOv6 et RTDETR offrent tous deux des caractéristiques convaincantes pour des niches spécifiques, Ultralytics YOLO11 d'Ultralytics offre une solution unifiée qui combine le meilleur des deux mondes. Il intègre l'efficacité des CNN avec des raffinements architecturaux modernes qui rivalisent avec la précision des transformateurs, le tout dans un écosystème conçu pour la productivité des développeurs.

Pourquoi choisir les modèles Ultralytics ?

  • Facilité d'utilisation : Ultralytics fournit une API Pythonique qui fait abstraction des complexités de la formation et du déploiement. Vous pouvez former un modèle de pointe en trois lignes de code.
  • Équilibre des performances : YOLO11 est conçu pour offrir un compromis optimal. Il offre des vitesses d'inférence en temps réel comparables à YOLOv6 tout en atteignant des niveaux de précision qui défient RTDETR, sans l'énorme surcharge de mémoire des transformateurs.
  • Polyvalence : Contrairement à YOLOv6 (détection uniquement), les modèles Ultralytics prennent en charge de manière native la segmentation des instances, l'estimation de la pose, la classification et la détection des boîtes de délimitation orientées (OBB).
  • Un écosystème bien entretenu : Grâce à des mises à jour fréquentes, à une documentation complète et au soutien de la communauté, vous n'êtes jamais seul pour déboguer.
  • Efficacité de la formation : Les modèles Ultralytics sont réputés pour leurs pipelines de formation efficaces, permettant une itération rapide même sur du matériel modeste.
from ultralytics import YOLO

# Load the latest YOLO11 model
model = YOLO("yolo11n.pt")

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

# Run inference with a single command
results = model("path/to/image.jpg")

En savoir plus sur YOLO11

Conclusion

YOLOv6.0 et RTDETRv2 sont tous deux des réalisations impressionnantes dans le domaine de la vision par ordinateur. YOLOv6.0 est le choix pragmatique pour les pipelines strictement industriels où le matériel est fixe et où la vitesse est la seule mesure qui compte. RTDETRv2 est un excellent choix pour la recherche et les applications haut de gamme où la précision dans des scènes complexes est essentielle et où les ressources matérielles sont abondantes.

Cependant, pour la grande majorité des applications du monde réel, Ultralytics YOLO11 reste le meilleur choix. Il offre des performances, une polyvalence et une facilité d'utilisation qui accélèrent le passage du concept à la production. Que vous soyez un chercheur ayant besoin d'expériences rapides ou un ingénieur déployant des milliers de périphériques, l'écosystème Ultralytics fournit les outils nécessaires à la réussite.

Explorer d'autres modèles

Si vous êtes intéressé par d'autres comparaisons, explorez ces ressources dans la documentation Ultralytics :


Commentaires