La adición es todo lo que necesitas para modelos de lenguaje eficientes en energía.Addition is All You Need for Energy-efficient Language Models
Las grandes redes neuronales dedican la mayor parte de la computación a las multiplicaciones de tensores de punto flotante. En este trabajo, descubrimos que un multiplicador de punto flotante puede aproximarse con un sumador de enteros de alta precisión. Proponemos el algoritmo de multiplicación de complejidad lineal L-Mul que aproxima la multiplicación de números de punto flotante con operaciones de suma de enteros. El nuevo algoritmo requiere significativamente menos recursos computacionales que la multiplicación de punto flotante de 8 bits, pero logra una mayor precisión. En comparación con las multiplicaciones de punto flotante de 8 bits, el método propuesto alcanza una mayor precisión pero consume considerablemente menos recursos computacionales a nivel de bits. Dado que la multiplicación de números de punto flotante requiere considerablemente más energía en comparación con las operaciones de suma de enteros, la aplicación de la operación L-Mul en hardware de procesamiento de tensores puede potencialmente reducir el costo energético en un 95% en las multiplicaciones de tensores de punto flotante a nivel de elementos y en un 80% en los productos escalares. Calculamos la expectativa de error teórico de L-Mul, y evaluamos el algoritmo en una amplia gama de tareas textuales, visuales y simbólicas, incluyendo comprensión del lenguaje natural, razonamiento estructural, matemáticas y respuestas a preguntas de sentido común. Nuestros experimentos de análisis numérico concuerdan con la estimación teórica del error, lo que indica que L-Mul con una mantisa de 4 bits logra una precisión comparable a las multiplicaciones float8_e4m3, y L-Mul con una mantisa de 3 bits supera a float8_e5m2. Los resultados de evaluación en benchmarks populares muestran que aplicar directamente L-Mul al mecanismo de atención es casi sin pérdidas. Además, demostramos que reemplazar todas las multiplicaciones de punto flotante con L-Mul de 3 bits de mantisa en un modelo transformer logra una precisión equivalente a utilizar float8_e4m3 como precisión de acumulación tanto en el ajuste fino como en la inferencia.