Meet YOLO26: next-gen vision AI.

Link to this sectionYOLO12 : Détection d'objets centrée sur l'attention#

Link to this sectionPrésentation#

YOLO12, sorti début 2025, introduit une architecture centrée sur l'attention qui s'écarte des approches traditionnelles basées sur les CNN utilisées dans les modèles YOLO précédents, tout en conservant la vitesse d'inférence en temps réel essentielle pour de nombreuses applications. Ce modèle atteint une grande précision de détection d'objets grâce à des innovations méthodologiques inédites dans les mécanismes d'attention et dans l'architecture globale du réseau, tout en maintenant des performances en temps réel. Malgré ces avantages, YOLO12 reste une version pilotée par la communauté qui peut présenter une instabilité lors de l'entraînement, une consommation de mémoire élevée et un débit CPU plus lent en raison de ses blocs d'attention lourds. Ultralytics recommande donc YOLO11 ou YOLO26 pour la plupart des charges de travail en production.

Modèle communautaire

YOLO12 est principalement maintenu à des fins de benchmarking et de recherche. Si tu as besoin d'un entraînement stable, d'une utilisation prévisible de la mémoire et d'une inférence CPU optimisée, choisis YOLO11 ou YOLO26 pour le déploiement.



Watch: How to Use YOLO12 for Object Detection with the Ultralytics Package | Is YOLO12 Fast or Slow? 🚀

Link to this sectionFonctionnalités clés#

  • Mécanisme d'attention par zone (Area Attention) : Une nouvelle approche d'auto-attention qui traite efficacement de grands champs récepteurs. Elle divise les feature maps en l régions de taille égale (4 par défaut), horizontalement ou verticalement, évitant ainsi les opérations complexes tout en conservant un large champ récepteur effectif. Cela réduit considérablement le coût computationnel par rapport à l'auto-attention standard.
  • Réseaux d'agrégation de couches efficaces résiduelles (R-ELAN) : Un module d'agrégation de caractéristiques amélioré basé sur ELAN, conçu pour relever les défis d'optimisation, en particulier dans les modèles centrés sur l'attention à plus grande échelle. R-ELAN introduit :
    • Des connexions résiduelles au niveau des blocs avec mise à l'échelle (similaire à la mise à l'échelle des couches).
    • Une méthode révisée d'agrégation des caractéristiques créant une structure de type goulot d'étranglement (bottleneck).
  • Architecture d'attention optimisée : YOLO12 rationalise le mécanisme d'attention standard pour une efficacité accrue et une meilleure compatibilité avec le framework YOLO. Cela inclut :
    • L'utilisation de FlashAttention pour minimiser la surcharge d'accès à la mémoire.
    • La suppression du codage positionnel pour un modèle plus propre et plus rapide.
    • L'ajustement du ratio MLP (passant de 4 à 1,2 ou 2) pour mieux équilibrer le calcul entre l'attention et les couches feed-forward.
    • La réduction de la profondeur des blocs empilés pour une optimisation améliorée.
    • L'exploitation des opérations de convolution (lorsque c'est approprié) pour leur efficacité computationnelle.
    • L'ajout d'une convolution séparable 7x7 (le « position perceiver ») au mécanisme d'attention pour encoder implicitement les informations positionnelles.
  • Support complet des tâches : YOLO12 prend en charge une gamme de tâches fondamentales de vision par ordinateur : détection d'objets, instance segmentation, image classification, estimation de pose et détection d'objets orientés (OBB).
  • Efficacité améliorée : Atteint une précision plus élevée avec moins de paramètres par rapport à de nombreux modèles antérieurs, démontrant un meilleur équilibre entre vitesse et précision.
  • Déploiement flexible : Conçu pour être déployé sur diverses plateformes, des appareils en périphérie (edge) jusqu'à l'infrastructure cloud.

Visualisation de la comparaison YOLO12

Link to this sectionTâches et modes pris en charge#

YOLO12 prend en charge une variété de tâches de vision par ordinateur. Le tableau ci-dessous présente le support des tâches et les modes opérationnels (Inférence, Validation, Entraînement et Export) activés pour chacune :

Disponibilité des poids pré-entraînés

Seuls les poids de détection (yolo12n.pt, yolo12s.pt, yolo12m.pt, yolo12l.pt, yolo12x.pt) sont publiés sur ultralytics/assets. Les architectures de segmentation, classification, pose et OBB sont définies dans ultralytics/cfg/models/12/, ces variantes supportent donc l'entraînement à partir de zéro depuis la configuration .yaml, mais aucun fichier .pt pré-entraîné n'est actuellement disponible pour elles. Pour les checkpoints pré-entraînés de segmentation, pose, classification ou OBB, Ultralytics recommande YOLO11 ou YOLO26.

