Passer au contenu

YOLOv6-3.0 vs RTDETRv2 : Équilibrer vitesse industrielle et précision du transformateur

Le choix de l'architecture de détection d'objets optimale implique souvent un compromis entre la latence d'inférence et la précision de la détection. Cette comparaison technique examine deux approches distinctes à ce défi : YOLOv6-3.0, un modèle basé sur CNN conçu par Meituan pour la vitesse industrielle, et RTDETRv2, une architecture Vision Transformer (ViT) de Baidu conçue pour apporter la précision du transformateur aux applications en temps réel.

YOLOv6-3.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 : Un rechargement à grande échelle
GitHub : meituan/YOLOv6
Docs : Documentation Ultralytics YOLOv6

YOLOv6-3.0 représente une évolution significative dans la lignée des détecteurs à une seule étape, spécialement conçu pour les applications industrielles où l'efficacité du matériel est primordiale. Il introduit un "Full-Scale Reloading" de l'architecture, intégrant des stratégies avancées de fusion de caractéristiques et d'entraînement pour maximiser le débit sur les GPU.

Architecture et principales fonctionnalités

L'architecture YOLOv6-3.0 se concentre sur une conception conviviale pour le matériel. Elle utilise un backbone de reparamétrisation 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 repliant dans une structure simplifiée pour l'inférence. Les principales innovations architecturales comprennent :

  • Concaténation bidirectionnelle (BiC) : Un module dans le neck qui améliore la précision de la fusion des caractéristiques sans pénalité de calcul importante.
  • Formation assistée par l’ancrage (AAT) : Une stratégie qui combine les avantages des paradigmes basés sur l’ancrage et sans ancrage pendant la phase de formation afin de stabiliser la convergence.
  • Auto-Distillation : Le framework utilise une boucle d'entraînement enseignant-étudiant où le modèle apprend de ses propres prédictions, améliorant ainsi la précision sans augmenter la taille du modèle.

Points forts

  • Efficacité Industrielle : Le modèle est explicitement optimisé pour le déploiement TensorRT, offrant une latence exceptionnellement faible sur les GPU NVIDIA.
  • Faible latence en périphérie : Avec des variantes "Lite" spécifiques, il fonctionne bien sur les appareils CPU mobiles, ce qui le rend adapté aux scanners industriels portables.
  • 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 de la tâche : YOLOv6 est principalement conçu pour la détection de boîtes englobantes. Il manque une prise en charge native pour les tâches complexes comme l'estimation de la pose ou la détection de boîtes englobantes orientées (OBB) que l’on trouve dans les frameworks plus polyvalents.
  • Complexité de l’entraînement : La dépendance à l’auto-distillation et aux étapes de reparamétrisation spécialisées peut rendre le pipeline d’entraînement plus fragile et plus difficile à personnaliser par rapport aux modèles YOLO standards.

Cas d'utilisation idéaux

  • Fabrication à haute vitesse : Détection des défauts sur les chaînes de montage rapides où une latence de l’ordre de la milliseconde est essentielle.
  • Robotique embarquée : Systèmes de navigation sur des plateformes comme la NVIDIA Jetson où les ressources de calcul sont strictement budgétisées.

En savoir plus sur YOLOv6-3.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 : lyuwenyu/RT-DETR
Docs : Documentation Ultralytics RT-DETR

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 convergence lente 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 encodeur hybride qui traite efficacement les caractéristiques multi-échelles. Contrairement aux transformateurs traditionnels qui traitent tous les patchs d'image de manière égale, RTDETRv2 concentre son attention sur les zones pertinentes dès le début du pipeline.

  • Encodeur hybride efficace : Dissocie l’interaction intra-échelle et la fusion inter-échelles afin de réduire la surcharge de calcul.
  • Sélection de requêtes basée sur l'IoU : Sélectionne des requêtes d'objets initiales de haute qualité à partir de la sortie de l'encodeur, ce qui améliore l'initialisation du décodeur et accélère la convergence.
  • Conception sans ancres : Élimine le besoin de post-traitement de suppression non maximale (NMS), simplifiant le pipeline de déploiement et réduisant 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’image entière en une seule fois, ce qui améliore la détection des objets occlus par rapport aux CNN qui reposent sur des champs réceptifs locaux.
  • Seuil de Précision Élevé : Il atteint constamment des scores de mAP plus élevés sur le COCO dataset pour une échelle de modèle donnée par rapport à de nombreux homologues CNN.
  • Sans NMS : L'absence de NMS rend le temps d'inférence plus déterministe, ce qui est un avantage significatif pour les systèmes en temps réel.

Faiblesses

  • Intensité de la mémoire : Les transformateurs nécessitent beaucoup plus de VRAM pendant l’entraînement et l’inférence en raison de la complexité quadratique des matrices d’attention (bien que RT-DETR optimise cela).
  • Faim de données : Les Vision Transformers nécessitent généralement des ensembles de données plus volumineux et des calendriers d'entraînement plus longs pour converger complètement par rapport aux CNN comme YOLOv6.

