


Nouvelle méthode de quantification basée sur la réorganisation RPTQ : réalisation d'une quantification 3 bits de grands modèles de langage
Les grands modèles linguistiques (LLM) fonctionnent bien sur une variété de tâches, mais présentent des défis de déploiement en raison de la taille de leur modèle.
Dans cet article, des chercheurs de Houmo Intelligence, Tencent AI Lab, de l'Université des sciences et technologies de Huazhong, de l'Université de Pékin et de l'Institut de technologie de l'Illinois ont découvert que le principal défi dans la quantification des grands modèles de langage vient des différentes plages d'activation entre les canaux. , Et pas seulement un problème aberrant.
L'auteur propose une nouvelle méthode de quantification basée sur le reclassement, RPTQ, qui résout le problème de la quantification des activations de grands modèles de langage. RPTQ réduit l'impact des différences à l'échelle des canaux en réorganisant les canaux lors de l'activation, puis en les regroupant pour la quantification.
De plus, les auteurs réduisent les frais de stockage et de calcul en évitant la réorganisation explicite. Ce travail est le premier à pousser la quantification d’activation des modèles LLM à 3 bits. La quantification 3 bits des valeurs d'activation peut également être utilisée avec la quantification 3 bits des poids, ce qui réduit considérablement la surcharge des grands modèles vocaux.
Adresse papier : https://arxiv.org/abs/2304.01089
Adresse open source : https://github.com/hahnyuan/RPTQ4LLM
Les modèles de langage à grande échelle (LLM) ont démontré d'excellentes performances sur diverses tâches, mais leur déploiement est confronté à des défis en raison de leur taille énorme. Par exemple, un modèle 66B contient 66 milliards de paramètres et nécessite beaucoup de mémoire pour être stocké. De plus, à mesure que la longueur de la séquence et la taille du lot augmentent, le problème de consommation de mémoire devient plus grave, car l'activation consomme également une grande quantité de mémoire, comme le cache de clés et de valeurs (Cache de clés/valeurs) dans Auto-attention. Cependant, un seul GPU ou serveur ne dispose pas d’une capacité de mémoire suffisante pour stocker un si grand nombre de poids de modèles et d’activations intermédiaires. Par conséquent, LLM doit être divisé en plusieurs morceaux et stocké sur différents appareils. Étant donné que les poids et les activations sont stockés sur différents appareils, les données doivent être transférées entre ces appareils pendant le calcul, ce qui entraîne une consommation de bande passante et d'énergie importante.
Pour surmonter les défis des LLM à l'échelle du modèle, la quantification du modèle est apparue comme une approche prometteuse. Cette technique consiste à quantifier les poids et les activations des LLM à l'aide d'entiers de faible taille, réduisant ainsi considérablement le coût de stockage et d'exécution de ces modèles. Plus précisément, la quantification permet de réduire les besoins en mémoire pour conserver les tenseurs et accélère les opérations gourmandes en calcul telles que les multiplications matricielles et les couches linéaires. En quantifiant les poids et les activations, les frais de stockage et de communication sont réduits, et l'efficacité et la vitesse d'inférence sont améliorées.
Figure 1 Répartition numérique des différentes chaînes. Chaque point représente une valeur (maximale, minimale) dans un canal d'activation.
Récemment, GPTQ a réussi à quantifier les poids des LLM en 4 bits ou 3 bits en utilisant PTQ. Cependant, quantifier l’activation dans les LLM reste une tâche difficile.
Deux observations peuvent être faites à partir de la figure 1 :
1) Certains canaux présentent des valeurs aberrantes importantes avec des valeurs maximales ou minimales des centaines de fois supérieures à celles d'autres canaux. Des études antérieures ont également découvert ce problème et proposé des traitements spéciaux pour les valeurs aberrantes.
2) Différents canaux présentent des différences significatives dans les plages numériques. L'utilisation des mêmes paramètres de quantification pour quantifier différents canaux peut entraîner des erreurs de quantification importantes. Même si deux canaux ont la même valeur absolue de valeurs aberrantes, ils peuvent présenter de grandes variations dans la plage numérique.
Les techniques de quantification par tenseur qui quantifient l'ensemble du tenseur en utilisant les mêmes paramètres de quantification peuvent être moins efficaces. La raison en est que définir la plage de quantification pour couvrir une large plage de valeurs peut entraîner des erreurs de quantification importantes pour les canaux avec des valeurs plus petites, tandis que la définir pour couvrir une petite plage de valeurs peut entraîner une troncature significative des valeurs aberrantes et des résultats. dans Erreur de quantification significative. Par exemple, un canal peut avoir une plage de valeurs comprise entre -100 et -50, tandis qu'un autre canal peut avoir une plage de valeurs comprise entre 80 et 100. Essayer de couvrir leur plage en quantifiant la plage de - 100 à 100 entraînera des erreurs de quantification importantes pour les deux canaux. Il s’agit d’un défi qui n’a pas été abordé efficacement dans les recherches précédentes.
Figure 2 Comparaison des différentes méthodes pour résoudre le problème de quantification d'activation.
Pour résoudre le problème des différences de canaux lors de l'activation, l'auteur propose une nouvelle méthode de quantification post-entraînement basée sur la réorganisation, RPTQ.
Comme le montre la figure 2, cette méthode regroupe les canaux avec des plages numériques similaires, puis quantifie les valeurs de chaque cluster en utilisant les mêmes paramètres de quantification. Pour mettre en œuvre la méthode de quantification basée sur le reclassement, les auteurs ont d’abord utilisé un ensemble de données d’étalonnage comme entrée d’inférence, à partir duquel les valeurs maximales et minimales de chaque canal d’activation ont été dérivées.
Ensuite, ils ont utilisé l'algorithme KMeans pour diviser différents canaux en g clusters, en fonction des points formés par les valeurs maximales et minimales de chaque canal. Une fois les clusters établis, ils effectuent une réorganisation des canaux pour placer les canaux du même cluster à proximité. De cette façon, les canaux avec des maxima et des minima similaires sont regroupés et partagent un ensemble commun de paramètres de quantification. Après le processus de réorganisation, les auteurs ont quantifié l’activation au sein de chaque cluster. Cette méthode calcule les paramètres de quantification (facteur d'échelle s et point zéro z) séparément pour chaque cluster, garantissant que ces paramètres sont spécifiques au canal correspondant.
En fin de compte, cette méthode garantit que la quantification de chaque cluster est optimisée, réduisant ainsi les erreurs de quantification.
Figure 3 : Diagramme de défaillance du processus d'inférence d'une couche de transformateur quantifiée avec des poids et des activations réorganisés. Les indices de réarrangement sont représentés par les symboles R1 à R5.
Le réarrangement explicite est une opération d'exécution de réorganisation des canaux lors d'une activation, qui nécessite de déplacer physiquement les données des différents canaux d'un emplacement mémoire à un autre, donc pour les grands modèles avec un grand nombre de canaux, le réarrangement Le processus peut prendre beaucoup de temps. De plus, le stockage des tenseurs d'activation source et cible augmente la surcharge de mémoire. Par conséquent, les auteurs proposent des stratégies pour éviter la réorganisation explicite, réduisant ainsi la charge de calcul et améliorant l’efficacité de l’inférence.
Comme le montre la figure 3, l'auteur réorganise les poids des couches linéaires afin qu'elles puissent directement produire des activations dans l'ordre trié. De plus, les auteurs ont modifié la méthode de LayerNorm pour produire directement des activations réorganisées, éliminant ainsi le besoin d'ajustements explicites des canaux lors de l'inférence.
Les auteurs ont évalué les performances de l'OPT sous trois configurations de largeur de bits différentes : W4A16, W4A8 et W4A4. En outre, l'auteur a également développé un nouveau schéma de quantification, W4A4KV, W4A3KV et W3A3KV, qui quantifie uniquement la consommation de mémoire principale - cache de clés et cache de valeurs (Cache clé/valeur). Sur la base du tableau, les observations suivantes peuvent être faites : En général, à mesure que la largeur de bit de quantification d'activation diminue, les performances du modèle diminuent. Mais dans la plupart des cas, cette dégradation n’est pas significative. Pour certaines tâches, les performances ont chuté de moins de 1 %, voire se sont améliorées.
La surcharge de mémoire de LLM provient de trois aspects : Premièrement, le stockage des poids dans la mémoire de l'appareil peut être considérablement réduit grâce à la quantification. Deuxièmement, les activations temporaires générées lors de l'exécution du réseau nécessitent l'allocation de la mémoire de l'appareil. Ces activations temporaires peuvent être libérées après utilisation et n'ont donc pas d'impact significatif sur l'utilisation globale de la mémoire. Enfin, le cache clé/valeur est nécessaire pour prédire les mots suivants. Lorsque la taille du lot et la longueur de la séquence sont importantes, le cache de clés et de valeurs occupe la majeure partie de la mémoire.
Le tableau montre l'utilisation de la mémoire sous différents paramètres. On peut constater que l'activation de bits inférieurs peut réduire considérablement l'utilisation de la mémoire, en particulier lorsque la taille du lot et la longueur de la séquence sont importantes. Plus précisément, lorsque la taille du lot est de 64 et la longueur de la séquence est de 8 192, la configuration W4A4 sous OPT-66b économise plus de 900 Go de mémoire par rapport à la configuration W4A16. Par conséquent, l’utilisation de RPTQ pour quantifier les activations peut réduire considérablement la pression de la mémoire dans les tâches de texte longues ou les scénarios à volume élevé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Sujets chauds

