Accelerating Vision Transformers on Brain Processing Unit
Cet article propose une nouvelle méthode pour accélérer les Vision Transformers sur les unités de traitement cérébral (BPU) optimisées pour les CNN en restructurant le modèle afin de remplacer les couches linéaires par des opérateurs convolutionnels, permettant ainsi l'héritage des poids sans réentraînement tout en atteignant des accélérations d'inférence significatives avec une perte de précision minimale.
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 avez un ouvrier d'usine spécialisé et super efficace appelé la BPU (Unité de Traitement Cérébral). Cet ouvrier est un maître de l'assemblage de briques de Lego 4D (qui représentent les données d'image standard : hauteur, largeur, canaux de couleur et lots). Dans le monde de l'intelligence artificielle, cet ouvrier est l'expert incontournable pour construire des CNN (Réseaux de Neurones Convolutifs), qui sont les traditionnels « poseurs de briques » de la vision par ordinateur.
Cependant, un nouveau type d'architecte révolutionnaire, le Vision Transformer (ViT), est arrivé. Au lieu de construire avec des briques de Lego 4D, le ViT travaille avec des empilements de papier 3D (des séquences de données). Il est incroyablement intelligent et produit souvent de meilleurs résultats, mais il parle une langue différente. Lorsque vous essayez d'embaucher l'ouvrier d'usine BPU pour construire un ViT, celui-ci est confus. L'ouvrier est conçu pour empiler des briques, pas pour trier des piles de papier. En conséquence, le ViT doit être construit par un ouvrier beaucoup plus lent et polyvalent (le CPU), laissant la BPU, pourtant super rapide, inactive.
La solution du Papier : l'astuce du « Changement de Forme »
Les auteurs de ce document, Jinchi Tang et Yan Guo, ont trouvé un contournement ingénieux. Ils n'ont pas essayé d'apprendre à la BPU à lire des piles de papier (ce qui serait difficile et nécessiterait de réentraîner tout le système). À la place, ils ont réorganisé les piles de papier pour qu'elles ressemblent à des briques de Lego.
Voici comment ils ont procédé, en utilisant des analogies simples :
Le problème de la Couche Linéaire : Dans un ViT standard, le cerveau utilise des « Couches Linéaires » pour traiter l'information. Voyez cela comme un traducteur qui lit une liste de mots et produit une nouvelle liste. La BPU ne sait pas lire des listes ; elle ne comprend que les grilles 4D.
- La correction : Les auteurs ont pris le « traducteur » et ont remodelé ses instructions pour qu'elles ressemblent à une brique de Lego 1x1. Mathématiquement, cela fait exactement le même travail, mais cela s'insère parfaitement dans l'usine de la BPU. C'est comme prendre une carte plate et la rouler en cylindre juste pour qu'elle rentre dans un tube spécifique, sans changer le contenu de la carte.
Le problème de la Normalisation de Couche : Le ViT utilise également une étape appelée « Normalisation de Couche » pour équilibrer ses données (comme un thermostat qui maintient une pièce à la bonne température). La BPU n'a pas de thermostat intégré.
- La correction : Les auteurs ont construit un « thermostat » à partir des briques de Lego existantes de la BPU. Ils ont créé une chaîne spéciale de minuscules briques (convolutions 1x1) qui calcule la moyenne et la variance, imitant ainsi le thermostat en utilisant uniquement les outils dont la BPU dispose déjà.
La magie du « Sans Réentraînement »
Habituellement, si vous changez le plan d'un bâtiment, vous devez le démolir et le reconstruire de zéro. Mais parce que les auteurs ont été si méticuleux pour que leurs « briques de Lego » soient mathématiquement identiques aux « piles de papier » originales, les plans originaux (poids) fonctionnent parfaitement.
Ils n'ont pas eu besoin de réentraîner le modèle ou de lui apprendre de nouvelles choses. Ils ont simplement pris le modèle « DeiT » pré-entraîné (une version populaire et efficace du ViT), ont appliqué leur astuce de changement de forme, et l'ont remis à la BPU. La BPU a immédiatement reconnu le nouveau format et a commencé à travailler à pleine vitesse.
Les Résultats : Vitesse vs Précision
L'équipe a testé cela sur deux tâches différentes : la reconnaissance de milliers d'objets (ImageNet) et le tri de fleurs.
- Le compromis : Lorsque vous convertissez un modèle pour qu'il fonctionne sur ce matériel spécialisé, vous perdez généralement un peu de précision (comme passer d'une photo haute définition à un JPEG légèrement compressé).
- Sur le grand test ImageNet, le modèle DeiT-Base n'a perdu que 1,4 % de précision (passant de 81,8 % à 80,4 %).
- Sur le test des fleurs, la baisse était encore plus faible, seulement 0,5 %.
- La récompense : En échange de cette infime perte de précision, le modèle est devenu beaucoup plus rapide.
- Le plus grand modèle (DeiT-Base) a tourné 3,8 fois plus vite sur la BPU qu'il ne le faisait sur le CPU standard.
- Les modèles plus petits ont également vu leurs vitesses augmenter, allant de 1,3x à 2,1x.
Une découverte amusante
Pendant leurs tests, les auteurs ont remarqué quelque chose d'intéressant. Parfois, les étiquettes officielles sur les images de test étaient erronées (par exemple, une image de « lion » était étiquetée « singe »). Le modèle DeiT original identifiait correctement le lion, mais le système marquait cela comme une erreur à cause de la mauvaise étiquette. Le nouveau modèle rapide des auteurs identifiait également correctement le lion. Cela suggère que le modèle est en fait encore plus intelligent que les scores officiels ne le suggèrent, car il peut voir à travers les « fautes de frappe » dans les données de test.
En résumé
Ce document est la première fois que quelqu'un réussit à prendre un Vision Transformer (l'architecte des « piles de papier ») et à le faire fonctionner sur une unité de traitement cérébral spécialisée (l'usine de « Lego ») sans avoir à reconstruire l'architecte de zéro. En remodelant habilement les mathématiques pour qu'elles s'adaptent au matériel, ils ont obtenu un gain de vitesse de 3,8x avec presque aucune perte d'intelligence, prouvant que ces modèles d'IA avancés peuvent enfin fonctionner efficacement sur des puces embarquées spécialisées.
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.