Connect with us

Inteligencia artificial

GLM-130B: Un modelo preentrenado bilingüe de código abierto

mm

El marco GLM-130B es un modelo de lenguaje grande preentrenado bilingüe con más de 130 mil millones de parámetros capaz de generar salidas de texto en inglés y chino. El marco GLM-130B es un intento de abrir el código fuente de un modelo de lenguaje a una escala de más de 100B parámetros, y discutir cómo los marcos de esta gran escala pueden ser preentrenados porque actualmente, entrenar un modelo de esta gran escala a menudo se ve afectado por problemas como la divergencia y los picos de pérdida.

En este artículo, hablaremos sobre el marco GLM-130B, que intenta idear un método para preentrenar modelos de lenguaje grandes con cientos de miles de millones de parámetros. Nos sumergiremos profundamente en el funcionamiento y la arquitectura del marco GLM-130B, junto con el proceso de entrenamiento y las opciones de diseño que no solo ayudan a aumentar la eficiencia, sino también la estabilidad. Los experimentos iniciales realizados para probar el funcionamiento del marco GLM-130B en una amplia gama de benchmarks en inglés resultaron en que el modelo GLM-130B superó al marco GPT-3 actual por un margen considerable. Así que comencemos y exploremos cómo el marco GLM-130B entrega resultados consistentes, precisos y estables.

Introducción al marco GLM-130B

Los modelos de lenguaje grande capaces de operar en configuraciones de pocos disparos y cero disparos, especialmente aquellos con más de 100 mil millones de parámetros, presentan leyes de escalado atractivas, de las cuales el marco GPT-3 es uno de los marcos con mejor rendimiento que entrega mejoras de rendimiento considerables sobre su predecesor, el marco BERT. Sin embargo, a pesar de la popularidad del marco GPT-3 y sus aplicaciones generalizadas, el proceso de entrenamiento y, en algunos sentidos, el marco GPT-3 en sí ha sido no transparente para el público. Además, enumerar empíricamente todos los diseños posibles para entrenar LLM con más de 100B parámetros es computacionalmente inasequible, lo que hace que sea aún más crítico idear un método de preentrenamiento para marcos LLM a gran escala.

El punto anterior hace que compartir el funcionamiento y el proceso de entrenamiento de marcos LLM de gran escala de alta calidad como GPT-3 sea de valor crítico, y con las preocupaciones éticas en mente, el marco GLM-130B es un intento de preentrenar un LLM preciso y de código abierto con más de 100B parámetros. Durante el curso de su intento, el equipo de desarrollo de GLM-130B observó que preentrenar un marco LLM a gran escala a menudo se acompaña de una amplia gama de desafíos técnicos y de ingeniería en términos de estabilidad de preentrenamiento, eficiencia y convergencia.

Para ser más específicos, el GLM-130B es un marco denso bidireccional y bilingüe que consiste en más de 130B parámetros, preentrenado en 400B tokens en un clúster de 96 nodos GPU NVIDIA DGX-A100 durante un período de casi dos meses. Además, en lugar de optar por la arquitectura GPT-style, el marco GLM-130B utiliza el algoritmo GLM o Modelo de Lenguaje General, un modelo de lenguaje basado en transformadores que busca aprovechar los objetivos de relleno de espacios en blanco autoregresivos y la ventaja de la atención bidireccional. La siguiente tabla compara el marco GLM-130B con otros modelos con más de 100B parámetros, incluyendo GPT, BLOOM-176B y OPT-175B.

Los conceptos de ingeniería y desarrollo involucrados en el marco GLM-130B superan casi todos los marcos LLM a gran escala, incluyendo GPT-3 y PaLM 540B con más de 500B parámetros en muchos casos y en una amplia gama de benchmarks. La siguiente figura compara el rendimiento del marco GLM-130B con modelos con más de 100B+ parámetros, y como se puede ver, el marco GLM-130B tiene significativamente menos toxicidad y sesgo de generación que sus contrapartes.