Imaginez un modèle d'intelligence artificielle qui non seulement a la capacité de surpasser l'informatique traditionnelle, mais qui permet également d'obtenir des performances plus efficaces à moindre coût. Ce n'est pas de la science-fiction, DeepSeek-V2[1], le modèle MoE open source le plus puissant au monde est ici. DeepSeek-V2 est un puissant mélange de modèle de langage d'experts (MoE) présentant les caractéristiques d'une formation économique et d'une inférence efficace. Il est constitué de 236B paramètres, dont 21B servent à activer chaque marqueur. Par rapport à DeepSeek67B, DeepSeek-V2 offre des performances plus élevées, tout en économisant 42,5 % des coûts de formation, en réduisant le cache KV de 93,3 % et en augmentant le débit de génération maximal à 5,76 fois. DeepSeek est une entreprise explorant l'intelligence artificielle générale

Plus tôt ce mois-ci, des chercheurs du MIT et d'autres institutions ont proposé une alternative très prometteuse au MLP – KAN. KAN surpasse MLP en termes de précision et d’interprétabilité. Et il peut surpasser le MLP fonctionnant avec un plus grand nombre de paramètres avec un très petit nombre de paramètres. Par exemple, les auteurs ont déclaré avoir utilisé KAN pour reproduire les résultats de DeepMind avec un réseau plus petit et un degré d'automatisation plus élevé. Plus précisément, le MLP de DeepMind compte environ 300 000 paramètres, tandis que le KAN n'en compte qu'environ 200. KAN a une base mathématique solide comme MLP est basé sur le théorème d'approximation universelle, tandis que KAN est basé sur le théorème de représentation de Kolmogorov-Arnold. Comme le montre la figure ci-dessous, KAN a

