Glossaire

Temps de latence de l'inférence

Optimise les performances de l'IA avec une faible latence d'inférence. Apprends les facteurs clés, les applications réelles et les techniques pour améliorer les réponses en temps réel.

Entraîne les modèles YOLO simplement
avec Ultralytics HUB

En savoir plus

La latence d'inférence est une mesure critique dans l'intelligence artificielle et l'apprentissage automatique, en particulier lors du déploiement de modèles pour des applications réelles. Elle fait référence au délai entre le moment où une entrée (comme une image ou une requête textuelle) est présentée à un modèle entraîné et le moment où le modèle produit une prédiction ou une sortie. Essentiellement, elle mesure la rapidité avec laquelle un modèle peut traiter de nouvelles données et fournir un résultat. Minimiser le temps de latence de l'inférence est souvent crucial pour les applications qui exigent des réponses rapides, ce qui a un impact direct sur la convivialité et l'efficacité des systèmes d'IA.

Pertinence de la latence d'inférence

Une faible latence d'inférence est vitale pour une expérience utilisateur positive et la faisabilité de nombreuses applications d'IA. Dans les systèmes interactifs, tels que les chatbots ou les services de traduction en temps réel, une latence élevée entraîne des retards perceptibles, ce qui frustre les utilisateurs. Pour les applications critiques comme les véhicules autonomes ou les outils de diagnostic médical, même de petits retards peuvent avoir des conséquences importantes, impactant la sécurité et la prise de décision. Par conséquent, comprendre, mesurer et optimiser la latence de l'inférence est un aspect essentiel du déploiement efficace des modèles d'IA. Il s'agit d'une métrique distincte du débit, qui mesure le nombre d'inférences traitées par unité de temps ; une application peut nécessiter une faible latence (réponse individuelle rapide) même si le débit global n'est pas extrêmement élevé.

Applications dans le monde réel

L'importance d'une faible latence d'inférence est évidente dans divers domaines :

  • Conduite autonome : Les voitures à conduite autonome s'appuient sur des modèles de vision par ordinateur pour des tâches telles que la détection d'objets (par exemple, l'identification de piétons, d'autres véhicules). Une faible latence est essentielle pour que le véhicule réagisse rapidement à son environnement, assurant ainsi sa sécurité. Un retard, ne serait-ce que de quelques millisecondes, dans la détection d'un obstacle peut s'avérer critique.
  • Systèmes de sécurité en temps réel : Les caméras de sécurité alimentées par l'IA utilisent des modèles pour détecter des intrusions ou des événements spécifiques. Pour qu'un système d'alarme de sécurité soit efficace, il doit traiter les flux vidéo et déclencher des alertes presque instantanément dès qu'il détecte une menace, ce qui nécessite une latence d'inférence minimale.

Facteurs affectant le temps de latence de l'inférence

Plusieurs facteurs influencent la rapidité avec laquelle un modèle peut effectuer une inférence :

  • Complexité du modèle : Les réseaux neuronaux (RN) plus grands et plus complexes nécessitent généralement plus de calculs, ce qui entraîne une latence plus élevée. Les architectures plus simples, comme certains Ultralytics YOLO sont souvent optimisées pour la vitesse.
  • Matériel : Le type de processeur utilisé a un impact significatif sur la latence. Les GPU et le matériel spécialisé comme les TPU ou les TPUGoogle Edge offrent généralement une latence plus faible que les CPU standard pour les tâches d'apprentissage profond.
  • Optimisation des logiciels : Cadres et bibliothèques comme TensorRT ou OpenVINO sont conçus pour optimiser les modèles pour un matériel spécifique, réduisant ainsi la latence. Le cadre sous-jacent, tel que PyTorchjoue également un rôle.
  • Taille du lot : Le traitement individuel des entrées(taille de lot de 1) minimise généralement le temps de latence pour cette entrée unique, tandis que des tailles de lot plus importantes peuvent améliorer le débit mais peuvent augmenter le temps de latence pour les prédictions individuelles.
  • Conditions du réseau : Pour les modèles déployés dans le cloud auxquels on accède via une API, la vitesse et la stabilité du réseau peuvent ajouter une latence importante. Les déploiements d'IA en périphérie atténuent ce problème en traitant les données localement.

Réduire le temps de latence de l'inférence

Pour obtenir une faible latence d'inférence, il faut souvent combiner plusieurs stratégies :

  • Optimisation du modèle : Des techniques comme la quantification du modèle (réduction de la précision des poids du modèle) et l'élagage du modèle (suppression des parties moins importantes du modèle) peuvent réduire de façon significative la taille du modèle et les besoins de calcul.
  • Accélération matérielle : Le déploiement de modèles sur du matériel puissant comme des GPU ou des accélérateurs d'IA dédiésNVIDIA Jetson, FPGA) est une approche courante.
  • Formats de déploiement efficaces : L'exportation de modèles vers des formats optimisés tels que ONNX ou l'utilisation de moteurs d'inférence spécialisés peut permettre d'accélérer considérablement le processus. Explore les différentes options de déploiement des modèles pour trouver celle qui convient le mieux.
  • Choix du modèle : Le choix d'une architecture de modèle conçue pour l'efficacité, comme YOLOv10, peut offrir un bon équilibre entre précision et rapidité.
  • Outils de plate-forme : L'utilisation de plateformes comme Ultralytics HUB peut rationaliser le processus de formation, d'optimisation (par exemple, via la quantification INT8) et de déploiement des modèles pour des performances à faible latence.

En résumé, la latence de l'inférence est une mesure de performance fondamentale pour les modèles d'IA déployés, particulièrement critique pour les applications exigeant une inférence en temps réel. Un examen minutieux de l'architecture du modèle, du matériel et des techniques d'optimisation est essentiel pour répondre aux exigences de latence des applications spécifiques.

Tout lire