Finalmente, el GLM-130B ha sido diseñado para permitir que tantos desarrolladores como sea posible realicen estudios sobre marcos con más de 100B parámetros, y hay dos formas en que el marco GLM-130B logra esto. Primero, en lugar de utilizar más de 175B parámetros como BLOOM y OPT, el marco GLM-130B utiliza 130B parámetros, porque el tamaño del modelo admite interferencia incluso en un servidor A100 solo. En segundo lugar, los requisitos de GPU para ejecutar el marco GLM-130B son menores en comparación con otros marcos LLM, y el marco GLM-130B logra esto cuantizando el marco original en precisión INT4. La cuantización INT4 utilizada por el marco GLM-130B mejora el rendimiento mientras mantiene una degradación del rendimiento negligible.

GLM-130B: Arquitectura

El sesgo inductivo de un modelo de aprendizaje automático está descrito por su arquitectura, y no sorprende que los desarrolladores no puedan explorar varios diseños arquitectónicos para modelos de lenguaje grande dado el costo computacional y la viabilidad. Con eso dicho, veamos la arquitectura de GLM-130B.

Los marcos LLM a gran escala como PaLM, GPT y más tienen más de 100B parámetros, y están construidos sobre la arquitectura GPT-style convencional para modelado de lenguaje autoregresivo. Por otro lado, el marco GLM-130B explora la posibilidad de utilizar un modelo de lenguaje general bidireccional o GLM, un modelo de lenguaje basado en transformadores que busca aprovechar el relleno de espacios en blanco autoregresivo como objetivo de entrenamiento, como su base. Breve, para una secuencia de texto dada, el marco GLM muestra las span de texto que luego son reemplazadas con un solo token de máscara.

La atención bidireccional del Modelo de Lenguaje General sobre contextos no corruptos o no enmascarados es lo que separa el marco GLM-130B del enfoque GPT-style que utiliza un enfoque unidireccional. Además, para admitir tanto la generación como la comprensión de datos, el marco GLM combina dos estrategias de corrupción, cada una de las cuales está indicada con un token de máscara especial y único.

  • [MASK] : [MASK] es una estrategia de corrupción que utiliza espacios en blanco cortos en oraciones, cuyas longitudes suman un cierto porcentaje de la entrada.
  • [gMASK] : [gMASK] es una estrategia de corrupción que utiliza espacios en blanco de longitud aleatoria hacia el final de la oración con los contextos de prefijo.

El enfoque seguido por el marco GLM es lo que permite que el marco registre una puntuación de precisión de más del 80% en el modelado de lenguaje LAMBADA cero-disparos, y supera tanto al marco PaLM 540B como al marco GPT-3.

Normalización de capa

Uno de los principales desafíos que enfrentan los desarrolladores cuando entrenan un marco LLM es la inestabilidad del entrenamiento, y utilizar una LN (Normalización de capa) adecuada puede ayudar con el entrenamiento de los LLM. El marco GLM-130B utiliza un enfoque Post-LN gracias a su rendimiento en tareas downstream.

FFN y codificación posicional

Las redes neuronales feedforward o FFN y la codificación posicional son dos enfoques adoptados por el marco GLM-130B para introducir un rendimiento downstream de alta gama y estabilidad de entrenamiento.

Configuración de preentrenamiento

Los objetivos de preentrenamiento del marco GLM-130B no solo incluyen el aprendizaje multietapa para un pequeño número de tokens, sino que también incluyen el aprendizaje auto-supervisado GLM para el relleno autoregresivo de espacios en blanco, con la expectativa de que este enfoque ayudará al marco GLM-130B en tareas downstream. Con eso dicho, la configuración de preentrenamiento del marco GLM-130B se ve como la siguiente.

Relleno de espacios en blanco auto-supervisado

Como ya se mencionó, el marco GLM-130B utiliza dos estrategias de corrupción, a saber, [MASK] y [gMASK], y una de estas estrategias se aplica de forma independiente a cada secuencia de entrenamiento individual, una a la vez. Para rellenar los espacios en blanco, la estrategia [MASK] enmascara span consecutivos en el 30% de la secuencia de entrenamiento, donde las longitudes de los span suman hasta el 15% de la entrada, y sigue una distribución de Poisson. Para el 70% restante de la secuencia, el prefijo de cada secuencia se mantiene como contexto, y la estrategia [gMASK] ayuda a enmascarar el resto, y la longitud enmascarada se muestrea utilizando la distribución uniforme.