Boston Dynamics Atlas entre officiellement dans l’ère des robots électriques ! Hier, l'Atlas hydraulique s'est retiré "en larmes" de la scène de l'histoire. Aujourd'hui, Boston Dynamics a annoncé que l'Atlas électrique était au travail. Il semble que dans le domaine des robots humanoïdes commerciaux, Boston Dynamics soit déterminé à concurrencer Tesla. Après la sortie de la nouvelle vidéo, elle a déjà été visionnée par plus d’un million de personnes en seulement dix heures. Les personnes âgées partent et de nouveaux rôles apparaissent. C'est une nécessité historique. Il ne fait aucun doute que cette année est l’année explosive des robots humanoïdes. Les internautes ont commenté : Les progrès des robots ont fait ressembler la cérémonie d'ouverture de cette année à des êtres humains, et le degré de liberté est bien plus grand que celui des humains. Mais n'est-ce vraiment pas un film d'horreur ? Au début de la vidéo, Atlas est allongé calmement sur le sol, apparemment sur le dos. Ce qui suit est à couper le souffle

Les performances de JAX, promu par Google, ont dépassé celles de Pytorch et TensorFlow lors de récents tests de référence, se classant au premier rang sur 7 indicateurs. Et le test n’a pas été fait sur le TPU présentant les meilleures performances JAX. Bien que parmi les développeurs, Pytorch soit toujours plus populaire que Tensorflow. Mais à l’avenir, des modèles plus volumineux seront peut-être formés et exécutés sur la base de la plate-forme JAX. Modèles Récemment, l'équipe Keras a comparé trois backends (TensorFlow, JAX, PyTorch) avec l'implémentation native de PyTorch et Keras2 avec TensorFlow. Premièrement, ils sélectionnent un ensemble de

