DeVIT: Low-Power Vision Transformer Acceleration Using Delta Computation
Cet article introduit DeVIT, une méthode d'accélération à faible consommation pour les Vision Transformers qui exploite la localité des valeurs dans les modèles quantifiés pour permettre une multiplication matricielle sans multiplicateur grâce au calcul différentiel.
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 vous essayez d'apprendre à un robot super intelligent à reconnaître des images, comme repérer un chat dans un arbre ou une voiture dans une rue. Pour ce faire, nous utilisons des programmes informatiques spéciaux qui imitent le cerveau, appelés « Vision Transformers ». Ces programmes sont incroyablement puissants, mais ce sont des bêtes massives et voraces. Ils doivent effectuer des milliards de minuscules calculs mathématiques chaque fois qu'ils regardent une photo, et ils dévorent d'énormes quantités de mémoire et de batterie. C'est pourquoi il est très difficile de les installer sur de petits appareils comme des téléphones ou des drones sans qu'ils ne surchauffent ou ne tombent en panne de batterie.
Pour dompter ces bêtes affamées, les scientifiques ont essayé de simplifier les mathématiques. Une astuce populaire est la « quantification », qui revient à arrondir les nombres utilisés par le robot. Au lieu d'utiliser des décimales précises, le robot n'utilise qu'un ensemble limité de nombres entiers, comme 0, 1, 2, jusqu'à 255. Cela permet de gagner de l'espace, mais cela n'empêche pas le robot d'effectuer des milliards de multiplications. Cependant, il y a un bonus caché à cet arrondi : parce que le robot est contraint d'utiliser un petit nombre de chiffres spécifiques, il finit par utiliser les mêmes nombres encore et encore. C'est comme si un chef n'avait que cinq ingrédients ; il utiliserait le même pot d'épices de manière répétée. La grande question est : pouvons-nous construire un robot qui remarque qu'il est sur le point d'utiliser la même épice et qui saute l'étape du travail, économisant ainsi de l'énergie ?
C'est exactement ce que les chercheurs derrière DeVIT (Delta-coded Vision Transformer) ont cherché à résoudre. Ils ont réalisé que, parce que ces « Vision Transformers » sont forcés d'utiliser un ensemble limité de nombres, les poids (les nombres qui indiquent au robot ce qu'il doit chercher) se situent souvent très proches les uns des autres en valeur. Par exemple, si le robot doit multiplier un nombre par 5, puis par 6, puis par 7, il n'a pas besoin de faire trois calculs distincts et difficiles. Il peut simplement faire le premier, puis ajouter un tout petit peu pour le suivant, et ajouter un tout petit peu plus pour celui d'après.
L'équipe de DeVIT a inventé une façon ingénieuse d'organiser ces nombres afin que le robot puisse utiliser cette technique du « ajouter un petit peu » au lieu de faire des multiplications complètes et lourdes. Ils trient les nombres en ligne du plus petit au plus grand et ne stockent que la différence entre eux (le « delta »). Si la différence est petite, le robot peut simplement « décaler » le nombre (ce qui revient à multiplier par 2 ou 4) et l'ajouter, plutôt que de faire une multiplication complexe. Si la différence est nulle (ce qui signifie que le nombre est le même que le précédent), le robot n'a rien à faire — il réutilise simplement la réponse précédente.
En utilisant cette méthode, les chercheurs ont montré qu'ils pouvaient réduire la quantité de mathématiques que le robot doit effectuer à seulement 0,53 de ce qu'une version non optimisée nécessiterait. Cela signifie que le robot fait moins de la moitié du travail ! Dans leurs tests, ce nouveau design a utilisé 159,57 nJ (nanojoules) d'énergie pour une seule étape de calcul majeure. C'est environ 5,5 % de moins d'énergie que les meilleures méthodes existantes de type « décalage et ajout » contre lesquelles ils l'ont comparé.
Cependant, il y a un bémol. Pour que cela fonctionne, les chercheurs ont dû trier les nombres et stocker des informations supplémentaires sur leur position, ce qui occupe un peu plus d'espace mémoire. De plus, comme ils approchent les différences, il y a un léger compromis sur la précision. Dans leurs expériences avec différents modèles, la précision a chuté légèrement — parfois jusqu'à 3,11 points de pourcentage pour la classification d'images ou 2,53 points mAP pour la détection d'objets. Bien qu'il s'agisse d'un faible prix à payer pour une telle économie d'énergie, cela signifie que la méthode n'est pas encore parfaite pour toutes les situations.
En résumé, DeVIT est comme si l'on donnait une fiche de référence au robot. Au lieu de recalculer les mêmes problèmes mathématiques à partir de zéro à chaque fois, il consulte sa liste de nombres triés, voit que le suivant n'est qu'une petite étape plus loin, et prend un raccourci. Cela rend le robot plus rapide et beaucoup plus économe en énergie, nous rapprochant ainsi d'une IA puissante capable de fonctionner sur des appareils du quotidien sans vider la batterie.
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.