Preentrenamiento de instrucciones multietapa

Se ha indicado que seguir un enfoque de aprendizaje multietapa para preentrenar los modelos puede entregar mejores resultados que el ajuste fino, para mejorar las transferencias de tareas en un entorno de cero-disparos. Subsecuentemente, el marco GLM-130B propone utilizar una matriz de conjuntos de datos de instrucciones, incluyendo generación de lenguaje, comprensión y extracción de información durante el preentrenamiento.

En comparación con otros enfoques para la transferencia de tareas de cero-disparos que utilizan el ajuste fino multietapa, el enfoque de preentrenamiento de instrucciones multietapa seguido por el marco GLM-130B solo cuenta para el 5% de los tokens totales, y se establece durante la fase de preentrenamiento en un intento de evitar arruinar otras habilidades del marco LLM o, en otras palabras, generación libre incondicional.

Estrategia de paralelismo 3D

Hay dos prácticas de facto para entrenar modelos a gran escala con miles de millones de parámetros, el paralelismo del modelo tensorial y el paralelismo de datos. En un intento de minimizar la utilización de GPU y manejar las enormes necesidades de GPU, el marco GLM-130B implementa una estrategia de paralelismo 3D que combina la estrategia de paralelismo de modelo de tuberías con las estrategias de paralelismo de tensor y de datos.

GLM-130B: Estabilidad de entrenamiento

La estabilidad de entrenamiento es un factor importante al determinar la calidad de un LLM, y la estabilidad de entrenamiento se ve influenciada en gran medida dependiendo de la cantidad de tokens que pasa. Además, es vital establecer un equilibrio entre estabilidad y eficiencia con respecto a los formatos de punto flotante dado las restricciones de cómputo. Por ejemplo, los formatos de punto flotante de baja precisión mejoran la eficiencia de cómputo, pero a menudo resultan en colapsos de entrenamiento dado que son propensos a errores de desbordamiento y subdesbordamiento.

Precisión mixta

En un intento de mejorar la precisión de entrenamiento y reducir el uso de memoria, el marco GLM-130B sigue la práctica común de utilizar precisiones mixtas, es decir, FP16 para tanto adelante como hacia atrás, y FP32 para tanto pesos maestros como estados de optimizador. Al igual que otros marcos LLM populares, incluyendo BLOOM-176B y OPT-175B, la fase de entrenamiento del marco GLM-130B utilizando la estrategia de precisión mixta enfrenta picos de pérdida frecuentes, y la frecuencia de estos picos de pérdida tiende a aumentar a medida que el modelo continúa entrenando. Además, hay problemas importantes que los desarrolladores enfrentan al escalar los transformadores.

Primero, la escala de valor de la rama principal del transformador puede ser vasta en las capas más profundas al utilizar Pre-LN, y en el marco GLM-130B, se aborda utilizando un Pre-LN basado en DeepNorm, que garantiza que la escala de valor permanece acotada en todo momento. Segundo, a medida que el modelo se escala, las puntuaciones de atención crecen hasta un punto en el que exceden el rango de FP16.

Disminución del gradiente de la capa de incrustación o EGS

Los desarrolladores que trabajan en el marco GLM-130B identificaron que la norma del gradiente puede actuar como un indicador informativo para los colapsos de entrenamiento, y un colapso de entrenamiento generalmente se retrasa detrás de un pico en la norma del gradiente. La causa de estos picos es los gradientes anormales de la capa de incrustación, y los desarrolladores observaron que, en comparación con la norma del gradiente de otras capas, la norma del gradiente de las capas de incrustación es mayor en varias magnitudes, y también tiende a fluctuar dramáticamente durante el entrenamiento temprano del marco. Los modelos de visión también enfrentan este problema, y se maneja congelando la capa de proyección de parches. Sin embargo, el mismo enfoque no se puede aplicar a los LLM, ya que en los modelos de lenguaje, no se puede congelar las capas de proyección.

GLM-130B: Resultados y rendimiento