L’IA change effectivement les mathématiques. Récemment, Tao Zhexuan, qui a prêté une attention particulière à cette question, a transmis le dernier numéro du « Bulletin de l'American Mathematical Society » (Bulletin de l'American Mathematical Society). En se concentrant sur le thème « Les machines changeront-elles les mathématiques ? », de nombreux mathématiciens ont exprimé leurs opinions. L'ensemble du processus a été plein d'étincelles, intense et passionnant. L'auteur dispose d'une équipe solide, comprenant Akshay Venkatesh, lauréat de la médaille Fields, le mathématicien chinois Zheng Lejun, l'informaticien de l'Université de New York Ernest Davis et de nombreux autres universitaires bien connus du secteur. Le monde de l’IA a radicalement changé. Vous savez, bon nombre de ces articles ont été soumis il y a un an.

La dernière vidéo du robot Optimus de Tesla est sortie, et il peut déjà fonctionner en usine. À vitesse normale, il trie les batteries (les batteries 4680 de Tesla) comme ceci : Le responsable a également publié à quoi cela ressemble à une vitesse 20 fois supérieure - sur un petit "poste de travail", en sélectionnant et en sélectionnant et en sélectionnant : Cette fois, il est publié L'un des points forts de la vidéo est qu'Optimus réalise ce travail en usine, de manière totalement autonome, sans intervention humaine tout au long du processus. Et du point de vue d'Optimus, il peut également récupérer et placer la batterie tordue, en se concentrant sur la correction automatique des erreurs : concernant la main d'Optimus, le scientifique de NVIDIA Jim Fan a donné une évaluation élevée : la main d'Optimus est l'un des robots à cinq doigts du monde. le plus adroit. Ses mains ne sont pas seulement tactiles

La détection de cibles est un problème relativement mature dans les systèmes de conduite autonome, parmi lesquels la détection des piétons est l'un des premiers algorithmes à être déployés. Des recherches très complètes ont été menées dans la plupart des articles. Cependant, la perception de la distance à l’aide de caméras fisheye pour une vue panoramique est relativement moins étudiée. En raison de la distorsion radiale importante, la représentation standard du cadre de délimitation est difficile à mettre en œuvre dans les caméras fisheye. Pour alléger la description ci-dessus, nous explorons les conceptions étendues de boîtes englobantes, d'ellipses et de polygones généraux dans des représentations polaires/angulaires et définissons une métrique de segmentation d'instance mIOU pour analyser ces représentations. Le modèle fisheyeDetNet proposé avec une forme polygonale surpasse les autres modèles et atteint simultanément 49,5 % de mAP sur l'ensemble de données de la caméra fisheye Valeo pour la conduite autonome.

Le FP8 et la précision de quantification inférieure en virgule flottante ne sont plus le « brevet » du H100 ! Lao Huang voulait que tout le monde utilise INT8/INT4, et l'équipe Microsoft DeepSpeed a commencé à exécuter FP6 sur A100 sans le soutien officiel de NVIDIA. Les résultats des tests montrent que la quantification FP6 de la nouvelle méthode TC-FPx sur A100 est proche ou parfois plus rapide que celle de INT4, et a une précision supérieure à celle de cette dernière. En plus de cela, il existe également une prise en charge de bout en bout des grands modèles, qui ont été open source et intégrés dans des cadres d'inférence d'apprentissage profond tels que DeepSpeed. Ce résultat a également un effet immédiat sur l'accélération des grands modèles : dans ce cadre, en utilisant une seule carte pour exécuter Llama, le débit est 2,65 fois supérieur à celui des cartes doubles. un
