Skip to content

YOLO-NAS

Vue d'ensemble

Développé par Deci AI, YOLO-NAS est un modèle de base révolutionnaire pour la détection d'objets. Il est le produit d'une technologie avancée de recherche d'architecture neuronale, méticuleusement conçue pour répondre aux limites des modèles YOLO précédents. Avec des améliorations significatives dans la prise en charge de la quantification et les compromis entre précision et latence, YOLO-NAS représente une avancée majeure dans la détection d'objets.

Modèle exemple image Aperçu de YOLO-NAS. YOLO-NAS utilise des blocs sensibles à la quantification et une quantification sélective pour des performances optimales. Le modèle, lorsqu'il est converti en sa version quantifiée INT8, subit une baisse de précision minimale, ce qui constitue une amélioration significative par rapport aux autres modèles. Ces progrès aboutissent à une architecture supérieure dotée de capacités de détection d'objets sans précédent et de performances exceptionnelles.

Caractéristiques principales

  • Bloc de base adaptĂ© Ă  la quantification : YOLO-NAS introduit un nouveau bloc de base adaptĂ© Ă  la quantification, ce qui permet de remĂ©dier Ă  l'une des limitations importantes des modèles YOLO prĂ©cĂ©dents.
  • EntraĂ®nement et quantification sophistiquĂ©s : YOLO-NAS utilise des schĂ©mas d'entraĂ®nement avancĂ©s et une quantification post-entraĂ®nement pour amĂ©liorer les performances.
  • Optimisation et prĂ©-entraĂ®nement AutoNAC : YOLO-NAS utilise l'optimisation AutoNAC et est prĂ©-entraĂ®nĂ© sur des ensembles de donnĂ©es de premier plan tels que COCO, Objects365 et Roboflow 100. Ce prĂ©-entraĂ®nement le rend extrĂŞmement adaptĂ© aux tâches de dĂ©tection d'objets en aval dans les environnements de production.

Modèles pré-entraînés

Fais l'expérience de la puissance de la détection d'objets de nouvelle génération avec les modèles pré-entraînés YOLO-NAS fournis par Ultralytics. Ces modèles sont conçus pour offrir des performances de premier ordre en termes de vitesse et de précision. Choisis parmi une variété d'options adaptées à tes besoins spécifiques :

Modèle mAP Temps de latence (ms)
YOLO-NAS S 47.5 3.21
YOLO-NAS M 51.55 5.85
YOLO-NAS L 52.22 7.87
YOLO-NAS S INT-8 47.03 2.36
YOLO-NAS M INT-8 51.0 3.78
YOLO-NAS L INT-8 52.1 4.78

Chaque variante de modèle est conçue pour offrir un équilibre entre la précision moyenne (mAP) et la latence, ce qui t'aide à optimiser tes tâches de détection d'objets en termes de performance et de rapidité.

Exemples d'utilisation

Ultralytics Les modèles YOLO-NAS s'intègrent facilement dans tes applications Python grâce à nos ultralytics python paquet. Le progiciel fournit une API Python conviviale pour rationaliser le processus.

Les exemples suivants montrent comment utiliser les modèles YOLO-NAS avec l'option ultralytics pour l'inférence et la validation :

Exemples de déduction et de validation

Dans cet exemple, nous validons YOLO-NAS-s sur le jeu de données COCO8.

Exemple

Cet exemple fournit un code simple d'inférence et de validation pour YOLO-NAS. Pour le traitement des résultats de l'inférence, voir Prévoir mode. Pour utiliser YOLO-NAS avec d'autres modes, voir Val et Exporter. YOLO-NAS sur le ultralytics n'apporte pas de soutien à la formation.

PyTorch préformé *.pt Les fichiers de modèles peuvent être transmis à l'outil NAS() pour créer une instance de modèle dans python:

from ultralytics import NAS

# Load a COCO-pretrained YOLO-NAS-s model
model = NAS('yolo_nas_s.pt')

# Display model information (optional)
model.info()

# Validate the model on the COCO8 example dataset
results = model.val(data='coco8.yaml')

# Run inference with the YOLO-NAS-s model on the 'bus.jpg' image
results = model('path/to/bus.jpg')

CLI Des commandes sont disponibles pour exécuter directement les modèles :

# Load a COCO-pretrained YOLO-NAS-s model and validate it's performance on the COCO8 example dataset
yolo val model=yolo_nas_s.pt data=coco8.yaml

# Load a COCO-pretrained YOLO-NAS-s model and run inference on the 'bus.jpg' image
yolo predict model=yolo_nas_s.pt source=path/to/bus.jpg

Tâches et modes pris en charge

Nous proposons trois variantes des modèles YOLO-NAS : Petit (s), Moyen (m), et Grand (l). Chaque variante est conçue pour répondre à des besoins différents en matière de calcul et de performances :

  • YOLO-NAS-s : OptimisĂ© pour les environnements oĂą les ressources informatiques sont limitĂ©es mais oĂą l'efficacitĂ© est essentielle.
  • YOLO-NAS-m : Offre une approche Ă©quilibrĂ©e, adaptĂ©e Ă  la dĂ©tection d'objets Ă  usage gĂ©nĂ©ral avec une plus grande prĂ©cision.
  • YOLO-NAS-l: AdaptĂ© aux scĂ©narios nĂ©cessitant la plus grande prĂ©cision, oĂą les ressources informatiques sont moins contraignantes.

Tu trouveras ci-dessous un aperçu détaillé de chaque modèle, y compris des liens vers leurs poids pré-entraînés, les tâches qu'ils prennent en charge et leur compatibilité avec les différents modes de fonctionnement.

Type de modèle Poids pré-entraînés Tâches prises en charge Inférence Validation Formation Exporter
YOLO-NAS-s yolo_nas_s.pt Détection d'objets ✅ ✅ ❌ ✅
YOLO-NAS-m yolo_nas_m.pt Détection d'objets ✅ ✅ ❌ ✅
YOLO-NAS-l yolo_nas_l.pt Détection d'objets ✅ ✅ ❌ ✅

Citations et remerciements

Si tu utilises YOLO-NAS dans tes travaux de recherche ou de développement, cite SuperGradients :

@misc{supergradients,
      doi = {10.5281/ZENODO.7789328},
      url = {https://zenodo.org/record/7789328},
      author = {Aharon,  Shay and {Louis-Dupont} and {Ofri Masad} and Yurkova,  Kate and {Lotem Fridman} and {Lkdci} and Khvedchenya,  Eugene and Rubin,  Ran and Bagrov,  Natan and Tymchenko,  Borys and Keren,  Tomer and Zhilko,  Alexander and {Eran-Deci}},
      title = {Super-Gradients},
      publisher = {GitHub},
      journal = {GitHub repository},
      year = {2021},
}

Nous exprimons notre gratitude à l'équipe SuperGradients de Deci AI pour ses efforts dans la création et la maintenance de cette ressource précieuse pour la communauté de la vision par ordinateur. Nous pensons que YOLO-NAS, avec son architecture innovante et ses capacités supérieures de détection d'objets, deviendra un outil essentiel pour les développeurs et les chercheurs.

Mots-clés : YOLO-NAS, Deci AI, détection d'objets, apprentissage profond, recherche d'architecture neuronale, Ultralytics Python API, YOLO modèle, SuperGradients, modèles pré-entraînés, bloc de base convivial pour la quantification, schémas d'entraînement avancés, quantification post-entraînement, optimisation AutoNAC, COCO, Objects365, Roboflow 100.



Créé le 2023-11-12, Mis à jour le 2024-04-17
Auteurs : glenn-jocher (8)

Commentaires