Para evaluar el rendimiento de GLM-130B en tareas en inglés, se implementan los mismos ajustes seguidos por marcos LLM comunes, incluyendo PaLM y GPT-3, y como GLM-130B es un marco bilingüe, también se evalúa en varios benchmarks chinos. El rendimiento del marco GLM-130B se medirá en múltiples benchmarks, incluyendo Modelado de lenguaje, MMLU o Comprensión multietapa masiva del lenguaje, BIG-Bench o Benchmark más allá del juego de imitación, y CLUE o Evaluación de comprensión del lenguaje chino. Así que comencemos.

Modelado de lenguaje

La prueba de modelado de lenguaje en el marco GLM-130B se realiza en dos conjuntos de datos: LAMBADA y Pile.

El conjunto de datos LAMBADA se utiliza para probar las capacidades de modelado de la última palabra de los LLM, y el marco GLM-130B logra una puntuación de precisión cero-disparos del 80,2 en un entorno bilingüe, y en el camino, establece un nuevo récord de benchmark en el conjunto de datos LAMBADA.

Por otro lado, Pile es un conjunto de pruebas que comprende una serie de benchmarks para modelos de lenguaje. En promedio, en comparación con GPT-3 y Jurassic-1, el marco GLM-130B entrega su mejor rendimiento en 18 conjuntos de pruebas compartidos en términos de BPBs ponderados. Los resultados demuestran las fuertes capacidades lingüísticas del marco GLM-130B, y los resultados se incluyen en la tabla a continuación.

MMLU o Comprensión multietapa masiva del lenguaje

MMLU o Comprensión multietapa masiva del lenguaje es un benchmark diverso que comprende más de 50 tareas de respuesta de opciones múltiples relacionadas con la inteligencia y el conocimiento humanos, que van desde niveles de escuela secundaria hasta niveles de expertos, y se lanza después de la extracción del conjunto de pruebas Pile, y por lo tanto, sirve como una prueba de benchmark ideal para evaluar las capacidades de aprendizaje de pocos disparos de un LLM.

Como se puede ver, en un entorno de pocos disparos (5-disparos), el rendimiento del marco GLM-130B se acerca al rendimiento del modelo GPT-3 después de ver cerca de 300B tokens. El rendimiento continúa mejorando a medida que el entrenamiento procede, y cuando el entrenamiento termina, el marco logra una puntuación de precisión del 44,8 después de ver un total de 400B tokens.

BIG-Bench o Benchmark más allá del juego de imitación

BIG-Bench o Benchmark más allá del juego de imitación pruebas desafiantes prueba la capacidad del modelo en conocimiento, razonamiento y sentido común. Como se demuestra en las siguientes figuras, en un entorno cero-disparos, el marco GLM-130B supera tanto al marco PaLM 540B como al marco GPT-3 175B, lo que puede deberse a MIP y la atención de contexto bidireccional para mejorar el rendimiento de GLM-130B en tareas no vistas en un entorno cero-disparos. Además, a medida que aumenta el número de disparos, el rendimiento del marco GLM-130B también mejora, superando consistentemente al marco GPT-3.

CLUE o Evaluación de comprensión del lenguaje chino

El rendimiento cero-disparos en chino del marco GLM-130B se evalúa en tareas de benchmark de NLP establecidas, incluyendo CLUE y FewCLUE, y se compara con 260B ERNIE Titan 3.0, el modelo de lenguaje chino más grande existente. Como se puede observar, el marco GLM-130B constantemente supera al marco 260B ERNIE Titan 3.0 en 12 tareas diferentes, y se desempeña casi 260% mejor que el marco ERNIE en dos conjuntos de datos de MRC abstractos.

Conclusión

En este artículo, hemos hablado sobre GLM-130B, un modelo de lenguaje grande preentrenado bilingüe que busca promover la investigación de LLM inclusiva. La arquitectura, la ingeniería y los esfuerzos técnicos apuntan a brindar a la comunidad de IA una mejor comprensión de la arquitectura de los marcos LLM, la eficiencia y la estabilidad de entrenamiento, los objetivos de preentrenamiento y la interferencia asequible.

Un ingeniero por profesión, un escritor por corazón. Kunal es un escritor técnico con un profundo amor y comprensión de la IA y el ML, dedicado a simplificar conceptos complejos en estos campos a través de su documentación atractiva e informativa.