ChatPaper.aiChatPaper

SliceGPT: Comprimir Modelos de Lenguaje Grandes Eliminando Filas y Columnas

SliceGPT: Compress Large Language Models by Deleting Rows and Columns

January 26, 2024
Autores: Saleh Ashkboos, Maximilian L. Croci, Marcelo Gennari do Nascimento, Torsten Hoefler, James Hensman
cs.AI

Resumen

Los modelos de lenguaje de gran escala se han convertido en la piedra angular del procesamiento del lenguaje natural, pero su uso conlleva costos significativos en términos de recursos de cómputo y memoria. La esparsificación ofrece una solución para aliviar estas limitaciones de recursos, y trabajos recientes han demostrado que los modelos entrenados pueden esparsificarse a posteriori. Las técnicas de esparsificación existentes enfrentan desafíos, ya que requieren estructuras de datos adicionales y ofrecen una aceleración limitada con el hardware actual. En este artículo presentamos SliceGPT, un nuevo esquema de esparsificación post-entrenamiento que reemplaza cada matriz de pesos con una matriz más pequeña (densa), reduciendo la dimensión de incrustación de la red. A través de una experimentación extensa, demostramos que SliceGPT puede eliminar hasta el 25% de los parámetros del modelo (incluyendo las incrustaciones) para los modelos LLAMA2-70B, OPT 66B y Phi-2, manteniendo un rendimiento en tareas de cero disparos del 99%, 99% y 90% del modelo denso, respectivamente. Nuestros modelos esparsificados se ejecutan en menos GPUs y son más rápidos sin necesidad de optimización adicional de código: en GPUs de consumo de 24GB reducimos el cómputo total para la inferencia en LLAMA2-70B al 64% del modelo denso; en GPUs A100 de 40GB lo reducimos al 66%. Ofrecemos una nueva perspectiva, la invariancia computacional en redes transformadoras, que posibilita SliceGPT y esperamos que inspire y habilite futuras vías para reducir las demandas de memoria y cómputo en modelos preentrenados. El código está disponible en: https://github.com/microsoft/TransformerCompression.
English
Large language models have become the cornerstone of natural language processing, but their use comes with substantial costs in terms of compute and memory resources. Sparsification provides a solution to alleviate these resource constraints, and recent works have shown that trained models can be sparsified post-hoc. Existing sparsification techniques face challenges as they need additional data structures and offer constrained speedup with current hardware. In this paper we present SliceGPT, a new post-training sparsification scheme which replaces each weight matrix with a smaller (dense) matrix, reducing the embedding dimension of the network. Through extensive experimentation, we show that SliceGPT can remove up to 25% of the model parameters (including embeddings) for LLAMA2-70B, OPT 66B and Phi-2 models while maintaining 99%, 99% and 90% zero-shot task performance of the dense model respectively. Our sliced models run on fewer GPUs and run faster without any additional code optimization: on 24GB consumer GPUs we reduce the total compute for inference on LLAMA2-70B to 64% of that of the dense model; on 40GB A100 GPUs we reduce it to 66%. We offer a new insight, computational invariance in transformer networks, which enables SliceGPT and we hope it will inspire and enable future avenues to reduce memory and computation demands for pre-trained models. Code is available at: https://github.com/microsoft/TransformerCompression
PDF746December 15, 2024