Type de modèleTâchePoids pré-entraînésInférenceValidationEntraînementExporter (Export)
YOLO12Détection
YOLO12-segSegmentation
YOLO12-posePose
YOLO12-clsClassification
YOLO12-obbOBB

Toutes les architectures YOLO12 supportent chaque mode une fois qu'un checkpoint entraîné est disponible. La colonne Pretrained Weights indique uniquement si Ultralytics publie un .pt officiel pré-entraîné sur ultralytics/assets : pour la segmentation, la pose, la classification et l'OBB, tu dois entraîner ton propre checkpoint à partir du .yaml correspondant avant d'exécuter l'inférence, la validation ou l'export.

Link to this sectionMétriques de performance#

YOLO12 démontre des améliorations significatives de précision à toutes les échelles de modèle, avec quelques compromis sur la vitesse par rapport aux modèles YOLO antérieurs les plus rapides. Tu trouveras ci-dessous les résultats quantitatifs pour la détection d'objets sur le jeu de données de validation COCO :

Link to this sectionPerformance de détection (COCO val2017)#

Performance
Modèletaille
(pixels)
mAPval
50-95
Vitesse
CPU ONNX
(ms)
Vitesse
T4 TensorRT
(ms)
params
(M)
FLOPs
(B)
Comparaison
(mAP/Vitesse)
YOLO12n64040.6-1.642.66.5+2.1%/-9% (vs. YOLOv10n)
YOLO12s64048.0-2.619,321.4+0.1%/+42% (vs. RT-DETRv2)
YOLO12m64052,5-4.8620.267.5+1.0%/-3% (vs. YOLO11m)
YOLO12l64053.7-6.7726.488.9+0.4%/-8% (vs. YOLO11l)
YOLO12x64055.2-11.7959.1199.0+0.6%/-4% (vs. YOLO11x)
  • Vitesse d'inférence mesurée sur un GPU NVIDIA T4 avec une précision TensorRT FP16.
  • Les comparaisons montrent l'amélioration relative du mAP et le changement en pourcentage de la vitesse (positif indique plus rapide ; négatif indique plus lent). Les comparaisons sont effectuées par rapport aux résultats publiés pour YOLOv10, YOLO11 et RT-DETR lorsqu'ils sont disponibles.

Link to this sectionExemples d'utilisation#

Cette section fournit des exemples pour l'entraînement et l'inférence avec YOLO12. Pour une documentation plus complète sur ces modes et d'autres (y compris Validation et Export), consulte les pages dédiées Predict et Train.

