Investigadores de Princeton presentan MeZO un optimizador de orden cero eficiente en memoria que puede ajustar modelos de lenguaje grandes (LLMs).
Investigadores de Princeton presentan MeZO, un optimizador eficiente en memoria para ajustar LLMs grandes.
Los Modelos de Lenguaje Grandes están avanzando rápidamente con el enorme éxito de la Inteligencia Artificial Generativa en los últimos meses. Estos modelos están contribuyendo a transformaciones económicas y sociales notables, el mejor ejemplo de los cuales es el conocido ChatGPT desarrollado por OpenAI, que ha tenido millones de usuarios desde su lanzamiento, con el número aumentando de manera exponencial, si no más. Este chatbot, basado en Procesamiento del Lenguaje Natural (NLP) y Comprensión del Lenguaje Natural (NLU), permite a los usuarios generar texto significativo como los humanos. Responde de manera significativa a preguntas, resume párrafos largos, completa códigos y correos electrónicos, etc. Otros MLL, como PaLM, Chinchilla, BERT, etc., también han mostrado grandes desempeños en el campo de la IA.
Ajustar modelos de lenguaje pre-entrenados ha sido un enfoque popular para muchas tareas relacionadas con el lenguaje. El ajuste fino permite que estos modelos se adapten a dominios especializados, incorporen instrucciones humanas y se ajusten a preferencias individuales. Básicamente, ajusta los parámetros de un MLL ya entrenado utilizando un conjunto de datos más pequeño y específico del dominio. A medida que los modelos de lenguaje aumentan en escala con más parámetros, el ajuste fino se vuelve computacionalmente exigente e intensivo en memoria para el proceso de cálculo de gradientes durante la retropropagación. El uso de memoria es significativamente mayor que el necesario para la inferencia debido a la participación de la caché de activaciones, gradientes y almacenamiento del historial de gradientes.
Recientemente, un equipo de investigadores de la Universidad de Princeton ha presentado una solución para el problema de memoria. Llamado MeZO, un optimizador de orden cero eficiente en memoria, es una adaptación del método ZO-SGD tradicional que estima gradientes utilizando solo diferencias en los valores de pérdida y opera en el lugar, lo que permite ajustar finamente los modelos de lenguaje con la misma huella de memoria que la inferencia. El equipo se ha centrado en enfoques de orden cero en MeZO, ya que los métodos ZO pueden estimar gradientes utilizando solo dos pasadas hacia adelante, lo que los hace eficientes en memoria.
El algoritmo MeZO ha sido diseñado especialmente para optimizar Modelos de Lenguaje Grandes con miles de millones de parámetros. Algunas de las principales contribuciones mencionadas por el equipo son:
- 7 Proyectos para Principiantes para Empezar con ChatGPT
- Identificando imágenes generadas por IA con SynthID
- Conoce a SelFee Un LLM iterativo de auto-revisión potenciado por la...
- MeZO ha sido desarrollado mediante la modificación del método ZO-SGD y algunas variaciones para ejecutarse en el lugar en modelos de tamaño arbitrario con apenas sobrecarga de memoria.
- Se ha demostrado que MeZO es compatible con PEFT y ajustes exhaustivos de parámetros, como LoRA y ajuste de prefijo.
- MeZO puede mejorar objetivos no diferenciables como precisión o puntuación F1 mientras utiliza la misma cantidad de memoria que la inferencia.
- Un entrenamiento previo adecuado asegura que la tasa de optimización por paso de MeZO y la tasa de convergencia global dependan de un número de condición específico del paisaje, es decir, el rango local efectivo en contraposición a un gran número de parámetros, lo cual contrasta con los límites inferiores ZO anteriores que implican que la tasa de convergencia puede ser lenta según el número de parámetros.
- Los experimentos sugirieron que en pruebas en varios tipos de modelos como LM enmascarado y LM autoregresivo, el modelo escala desde 350M hasta 66B, y tareas secundarias como clasificación, opción múltiple y generación.
- MeZO supera a la prueba sin entrenamiento, ICL y prueba lineal en experimentos e incluso tiene un desempeño mejor o similar al ajuste fino en 7 de las 11 pruebas con OPT-13B, aunque consume aproximadamente un 12% menos de memoria que RoBERTa-large o ajuste fino normal, respectivamente.
Al evaluarlo, MeZO pudo entrenar un modelo de 30 mil millones de parámetros utilizando una sola GPU Nvidia A100 80GB, mientras que la retropropagación solo puede entrenar un modelo de 2.7 mil millones de parámetros en las mismas restricciones de memoria. En conclusión, MeZO es un optimizador de orden cero eficiente en memoria que puede ajustar finamente grandes modelos de lenguaje.