Cas d'utilisation idéaux

  • Scènes de trafic 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 de haute fiabilité où le coût d'une détection manquée l'emporte sur le coût d'exigences matérielles légèrement plus élevées.

En savoir plus sur RTDETRv2

Comparaison des performances

Le tableau suivant compare les performances de YOLOv6-3.0 et RTDETRv2. Alors que RTDETRv2 repousse les limites de la précision, YOLOv6-3.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-3.0n64037.5-1.174.711.4
YOLOv6-3.0s64045.0-2.6618.545.3
YOLOv6-3.0m64050.0-5.2834.985.8
YOLOv6-3.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 vs. Précision : L'argument YOLOv6-3.0n est incroyablement léger (inférence de 1,17 ms), ce qui en fait le roi incontesté du matériel extrêmement contraint. Cependant, si la précision est la priorité, RTDETRv2-s offre un mAP nettement supérieur (48,1) à YOLOv6-3.0s (45,0), bien qu'avec un temps d'inférence presque double (5,03 ms contre 2,66 ms).
  • Comportement de mise à l’échelle : À mesure que la taille du modèle augmente, l'écart se réduit. RTDETRv2-l (53,4 mAP) surpasse YOLOv6-3.0l (52,8 mAP) tout en ayant moins de paramètres (42M contre 59,6M), mettant en évidence l'efficacité des paramètres de l'architecture du transformateur, bien que les FLOP restent comparables.
  • Implications Matérielles : L'avantage de YOLOv6 réside dans sa structure CNN pure qui se mappe très directement aux accélérateurs matériels. RTDETRv2 nécessite un matériel capable de gérer efficacement les multiplications matricielles 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 edge, n'oubliez pas que les « paramètres » ne sont pas toujours parfaitement corrélés à la vitesse. Bien que RTDETRv2 puisse avoir moins de paramètres dans certaines configurations, ses modèles d'accès à la mémoire (attention) peuvent être plus lents sur du matériel plus ancien par rapport aux convolutions hautement optimisées de YOLOv6.

Méthodologies d'entraînement

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

YOLOv6-3.0 suit les pratiques standard de deep learning pour les CNN. Il bénéficie de calendriers d’entraînement plus courts (généralement 300 à 400 epochs) et d’une consommation de mémoire GPU plus faible. Les techniques comme l’auto-distillation sont gérées en interne, mais ajoutent une couche de complexité au calcul de la fonction de perte.

RTDETRv2, étant basé sur un transformateur, exige généralement plus de mémoire CUDA pendant l'entraînement. La complexité quadratique du mécanisme d'attention par rapport à la taille de l'image signifie que les tailles de lot doivent souvent être réduites, ou que des GPU plus puissants doivent être utilisés. De plus, les transformateurs bénéficient souvent d'horizons d'entraînement plus longs pour apprendre pleinement les relations spatiales sans biais inductifs.

L'avantage Ultralytics

Bien que YOLOv6 et RTDETR offrent tous deux des fonctionnalités intéressantes pour des niches spécifiques, Ultralytics YOLO11 fournit une solution unifiée qui équilibre 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 élimine la complexité de l'entraînement et du déploiement. Vous pouvez entraîner 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 la surcharge de mémoire massive des transformateurs.
  • Polyvalence : Contrairement à YOLOv6 (détection uniquement), les modèles Ultralytics prennent en charge nativement la segmentation d’instance, l’estimation de pose, la classification et la détection de boîtes englobantes orientées (obb).
  • Écosystème bien maintenu : Grâce à des mises à jour fréquentes, une documentation exhaustive et au soutien de la communauté, vous ne serez jamais seul face à un débogage.
  • Efficacité de l'entraînement : Les modèles Ultralytics sont réputés pour leurs pipelines d'entraînement 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-3.0 et RTDETRv2 sont tous deux des réalisations impressionnantes dans le domaine de la vision par ordinateur. YOLOv6-3.0 est le choix pragmatique pour les pipelines strictement industriels où le matériel est fixe et la vitesse est la seule métrique qui compte. RTDETRv2 est un excellent choix pour la recherche et les applications haut de gamme où la précision dans les scènes complexes est essentielle et les ressources matérielles sont abondantes.

Cependant, pour la grande majorité des applications du monde réel, Ultralytics YOLO11 reste le choix supérieur. Il offre un compromis idéal entre performance, polyvalence et facilité d'utilisation, ce qui accélère le passage du concept à la production. Que vous soyez un chercheur ayant besoin d'expérimentations rapides ou un ingénieur déployant des solutions sur des milliers d'appareils en périphérie, l'écosystème Ultralytics fournit les outils nécessaires pour assurer le succès.

Explorer d'autres modèles

Si vous souhaitez d'autres comparaisons, explorez ces ressources dans la documentation Ultralytics :


Commentaires