Les exemples ci-dessous se concentrent sur les modèles Detect de YOLO12 (pour la détection d'objets). Pour d'autres tâches supportées (segmentation, classification, détection d'objets orientés et estimation de pose), réfère-toi à la documentation spécifique à la tâche : Segment, Classify, OBB et Pose.

Exemple

Les modèles *.pt pré-entraînés (en utilisant PyTorch) et les fichiers de configuration *.yaml peuvent être passés à la classe YOLO() pour créer une instance de modèle en Python :

from ultralytics import YOLO

# Load a COCO-pretrained YOLO12n model
model = YOLO("yolo12n.pt")

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

# Run inference with the YOLO12n model on the 'bus.jpg' image
results = model("path/to/bus.jpg")

Link to this sectionAméliorations clés#

  1. Extraction de caractéristiques améliorée :

    • Attention par zone : Gère efficacement les grands champs récepteurs, réduisant le coût computationnel.
    • Équilibre optimisé : Équilibre amélioré entre les calculs d'attention et les réseaux feed-forward.
    • R-ELAN : Améliore l'agrégation des caractéristiques en utilisant l'architecture R-ELAN.
  2. Innovations d'optimisation :

    • Connexions résiduelles : Introduit des connexions résiduelles avec mise à l'échelle pour stabiliser l'entraînement, surtout dans les modèles plus larges.
    • Intégration raffinée des caractéristiques : Implémente une méthode améliorée pour l'intégration des caractéristiques au sein de R-ELAN.
    • FlashAttention : Incorpore FlashAttention pour réduire la surcharge d'accès à la mémoire.
  3. Efficacité architecturale :

    • Nombre de paramètres réduit : Atteint un nombre de paramètres inférieur tout en maintenant ou améliorant la précision par rapport à de nombreux modèles précédents.
    • Attention rationalisée : Utilise une implémentation simplifiée de l'attention, évitant le codage positionnel.
    • Ratios MLP optimisés : Ajuste les ratios MLP pour allouer plus efficacement les ressources computationnelles.

Link to this sectionPrérequis#

L'implémentation Ultralytics YOLO12, par défaut, ne nécessite pas FlashAttention. Cependant, FlashAttention peut être optionnellement compilé et utilisé avec YOLO12. Pour compiler FlashAttention, l'un des GPU NVIDIA suivants est requis :

Link to this sectionCitations et remerciements#

Si tu utilises YOLO12 dans tes recherches, merci de citer le travail original de University at Buffalo et de la University of Chinese Academy of Sciences :

Citation
@article{tian2025yolo12,
  title={YOLO12: Attention-Centric Real-Time Object Detectors},
  author={Tian, Yunjie and Ye, Qixiang and Doermann, David},
  journal={arXiv preprint arXiv:2502.12524},
  year={2025}
}

@software{yolo12,
  author = {Tian, Yunjie and Ye, Qixiang and Doermann, David},
  title = {YOLO12: Attention-Centric Real-Time Object Detectors},
  year = {2025},
  url = {https://github.com/sunsmarterjie/yolov12},
  license = {AGPL-3.0}
}

Link to this sectionFAQ#

Link to this sectionComment YOLO12 parvient-il à la détection d'objets en temps réel tout en maintenant une haute précision ?#

YOLO12 intègre plusieurs innovations clés pour équilibrer vitesse et précision. Le mécanisme d'attention par zone traite efficacement les grands champs récepteurs, réduisant le coût computationnel par rapport à l'auto-attention standard. Les réseaux d'agrégation de couches efficaces résiduelles (R-ELAN) améliorent l'agrégation des caractéristiques, répondant aux défis d'optimisation dans les modèles centrés sur l'attention plus larges. L'architecture d'attention optimisée, incluant l'utilisation de FlashAttention et la suppression du codage positionnel, améliore encore l'efficacité. Ces caractéristiques permettent à YOLO12 d'atteindre une précision de pointe tout en maintenant la vitesse d'inférence en temps réel cruciale pour de nombreuses applications.

Link to this sectionQuelles tâches de vision par ordinateur supporte YOLO12 ?#

YOLO12 est un modèle polyvalent qui prend en charge une large gamme de tâches fondamentales de vision par ordinateur. Il excelle dans la détection d'objets, la segmentation d'instances, la classification d'images, l'estimation de pose et la détection d'objets orientés (OBB) (voir détails). Ce support complet des tâches fait de YOLO12 un outil puissant pour des applications diverses, allant de la robotique et la conduite autonome à l'imagerie médicale et l'inspection industrielle. Note que les poids .pt pré-entraînés sont actuellement publiés uniquement pour la détection ; les architectures de segmentation, pose, classification et OBB sont fournies sous forme de configurations .yaml pour un entraînement à partir de zéro.

Link to this sectionComment YOLO12 se compare-t-il aux autres modèles YOLO et aux concurrents comme RT-DETR ?#

YOLO12 démontre des améliorations de précision significatives sur toutes les échelles de modèles par rapport aux modèles YOLO précédents comme YOLOv10 et YOLO11, avec quelques compromis sur la vitesse par rapport aux modèles précédents les plus rapides. Par exemple, YOLO12n obtient une amélioration de mAP de +2,1 % par rapport à YOLOv10n et de +1,2 % par rapport à YOLO11n sur le jeu de données COCO val2017. Par rapport à des modèles comme RT-DETR, YOLO12s offre une amélioration de mAP de +1,5 % et une augmentation de vitesse substantielle de +42 %. Ces métriques soulignent le solide équilibre de YOLO12 entre précision et efficacité. Consulte la section sur les métriques de performance pour des comparaisons détaillées.

Link to this sectionQuelles sont les exigences matérielles pour exécuter YOLO12, en particulier pour utiliser FlashAttention ?#

Par défaut, l'implémentation Ultralytics YOLO12 ne nécessite pas FlashAttention. Cependant, FlashAttention peut être optionnellement compilé et utilisé avec YOLO12 pour minimiser la surcharge d'accès à la mémoire. Pour compiler FlashAttention, l'un des GPU NVIDIA suivants est requis : GPU Turing (ex. T4, série Quadro RTX), GPU Ampere (ex. série RTX30, A30/40/100), GPU Ada Lovelace (ex. série RTX40) ou GPU Hopper (ex. H100/H200). Cette flexibilité permet aux utilisateurs de tirer parti des avantages de FlashAttention lorsque les ressources matérielles le permettent.

Link to this sectionOù puis-je trouver des exemples d'utilisation et une documentation plus détaillée pour YOLO12 ?#

Cette page fournit des exemples d'utilisation de base pour l'entraînement et l'inférence. Pour une documentation complète sur ces modes et d'autres, y compris la Validation et l' Export, consulte les pages dédiées Predict et Train. Pour des informations spécifiques aux tâches (segmentation, classification, détection d'objets orientés et estimation de pose), réfère-toi à la documentation respective : Segment, Classify, OBB et Pose. Ces ressources fournissent des conseils approfondis pour utiliser efficacement YOLO12 dans divers scénarios.

Commentaires