ChatPaper.aiChatPaper

A Adição é Tudo o que Você Precisa para Modelos de Linguagem Eficientes em Energia.

Addition is All You Need for Energy-efficient Language Models

October 1, 2024
Autores: Hongyin Luo, Wei Sun
cs.AI

Resumo

Redes neurais grandes gastam a maior parte da computação em multiplicações de tensores de ponto flutuante. Neste trabalho, descobrimos que um multiplicador de ponto flutuante pode ser aproximado por um somador de inteiros com alta precisão. Propomos o algoritmo de multiplicação de complexidade linear L-Mul que aproxima a multiplicação de números de ponto flutuante com operações de adição de inteiros. O novo algoritmo consome significativamente menos recursos computacionais do que a multiplicação de ponto flutuante de 8 bits, mas alcança maior precisão. Comparado às multiplicações de ponto flutuante de 8 bits, o método proposto alcança maior precisão, mas consome significativamente menos computação em nível de bits. Como a multiplicação de números de ponto flutuante requer substancialmente mais energia em comparação com as operações de adição de inteiros, a aplicação da operação L-Mul no hardware de processamento de tensores pode potencialmente reduzir em 95% o custo energético das multiplicações de tensores de ponto flutuante por elemento e em 80% o custo energético de produtos escalares. Calculamos a expectativa teórica de erro de L-Mul e avaliamos o algoritmo em uma ampla gama de tarefas textuais, visuais e simbólicas, incluindo compreensão de linguagem natural, raciocínio estrutural, matemática e resposta a perguntas de senso comum. Nossos experimentos de análise numérica concordam com a estimativa teórica de erro, o que indica que L-Mul com mantissa de 4 bits alcança precisão comparável às multiplicações float8_e4m3, e L-Mul com mantissa de 3 bits supera o float8_e5m2. Os resultados de avaliação em benchmarks populares mostram que a aplicação direta de L-Mul ao mecanismo de atenção é quase sem perdas. Mostramos ainda que a substituição de todas as multiplicações de ponto flutuante por L-Mul com mantissa de 3 bits em um modelo transformer alcança precisão equivalente ao usar float8_e4m3 como precisão de acumulação tanto em ajuste fino quanto em inferência.
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

PDF15117November 16, 2024