Cache sémantique pour l'analyse d'images par IA

Anonim

La disponibilité de capteurs à haute résolution et peu coûteux a augmenté de manière exponentielle la quantité de données produites, ce qui pourrait submerger l'Internet existant. Cela a conduit à la nécessité d'une capacité de calcul pour traiter les données à proximité de leur génération, aux abords du réseau, au lieu de les envoyer à des centres de données sur le cloud. L'informatique de bord, comme on le sait, réduit non seulement la charge sur la bande passante, mais réduit également le temps d'attente pour obtenir des informations à partir de données brutes. Cependant, la disponibilité des ressources à la limite est limitée en raison du manque d’économies d’échelle qui rendent la gestion et l’offre rentable de l’infrastructure cloud.

Le potentiel de l'informatique de pointe n'est nulle part plus évident qu'avec l'analyse vidéo. Les caméras vidéo haute définition (1080p) deviennent courantes dans des domaines tels que la surveillance et, selon la fréquence d'images et la compression des données, elles peuvent produire 4 à 12 mégabits de données par seconde. Les nouvelles caméras de résolution 4K produisent des données brutes de l'ordre du gigabit par seconde. La nécessité d'obtenir des informations en temps réel sur ces flux vidéo conduit à utiliser des techniques d'intelligence artificielle telles que les réseaux de neurones profonds pour des tâches telles que la classification, la détection et l'extraction d'objets et la détection d'anomalies.

Dans notre article de conférence Hot Edge 2018, «Shadow Puppets: une inférence AI précise au niveau du cloud à la vitesse et à l’économie d’Edge», notre équipe d’IBM Research - Ireland a expérimentalement évalué les performances d’une telle charge de travail services hébergés. Le meilleur résultat que nous avons pu obtenir était une classification de 2 images par seconde, ce qui est bien inférieur au taux de production vidéo standard de 24 images par seconde. L'exécution d'une expérience similaire sur un périphérique périphérique représentatif (NVIDIA Jetson TK1) a satisfait aux exigences de latence, mais a utilisé la plupart des ressources disponibles sur le périphérique au cours de ce processus.

Nous cassons cette dualité en proposant le cache sémantique, une approche qui combine la faible latence des déploiements de périphérie avec les ressources quasi infinies disponibles dans le cloud. Nous utilisons la technique bien connue de la mise en cache pour masquer la latence en exécutant une inférence d'IA pour une entrée particulière (par exemple une image vidéo) dans le cloud et en stockant les résultats sur une empreinte digitale ou un code de hachage de l'entrée.

Ce schéma est conçu de telle sorte que les entrées sémantiquement similaires (par exemple, appartenant à la même classe) auront des empreintes digitales "proches" les unes des autres, selon une mesure de distance. La figure 1 montre la conception du cache. L'encodeur crée l'empreinte d'une image vidéo d'entrée et recherche dans le cache des empreintes digitales à une distance spécifique. S'il existe une correspondance, les résultats de l'inférence sont fournis à partir du cache, évitant ainsi d'avoir à interroger le service AI exécuté dans le cloud.

Nous trouvons les empreintes digitales analogues aux marionnettes d'ombre, des projections bidimensionnelles de figures sur un écran créé par une lumière en arrière-plan. Quiconque a utilisé ses doigts pour créer des marionnettes d'ombre attestera que l'absence de détails dans ces figures ne limite pas leur capacité à servir de base à une bonne narration. Les empreintes digitales sont des projections de l'entrée réelle qui peuvent être utilisées pour des applications d'IA riches, même en l'absence de détails d'origine.

Nous avons développé une implémentation complète du concept de cache sémantique, en suivant une approche de conception "en tant que service", et en exposant le service aux utilisateurs de périphériques / passerelles via une interface REST. Nos évaluations sur une gamme d'appareils périphériques divers (Raspberry Pi 3 / NVIDIA Jetson TK1 / TX1 / TX2) ont démontré que la latence de l'inférence a été réduite de 3 fois et l'utilisation de la bande passante d'au moins 50% par rapport à un cloud. seule solution.

L'évaluation précoce de la première mise en œuvre du prototype de notre approche illustre son potentiel. Nous continuons d'approfondir l'approche initiale, en privilégiant l'expérimentation de techniques de codage alternatives pour améliorer la précision, tout en étendant l'évaluation à d'autres ensembles de données et à des tâches IA.

Nous envisageons cette technologie pour avoir des applications dans la vente au détail, la maintenance prédictive pour les installations industrielles et la vidéosurveillance, entre autres. Par exemple, le cache sémantique peut être utilisé pour stocker les empreintes digitales des images de produits lors des extractions. Cela peut être utilisé pour empêcher les pertes en magasin dues au vol ou à une mauvaise analyse. Notre approche constitue un exemple de passage en douceur entre les services cloud et les services de périphérie pour fournir des solutions IA de pointe.

menu
menu