Skip to content

YOLO-NAS

Vue d'ensemble

Développé par Deci AI, YOLO-NAS est un modèle fondamental de détection d'objets révolutionnaire. Il est le fruit 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. Grâce à des améliorations significatives de la prise en charge de la quantification et des compromis entre précision et latence, YOLO-NAS représente une avancée majeure dans le domaine de la détection d'objets.

Modèle exemple image Aperçu de YOLO-NAS. YOLO-Le 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, ne subit qu'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 exploite 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

Découvrez 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. Choisissez parmi une variété d'options adaptées à vos 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 vous permet d'optimiser vos tâches de détection d'objets en termes de performances et de rapidité.

Exemples d'utilisation

Ultralytics a rendu les modèles YOLO-NAS faciles à intégrer dans vos applications Python par le biais de notre ultralytics python paquet. Ce progiciel propose 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 d'inférence 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 Exportation. YOLO-NAS sur le ultralytics ne soutient pas la formation.

PyTorch préformé *.pt peuvent être transmis à la fonction 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 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, lorsque les ressources informatiques sont moins contraignantes.

Vous trouverez ci-dessous une présentation détaillée 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 Exportation
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 vous utilisez YOLO-NAS dans vos travaux de recherche ou de développement, veuillez citer 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.

FAQ

Qu'est-ce que le YOLO-NAS et quelles sont les améliorations par rapport aux modèles YOLO précédents ?

YOLO-NAS, développé par Deci AI, est un modèle de détection d'objets à la pointe de la technologie qui s'appuie sur la technologie avancée de recherche d'architecture neuronale (NAS). Il s'attaque aux limites des modèles YOLO précédents en introduisant des caractéristiques telles que des blocs de base faciles à quantifier et des schémas d'apprentissage sophistiqués. Il en résulte des améliorations significatives des performances, en particulier dans les environnements où les ressources informatiques sont limitées. YOLO-Le NAS prend également en charge la quantification et conserve une grande précision même lorsqu'il est converti en version INT8, ce qui lui permet de mieux s'adapter aux environnements de production. Pour plus de détails, voir la section Vue d'ensemble.

Comment puis-je intégrer les modèles YOLO-NAS dans mon application Python ?

Vous pouvez facilement intégrer les modèles YOLO-NAS dans votre application Python à l'aide de la fonction ultralytics paquetage. Voici un exemple simple de chargement d'un modèle pré-entraîné YOLO-NAS et d'inférence :

from ultralytics import NAS

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

# 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")

Pour plus d'informations, voir les exemples d'inférence et de validation.

Quelles sont les principales caractéristiques du YOLO-NAS et pourquoi devrais-je envisager de l'utiliser ?

YOLO-Le système NAS présente plusieurs caractéristiques clés qui en font un choix de premier ordre pour les tâches de détection d'objets :

  • Bloc de base facilitant la quantification : Architecture amĂ©liorĂ©e qui amĂ©liore les performances du modèle avec une baisse minimale de la prĂ©cision après la quantification.
  • Formation et quantification sophistiquĂ©es : Utilise des schĂ©mas de formation avancĂ©s et des techniques de quantification post-formation.
  • Optimisation et prĂ©-entraĂ®nement AutoNAC : 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.

Ces caractéristiques contribuent à sa grande précision, à ses performances efficaces et à son aptitude à être déployé dans des environnements de production. Pour en savoir plus, consultez la section Caractéristiques principales.

Quels sont les tâches et les modes pris en charge par les modèles YOLO-NAS ?

YOLO-Les modèles NAS prennent en charge diverses tâches et modes de détection d'objets, tels que l'inférence, la validation et l'exportation. Ils ne prennent pas en charge la formation. Les modèles pris en charge comprennent YOLO-NAS-s, YOLO-NAS-m et YOLO-NAS-l, chacun adapté à des capacités de calcul et à des besoins de performance différents. Pour une présentation détaillée, reportez-vous à la section Tâches et modes pris en charge.

Existe-t-il des modèles pré-entraînés YOLO-NAS et comment y accéder ?

Oui, Ultralytics fournit des modèles pré-entraînés YOLO-NAS auxquels vous pouvez accéder directement. Ces modèles sont pré-entraînés sur des ensembles de données tels que COCO, ce qui garantit des performances élevées en termes de vitesse et de précision. Vous pouvez télécharger ces modèles en utilisant les liens fournis dans la section Modèles pré-entraînés. Voici quelques exemples :

📅C réé il y a 1 an ✏️ Mis à jour il y a 10 jours

Commentaires