En cliquant sur « Accepter tous les cookies », vous acceptez le stockage de cookies sur votre appareil pour améliorer la navigation sur le site, analyser son utilisation et contribuer à nos efforts de marketing. Plus d’infos
Paramètres des cookies
En cliquant sur « Accepter tous les cookies », vous acceptez le stockage de cookies sur votre appareil pour améliorer la navigation sur le site, analyser son utilisation et contribuer à nos efforts de marketing. Plus d’infos
Découvrez pourquoi les inférences en temps réel dans la vision par ordinateur sont importantes pour un éventail d'applications et explorez leur rôle dans la prise de décision instantanée.
Nous avons tous été confrontés aux frustrations qu'une connexion Internet lente peut causer à un moment donné. Cependant, imaginez ce retard dans une situation à enjeux élevés, comme une voiture autonome réagissant à un obstacle ou un médecin analysant un scanner critique. Quelques secondes supplémentaires peuvent avoir de graves conséquences.
C'est là que l'inférence de l'IA en temps réel peut faire la différence. Le traitement rapide et les prédictions en temps réel permettent aux solutions de vision par ordinateur de traiter et de réagir instantanément aux données visuelles. Ces décisions fractionnées peuvent améliorer la sécurité, l'efficacité et la commodité au quotidien.
Par exemple, prenons l'exemple d'un chirurgien effectuant une intervention délicate à l'aide d'un assistant robotisé. Chaque mouvement est contrôlé par une connexion à haut débit, et le système de vision du robot traite le champ opératoire en temps réel, ce qui donne au chirurgien un retour visuel instantané. Même le moindre retard dans cette boucle de rétroaction pourrait entraîner de graves erreurs, mettant ainsi le patient en danger. C'est un parfait exemple de la raison pour laquelle les inférences en temps réel sont cruciales ; il n'y a pas de place pour le décalage.
Les inférences de l'IA dans les applications du monde réel dépendent de trois concepts clés : les moteurs d'inférence (le logiciel ou le matériel qui exécute efficacement les modèles d'IA), la latence d'inférence (le délai entre l'entrée et la sortie) et l'inférence en temps réel (la capacité du système d'IA à traiter et à réagir avec un délai minimal).
Dans cet article, nous explorerons ces concepts fondamentaux et la manière dont les modèles de vision par ordinateur tels que Ultralytics YOLO11 permettent des applications qui reposent sur des prédictions instantanées.
Qu'est-ce qu'une inférence d'IA ?
L'exécution d'une inférence est le processus d'analyse de nouvelles données à l'aide d'un modèle d'IA entraîné pour faire une prédiction ou résoudre une tâche. Contrairement à l'entraînement, qui consiste à enseigner à un modèle en traitant de grandes quantités de données étiquetées, l'inférence se concentre sur la production de résultats rapides et précis à l'aide d'un modèle déjà entraîné.
Par exemple, dans le domaine de la conservation de la faune, les pièges photographiques à IA utilisent des modèles de vision par ordinateur pour identifier et classifier les animaux en temps réel. Lorsqu'une caméra détecte un mouvement, le modèle d'IA reconnaît instantanément s'il s'agit d'un cerf, d'un prédateur ou même d'un braconnier, ce qui aide les chercheurs à suivre les populations animales et à protéger les espèces menacées sans intervention humaine. Cette identification rapide rend possible la surveillance en temps réel et des réponses plus rapides aux menaces potentielles.
Comprendre les moteurs d'inférence
Un modèle d'apprentissage automatique entraîné n'est pas toujours prêt à être déployé dans sa forme brute. Un moteur d'inférence est un outil logiciel ou matériel spécialisé, conçu pour exécuter efficacement des modèles d'apprentissage automatique et les optimiser pour un déploiement dans le monde réel. Il utilise des techniques d'optimisation telles que la compression de modèle, la quantification et les transformations de graphes pour améliorer les performances et réduire la consommation de ressources, rendant le modèle déployable dans divers environnements.
Essentiellement, un moteur d'inférence se concentre sur la réduction de la surcharge de calcul, la minimisation de la latence et l'amélioration de l'efficacité pour permettre des prédictions rapides et précises. Une fois optimisé, le moteur exécute le modèle sur de nouvelles données, ce qui lui permet de générer efficacement des inférences en temps réel. Cette optimisation garantit que les modèles d'IA peuvent fonctionner sans problème sur des serveurs cloud à haute performance et sur des appareils périphériques aux ressources limitées, tels que les smartphones, les appareils IoT et les systèmes embarqués.
Problèmes causés par la latence d'inférence
La latence d'inférence est le délai entre le moment où un système d'IA reçoit des données d'entrée (telles qu'une image provenant d'une caméra) et le moment où il produit une sortie (comme la détection d'objets dans l'image). Même un léger retard peut avoir un impact significatif sur les performances et la convivialité des applications d'IA en temps réel.
La latence d'inférence se produit en trois étapes clés :
Temps de prétraitement : Le temps nécessaire pour préparer les données d'entrée avant qu'elles ne soient introduites dans le modèle. Cela comprend le redimensionnement des images pour qu'elles correspondent aux dimensions d'entrée du modèle, la normalisation des valeurs des pixels pour une meilleure précision et la conversion des formats (par exemple, RVB en niveaux de gris ou vidéo en séquences d'images).
Temps de calcul : Le temps réel que le modèle met pour effectuer l'inférence. Cela implique des opérations telles que les calculs par couche dans les réseaux profonds, les multiplications matricielles, les convolutions et le transfert de données entre la mémoire et les unités de traitement.
Temps de post-traitement : Le temps nécessaire pour convertir les sorties brutes du modèle en résultats significatifs. Cela peut inclure le dessin de cadres de délimitation dans la détection d'objets, le filtrage des faux positifs dans la reconnaissance d'images ou l'application de seuils dans la détection d'anomalies.
La latence d'inférence est essentielle dans les applications en temps réel. Par exemple, dans la détection automatisée de défauts sur une chaîne de montage, la vision par ordinateur peut être utilisée pour inspecter les produits lorsqu'ils avancent sur le convoyeur.
Le système doit identifier et signaler rapidement les défauts avant que les produits ne passent à l'étape suivante. Si le modèle met trop de temps à traiter les images, les articles défectueux risquent de ne pas être détectés à temps, ce qui entraîne un gaspillage de matériaux, des retouches coûteuses ou des produits défectueux qui parviennent aux clients. En réduisant la latence, les fabricants peuvent améliorer le contrôle de la qualité, accroître l'efficacité et réduire les pertes.
Comment réduire la latence d'inférence
Il est essentiel de maintenir une latence d'inférence minimale dans de nombreuses applications de vision par ordinateur. Diverses techniques peuvent être utilisées pour y parvenir. Examinons quelques-unes des techniques les plus courantes utilisées pour réduire la latence d'inférence.
Élagage de modèle
L'élagage de modèle simplifie un réseau neuronal en supprimant les connexions (poids) inutiles, ce qui le rend plus petit et plus rapide. Ce processus réduit la charge de calcul du modèle, améliorant ainsi la vitesse sans trop affecter la précision.
En ne conservant que les connexions les plus importantes, l'élagage assure une inférence efficace et de meilleures performances, en particulier sur les appareils dont la puissance de traitement est limitée. Il est largement utilisé dans les applications en temps réel telles que l'IA mobile, la robotique et l'informatique de périphérie pour améliorer l'efficacité tout en maintenant la fiabilité.
Fig 2. Élimination des connexions les moins efficaces grâce à l'élagage du modèle.
Quantification de modèle
La quantification de modèle est une technique qui permet aux modèles d'IA de fonctionner plus rapidement et d'utiliser moins de mémoire en simplifiant les nombres qu'ils utilisent pour les calculs. Normalement, ces modèles fonctionnent avec des nombres à virgule flottante de 32 bits, qui sont très précis mais nécessitent beaucoup de puissance de traitement. La quantification réduit ces nombres à des entiers de 8 bits, qui sont plus faciles à traiter et prennent moins de place.
Fig. 3. Utilisation de la quantification de modèle pour convertir les valeurs à virgule flottante en représentations entières.
Utilisation de modèles efficaces
La conception d'un modèle d'IA a un impact majeur sur la rapidité avec laquelle il peut faire des prédictions. Les modèles comme YOLO11, qui sont conçus pour une inférence efficace, sont idéaux pour les applications où la vitesse de traitement est essentielle.
Lorsque vous développez une solution d'IA, il est important de choisir le bon modèle en fonction des ressources disponibles et des besoins en termes de performances. Si vous commencez avec un modèle trop lourd, vous risquez de rencontrer des problèmes tels que des temps de traitement lents, une consommation d'énergie plus élevée et des difficultés de déploiement sur des appareils aux ressources limitées. Un modèle léger assure des performances fluides, en particulier pour les applications en temps réel et en périphérie.
Vitesse vs. précision : optimiser les inférences en temps réel
Bien qu'il existe diverses techniques pour réduire la latence, un élément clé des inférences en temps réel est l'équilibre entre la vitesse et la précision. Il ne suffit pas de rendre les modèles plus rapides : la vitesse d'inférence doit être optimisée sans compromettre la précision. Un système qui produit des prédictions rapides mais incorrectes est inefficace. C'est pourquoi des tests approfondis sont essentiels pour s'assurer que les modèles fonctionnent bien dans des situations réelles. Un système qui semble rapide pendant les tests mais qui échoue dans des conditions réelles n'est pas vraiment optimisé.
Applications d'IA de vision qui exploitent les inférences en temps réel
Ensuite, passons en revue quelques applications concrètes où l'inférence en temps réel transforme les industries en permettant des réponses instantanées aux entrées visuelles.
Systèmes de caisse automatique dans les magasins de détail
Les modèles de vision artificielle comme YOLO11 peuvent aider à améliorer les systèmes de caisse automatique en rendant la reconnaissance des articles plus rapide et plus précise. La prise en charge par YOLO11 de diverses tâches de vision artificielle comme la détection d'objets et la segmentation d'instances permet d'identifier les produits même si les codes-barres sont manquants ou endommagés. L'IA de vision peut réduire le besoin de saisie manuelle et accélérer le processus de paiement.
Au-delà de l'identification des produits, la vision artificielle peut également être intégrée aux systèmes de caisse automatique pour vérifier les prix, prévenir la fraude et améliorer la commodité pour les clients. Les caméras alimentées par l'IA peuvent automatiquement faire la distinction entre des produits similaires et détecter les comportements suspects à la caisse. Cela comprend l'identification des "non-scans", où un client ou un caissier manque involontairement un article, et des tentatives de fraude plus délibérées, comme le "changement de produit", où un code-barres moins cher est placé sur un article plus cher.
Fig. 4. L'IA peut améliorer les caisses automatiques.
Un excellent exemple de ceci est Kroger, un grand détaillant américain, qui a intégré la vision artificielle et l'IA dans ses systèmes de caisse automatique. Grâce à l'analyse vidéo en temps réel, Kroger a pu corriger automatiquement plus de 75 % des erreurs de caisse, améliorant ainsi l'expérience client et les opérations en magasin.
Inspection de la qualité à l'aide de la vision artificielle
L'inspection manuelle des produits pour le contrôle de la qualité peut être lente et pas toujours précise. C'est pourquoi de plus en plus de fabricants passent à des flux de travail d'inspection visuelle qui utilisent la vision artificielle pour détecter les défauts plus tôt dans le processus de production.
Les caméras haute résolution et l'IA de vision peuvent repérer de minuscules défauts que les humains pourraient manquer, et des modèles comme YOLO11 peuvent aider aux contrôles de qualité, au tri et au comptage en temps réel pour s'assurer que seuls les produits parfaits parviennent aux clients. L'automatisation de ce processus permet de gagner du temps, de réduire les coûts et de diminuer le gaspillage, ce qui rend la production plus fluide et plus efficace.
Fig. 5. Un exemple d'utilisation de YOLO11 pour compter les produits sur une chaîne de montage.
Principaux points à retenir
L'inférence en temps réel aide les modèles d'IA à prendre des décisions instantanées, ce qui est crucial dans de nombreuses industries. Qu'il s'agisse d'une voiture autonome évitant un accident, d'un médecin analysant rapidement des scans médicaux ou d'une usine détectant des défauts de produits, des réponses d'IA rapides et précises font une grande différence.
En améliorant la vitesse et l'efficacité des modèles d'IA, nous pouvons créer des systèmes plus intelligents et plus fiables qui fonctionnent de manière transparente dans des situations réelles. À mesure que la technologie progresse, les solutions d'IA en temps réel continueront de façonner l'avenir, rendant les processus quotidiens plus rapides, plus sûrs et plus efficaces.