L'addition est tout ce dont vous avez besoin pour des modèles de langage écoénergétiques.
Addition is All You Need for Energy-efficient Language Models
October 1, 2024
Auteurs: Hongyin Luo, Wei Sun
cs.AI
Résumé
Les grands réseaux neuronaux consacrent la majeure partie de leurs calculs aux multiplications de tenseurs en virgule flottante. Dans ce travail, nous avons découvert qu'un multiplicateur en virgule flottante peut être approximé par un simple additionneur entier avec une grande précision. Nous proposons l'algorithme de multiplication à complexité linéaire L-Mul qui approxime la multiplication de nombres en virgule flottante avec des opérations d'addition entière. Le nouvel algorithme nécessite considérablement moins de ressources de calcul que la multiplication en virgule flottante sur 8 bits tout en atteignant une précision plus élevée. Comparé aux multiplications en virgule flottante sur 8 bits, la méthode proposée atteint une précision supérieure tout en consommant significativement moins de calcul au niveau des bits. Étant donné que la multiplication de nombres en virgule flottante nécessite une énergie nettement plus élevée que les opérations d'addition entière, l'application de l'opération L-Mul dans le matériel de traitement de tenseurs peut potentiellement réduire de 95 % le coût énergétique des multiplications de tenseurs en virgule flottante élément par élément et de 80 % le coût énergétique des produits scalaires. Nous avons calculé l'attente d'erreur théorique de L-Mul, et évalué l'algorithme sur une large gamme de tâches textuelles, visuelles et symboliques, y compris la compréhension du langage naturel, le raisonnement structurel, les mathématiques et la réponse à des questions de bon sens. Nos expériences d'analyse numérique confirment l'estimation d'erreur théorique, ce qui indique que L-Mul avec une mantisse sur 4 bits atteint une précision comparable aux multiplications float8_e4m3, et que L-Mul avec une mantisse sur 3 bits surpasse float8_e5m2. Les résultats d'évaluation sur des benchmarks populaires montrent que l'application directe de L-Mul au mécanisme d'attention est presque sans perte. Nous montrons en outre que le remplacement de toutes les multiplications en virgule flottante par L-Mul avec une mantisse sur 3 bits dans un modèle de transformateur atteint une précision équivalente à celle de l'utilisation de float8_e4m3 en tant que précision d'accumulation à la fois en affinage et en inférence.
English
Large neural networks spend most computation on floating point tensor
multiplications. In this work, we find that a floating point multiplier can be
approximated by one integer adder with high precision. We propose the
linear-complexity multiplication L-Mul algorithm that approximates floating
point number multiplication with integer addition operations. The new algorithm
costs significantly less computation resource than 8-bit floating point
multiplication but achieves higher precision. Compared to 8-bit floating point
multiplications, the proposed method achieves higher precision but consumes
significantly less bit-level computation. Since multiplying floating point
numbers requires substantially higher energy compared to integer addition
operations, applying the L-Mul operation in tensor processing hardware can
potentially reduce 95% energy cost by element-wise floating point tensor
multiplications and 80% energy cost of dot products. We calculated the
theoretical error expectation of L-Mul, and evaluated the algorithm on a wide
range of textual, visual, and symbolic tasks, including natural language
understanding, structural reasoning, mathematics, and commonsense question
answering. Our numerical analysis experiments agree with the theoretical error
estimation, which indicates that L-Mul with 4-bit mantissa achieves comparable
precision as float8_e4m3 multiplications, and L-Mul with 3-bit mantissa
outperforms float8_e5m2. Evaluation results on popular benchmarks show that
directly applying L-Mul to the attention mechanism is almost lossless. We
further show that replacing all floating point multiplications with 3-bit
mantissa L-Mul in a transformer model achieves equivalent precision as using
float8_e4m3 as accumulation precision in both fine-tuning and inference.Summary
AI-Generated Summary