Empowering On-Device Model Adaptation with an Edge AI Inference Accelerator
Cet article propose un pipeline d'adaptation hétérogène qui réutilise l'accélérateur d'inférence IA en périphérie Hailo-8L pour l'extraction de caractéristiques à squelette gelé tout en affinant une tête de classification légère sur le CPU hôte, permettant une adaptation de modèle sur l'appareil économe en énergie et rapide qui surpasse de manière significative les références uniquement sur CPU.
Article original sous licence CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/). Ceci est une explication générée par l'IA de l'article ci-dessous. Elle n'a pas été rédigée ni approuvée par les auteurs. Pour une précision technique, consultez l'article original. Lire la clause de non-responsabilité complète
Imaginez que votre smartphone ou une caméra intelligente soit un minuscule chef de cuisine surmené tentant de préparer un repas complexe. Habituellement, ce chef apprend de nouvelles recettes en goûtant la nourriture, en comprenant ce qui n'a pas fonctionné, et en réécrivant l'intégralité du livre de recettes à partir de zéro. Mais dans le monde réel, ces appareils sont souvent trop petits, trop chauds ou trop gourmands en batterie pour effectuer cette réécriture massive pendant qu'ils travaillent. C'est le monde de l'« apprentissage sur l'appareil » (on-device learning), une branche de l'intelligence artificielle où les ordinateurs tentent d'apprendre et de s'adapter là où se trouvent les données, sans avoir besoin de tout renvoyer vers un énorme serveur dans le cloud. Le grand défi a toujours été : comment enseigner à un petit appareil à devenir plus intelligent sans épuiser sa batterie ou le ralentir ? Les scientifiques ont essayé de trouver un moyen de permettre à ces appareils d'ajuster leurs « cerveaux » juste assez pour gérer de nouvelles situations — comme une caméra de sécurité apprenant à reconnaître un nouveau type de chien — sans avoir besoin de la puissance d'un supercalculateur.
Les chercheurs de cet article ont trouvé une astuce ingénieuse en empruntant un outil qui n'était pas destiné à l'enseignement à l'origine. Ils ont pris une puce spécialisée appelée Hailo-8L, conçue pour être un « goûteur » (inférence) ultra-rapide pour les modèles d'IA, et l'ont détournée pour aider à la véritable préparation culinaire (entraînement). Normalement, l'entraînement d'un modèle est comparable à une tentative de réécriture d'un livre de cuisine entier tout en goûtant simultanément le plat ; c'est lent et cela nécessite beaucoup d'énergie. La solution de l'équipe a été de diviser le travail. Ils ont gardé la « colonne vertébrale » (backbone) du modèle d'IA — la partie qui reconnaît les formes et les motifs généraux — figée et l'ont envoyée vers la puce rapide pour gérer la tâche lourde de l'observation des images. Cette puce travaille dans un langage simplifié et à faible consommation (INT8), ce qui la rend incroyablement rapide. Pendant ce temps, le processeur principal de l'appareil (le CPU) n'avait qu'à effectuer le travail léger consistant à ajuster la « tête » finale du modèle, qui est simplement la partie qui décide quel objet spécifique est en train d'être vu.
En faisant cela, ils ont créé un système hybride où le gros du travail est effectué par la puce rapide, et où l'apprentissage se déroule sur le processeur principal. Ils ont testé cela sur un Raspberry Pi 5, un petit ordinateur abordable, et ont découvert qu'il pouvait entraîner des modèles jusqu'à 15,4 fois plus vite qu'en utilisant uniquement le processeur de l'ordinateur. Par exemple, lors de l'entraînement d'un modèle ResNet18, la nouvelle méthode ne prenait que 6,04 millisecondes par image, contre 92,85 millisecondes pour le CPU seul. Elle consommait également nettement moins d'énergie, ne consommant que 38,65 millijoules par échantillon contre 525,65 millijoules pour la méthode utilisant uniquement le CPU. Cependant, l'article note que ce gain de vitesse n'est pas magique pour chaque situation ; il fonctionne mieux lorsque la « tête » du modèle est petite et simple. Si la partie nécessitant l'apprentissage est trop complexe, le processeur principal redevient le goulot d'étranglement, ralentissant ainsi le processus.
Les chercheurs ont également découvert un effet secondaire délicat : comme la puce rapide utilise des mathématiques simplifiées, elle peut parfois déformer le « goût » des données, rendant l'apprentissage correct plus difficile pour le processeur principal. Pour corriger cela, ils ont testé plusieurs techniques de « restauration », comme l'ajustement de l'assaisonnement (correction du biais) ou l'utilisation d'une méthode plus avancée appelée distillation de connaissances. Ils ont découvert que pour certains modèles, comme ResNet18, un simple ajustement suffisait pour retrouver la précision normale. Mais pour des modèles plus complexes comme MobileNetV3, ils avaient besoin de ces techniques de restauration avancées pour éviter que la précision ne chute trop. En fin de compte, l'article suggère que si vous ne pouvez pas simplement lancer un travail d'entraînement complet sur une puce minuscule, vous pouvez certainement utiliser ces puces d'inférence pour rendre l'apprentissage sur l'appareil beaucoup plus rapide et économe en énergie, à condition de savoir accorder le système pour le modèle spécifique que vous utilisez.
Noyé(e) sous les articles dans votre domaine ?
Recevez des digests quotidiens des articles les plus récents correspondant à vos mots-clés de recherche — avec des résumés techniques, dans votre langue.