talón Modelos de lenguajes grandes basados ​​en decodificadores: una guía completa - Unite.AI
Contáctanos

Inteligencia artificial

Modelos de lenguajes grandes basados ​​en decodificadores: una guía completa

mm
Actualizado on
Modelos de lenguajes grandes basados ​​en decodificadores: una guía completa

Modelos de lenguaje grande (LLM) han revolucionado el campo del procesamiento del lenguaje natural (PLN) al demostrar capacidades notables para generar texto similar a un humano, responder preguntas y ayudar con una amplia gama de tareas relacionadas con el lenguaje. En el centro de estos poderosos modelos se encuentra la arquitectura de transformador solo decodificador, una variante de la arquitectura del transformador original propuesta en el artículo fundamental "La atención es todo lo que necesitas”por Vaswani et al.

En esta guía completa, exploraremos el funcionamiento interno de los LLM basados ​​en decodificadores, profundizando en los componentes fundamentales, las innovaciones arquitectónicas y los detalles de implementación que han impulsado estos modelos a la vanguardia de la investigación y las aplicaciones de PNL.

La arquitectura del transformador: un repaso

Antes de profundizar en los detalles de los LLM basados ​​en decodificadores, es esencial revisar la arquitectura del transformador, la base sobre la que se construyen estos modelos. El transformador introdujo un enfoque novedoso para el modelado de secuencias, basándose únicamente en mecanismos de atención para capturar dependencias de largo alcance en los datos, sin la necesidad de capas recurrentes o convolucionales.

Arquitectura de transformadores

Arquitectura de transformadores

La arquitectura del transformador original consta de dos componentes principales: un codificador y un decodificador. El codificador procesa la secuencia de entrada y genera una representación contextualizada, que luego es consumida por el decodificador para producir la secuencia de salida. Esta arquitectura se diseñó inicialmente para tareas de traducción automática, donde el codificador procesa la oración de entrada en el idioma de origen y el decodificador genera la oración correspondiente en el idioma de destino.

Autoatención: la clave del éxito de Transformer

En el corazón de la transformador radica el mecanismo de autoatención, una técnica poderosa que permite al modelo sopesar y agregar información desde diferentes posiciones en la secuencia de entrada. A diferencia de los modelos de secuencia tradicionales, que procesan tokens de entrada de forma secuencial, la autoatención permite al modelo capturar dependencias entre cualquier par de tokens, independientemente de su posición en la secuencia.

Atención multiconsulta

Atención multiconsulta

La operación de autoatención se puede dividir en tres pasos principales:

  1. Proyecciones de consultas, claves y valores: La secuencia de entrada se proyecta en tres representaciones separadas: consultas (q), claves (K), y valores (V). Estas proyecciones se obtienen multiplicando la entrada con matrices de peso aprendidas.
  2. Cálculo de la puntuación de atención: Para cada posición en la secuencia de entrada, las puntuaciones de atención se calculan tomando el producto escalar entre el vector de consulta correspondiente y todos los vectores clave. Estas puntuaciones representan la relevancia de cada puesto para el puesto actual que se está procesando.
  3. Suma ponderada de valores: Las puntuaciones de atención se normalizan mediante una función softmax y las ponderaciones de atención resultantes se utilizan para calcular una suma ponderada de los vectores de valores, lo que produce la representación de salida para la posición actual.

La atención de múltiples cabezas, una variante del mecanismo de autoatención, permite que el modelo capture diferentes tipos de relaciones calculando puntuaciones de atención en múltiples "¡Aviso!”en paralelo, cada uno con su propio conjunto de proyecciones de consulta, clave y valor.

Variantes y configuraciones arquitectónicas

Si bien los principios básicos de los LLM basados ​​en decodificadores siguen siendo consistentes, los investigadores han explorado varias variantes y configuraciones arquitectónicas para mejorar el rendimiento, la eficiencia y las capacidades de generalización. En esta sección profundizaremos en las diferentes opciones arquitectónicas y sus implicaciones.

Tipos de arquitectura

Los LLM basados ​​en decodificadores se pueden clasificar en términos generales en tres tipos principales: codificador-decodificador, decodificador causal y decodificador de prefijo. Cada tipo de arquitectura exhibe distintos patrones de atención.

Arquitectura codificador-decodificador

Basada en el modelo Vanilla Transformer, la arquitectura codificador-decodificador consta de dos pilas: un codificador y un decodificador. El codificador utiliza capas de autoatención de múltiples cabezales apiladas para codificar la secuencia de entrada y generar representaciones latentes. Luego, el decodificador realiza atención cruzada sobre estas representaciones para generar la secuencia objetivo. Si bien son eficaces en diversas tareas de PNL, pocos LLM, como Flan-T5, adopta esta arquitectura.

Arquitectura del decodificador causal

La arquitectura del decodificador causal incorpora una máscara de atención unidireccional, lo que permite que cada token de entrada atienda solo a los tokens pasados ​​y a sí mismo. Tanto los tokens de entrada como los de salida se procesan dentro del mismo decodificador. Modelos notables como GPT-1, GPT-2 y GPT-3 se basan en esta arquitectura, y GPT-3 muestra notables capacidades de aprendizaje en contexto. Muchos LLM, incluidos OPT, BLOOM y Gopher, han adoptado ampliamente decodificadores causales.

Arquitectura del decodificador de prefijo

También conocida como decodificador no causal, la arquitectura del decodificador de prefijo modifica el mecanismo de enmascaramiento de los decodificadores causales para permitir la atención bidireccional sobre los tokens de prefijo y la atención unidireccional sobre los tokens generados. Al igual que la arquitectura codificador-decodificador, los decodificadores de prefijos pueden codificar la secuencia de prefijos de forma bidireccional y predecir tokens de salida de forma autorregresiva utilizando parámetros compartidos. Los LLM basados ​​en decodificadores de prefijos incluyen GLM130B y U-PaLM.

Los tres tipos de arquitectura se pueden ampliar utilizando el mezcla de expertos (MoE) técnica de escalado, que activa escasamente un subconjunto de pesos de red neuronal para cada entrada. Este enfoque se ha empleado en modelos como Switch Transformer y GLaM, y el aumento del número de expertos o del tamaño total de los parámetros muestra mejoras significativas en el rendimiento.

Transformador solo decodificador: adoptando la naturaleza autorregresiva

Si bien la arquitectura transformadora original fue diseñada para tareas de secuencia a secuencia como la traducción automática, muchas tareas de PNL, como el modelado de lenguaje y la generación de texto, pueden enmarcarse como problemas autorregresivos, donde el modelo genera un token a la vez, condicionado a la tokens generados previamente.

Ingrese el transformador solo decodificador, una variante simplificada de la arquitectura del transformador que conserva solo el componente decodificador. Esta arquitectura es particularmente adecuada para tareas autorregresivas, ya que genera tokens de salida uno por uno, aprovechando los tokens generados previamente como contexto de entrada.

La diferencia clave entre el transformador solo decodificador y el decodificador transformador original radica en el mecanismo de autoatención. En la configuración de solo decodificador, la operación de autoatención se modifica para evitar que el modelo preste atención a tokens futuros, una propiedad conocida como causalidad. Esto se logra mediante una técnica llamada "autoatención enmascarada", donde las puntuaciones de atención correspondientes a posiciones futuras se establecen en infinito negativo, enmascarándolas efectivamente durante el paso de normalización de softmax.

Componentes arquitectónicos de LLM basados ​​en decodificadores

Si bien los principios básicos de la autoatención y la autoatención enmascarada siguen siendo los mismos, los LLM modernos basados ​​en decodificadores han introducido varias innovaciones arquitectónicas para mejorar el rendimiento, la eficiencia y las capacidades de generalización. Exploremos algunos de los componentes y técnicas clave empleados en los LLM de última generación.

Representación de entrada

Antes de procesar la secuencia de entrada, los LLM basados ​​en decodificadores emplean técnicas de tokenización e incrustación para convertir el texto sin formato en una representación numérica adecuada para el modelo.

incrustación de vectores

incrustación de vectores

Tokenization: El proceso de tokenización convierte el texto de entrada en una secuencia de tokens, que pueden ser palabras, subpalabras o incluso caracteres individuales, según la estrategia de tokenización empleada. Las técnicas de tokenización populares para LLM incluyen codificación de par de bytes (BPE), SentencePiece y WordPiece. Estos métodos tienen como objetivo lograr un equilibrio entre el tamaño del vocabulario y la granularidad de la representación, permitiendo que el modelo maneje palabras raras o fuera de vocabulario de manera efectiva.

Incrustaciones de tokens: Después de la tokenización, cada token se asigna a una representación vectorial densa llamada incrustación de token. Estas incorporaciones se aprenden durante el proceso de capacitación y capturan las relaciones semánticas y sintácticas entre los tokens.

Incrustaciones posicionales: Los modelos de transformadores procesan toda la secuencia de entrada simultáneamente, careciendo de la noción inherente de posiciones de tokens presentes en los modelos recurrentes. Para incorporar información posicional, se agregan incrustaciones posicionales a las incrustaciones de tokens, lo que permite que el modelo distinga entre tokens en función de sus posiciones en la secuencia. Los primeros LLM utilizaban incrustaciones posicionales fijas basadas en funciones sinusoidales, mientras que los modelos más recientes han explorado incrustaciones posicionales que se pueden aprender o técnicas de codificación posicional alternativas como incrustaciones posicionales rotativas.

Bloques de atención de múltiples cabezas

Los componentes básicos de los LLM basados ​​en decodificadores son las capas de atención de múltiples cabezales, que realizan la operación de autoatención enmascarada descrita anteriormente. Estas capas se apilan varias veces, y cada capa atiende a la salida de la capa anterior, lo que permite que el modelo capture dependencias y representaciones cada vez más complejas.

Cabezas de atención: Cada capa de atención de múltiples cabezas consta de múltiples "cabezas de atención", cada una con su propio conjunto de proyecciones de consulta, clave y valor. Esto permite que el modelo preste atención a diferentes aspectos de la entrada simultáneamente, capturando diversas relaciones y patrones.

Conexiones residuales y normalización de capas.: Para facilitar el entrenamiento de redes profundas y mitigar el problema del gradiente que desaparece, los LLM basados ​​en decodificadores emplean conexiones residuales y técnicas de normalización de capas. Las conexiones residuales agregan la entrada de una capa a su salida, lo que permite que los gradientes fluyan más fácilmente durante la retropropagación. La normalización de capas ayuda a estabilizar las activaciones y gradientes, mejorando aún más la estabilidad y el rendimiento del entrenamiento.

Capas de avance

Además de las capas de atención de múltiples cabezas, los LLM basados ​​en decodificadores incorporan capas de retroalimentación, que aplican una red neuronal de retroalimentación simple a cada posición de la secuencia. Estas capas introducen no linealidades y permiten que el modelo aprenda representaciones más complejas.

Funciones de activación: La elección de la función de activación en las capas de avance puede afectar significativamente el rendimiento del modelo. Mientras que los LLM anteriores se basaban en la activación ReLU ampliamente utilizada, los modelos más recientes han adoptado funciones de activación más sofisticadas como la Unidad lineal de error gaussiano (GELU) o la activación SwiGLU, que han mostrado un rendimiento mejorado.

Escasa atención y transformadores eficientes

Si bien el mecanismo de autoatención es poderoso, presenta una complejidad computacional cuadrática con respecto a la longitud de la secuencia, lo que lo hace computacionalmente costoso para secuencias largas. Para abordar este desafío, se han propuesto varias técnicas para reducir los requisitos computacionales y de memoria de la autoatención, permitiendo el procesamiento eficiente de secuencias más largas.

Atención escasa: Las técnicas de atención dispersa, como la empleada en el modelo GPT-3, atienden selectivamente a un subconjunto de posiciones en la secuencia de entrada, en lugar de calcular puntuaciones de atención para todas las posiciones. Esto puede reducir significativamente la complejidad computacional manteniendo un rendimiento razonable.

Atención de ventana corrediza: Introducida en el modelo Mistral 7B, la atención de ventana deslizante (SWA) es una técnica simple pero efectiva que restringe la capacidad de atención de cada token a un tamaño de ventana fijo. Este enfoque aprovecha la capacidad de las capas transformadoras para transmitir información a través de múltiples capas, aumentando efectivamente la capacidad de atención sin la complejidad cuadrática de la autoatención total.

Caché de búfer rodante: Para reducir aún más los requisitos de memoria, especialmente para secuencias largas, el modelo Mistral 7B emplea un caché de búfer continuo. Esta técnica almacena y reutiliza los vectores de clave y valor calculados para un tamaño de ventana fijo, evitando cálculos redundantes y minimizando el uso de memoria.

Atención de consultas agrupadas: Introducida en el modelo LLaMA 2, la atención de consultas agrupadas (GQA) es una variante del mecanismo de atención de consultas múltiples que divide las cabezas de atención en grupos, cada grupo comparte una clave y una matriz de valores comunes. Este enfoque logra un equilibrio entre la eficiencia de la atención de consultas múltiples y el rendimiento de la autoatención estándar, proporcionando tiempos de inferencia mejorados y manteniendo resultados de alta calidad.

Atención de consultas agrupadas

Atención de consultas agrupadas

Tamaño y escala del modelo

Una de las características definitorias de los LLM modernos es su gran escala, con un número de parámetros que oscila entre miles de millones y cientos de miles de millones. Aumentar el tamaño del modelo ha sido un factor crucial para lograr un rendimiento de vanguardia, ya que los modelos más grandes pueden capturar patrones y relaciones más complejos en los datos.

Recuento de parámetros: La cantidad de parámetros en un LLM basado en decodificador está determinada principalmente por la dimensión de incrustación (d_model), la cantidad de cabezas de atención (n_heads), la cantidad de capas (n_layers) y el tamaño del vocabulario (vocab_size). Por ejemplo, el modelo GPT-3 tiene 175 mil millones de parámetros, con d_modelo = 12288, n_cabezas = 96, n_capas = 96y tamaño_vocab = 50257.

Modelo de paralelismo: Entrenar e implementar modelos tan masivos requiere importantes recursos computacionales y hardware especializado. Para superar este desafío, se han empleado técnicas de paralelismo de modelos, donde el modelo se divide en múltiples GPU o TPU, siendo cada dispositivo responsable de una parte de los cálculos.

Mezcla de expertos: Otro enfoque para ampliar los LLM es la arquitectura de combinación de expertos (MoE), que combina múltiples modelos expertos, cada uno de los cuales se especializa en un subconjunto específico de datos o tareas. El modelo Mixtral 8x7B es un ejemplo de un modelo MoE que aprovecha la Mistral 7B como su modelo base, logrando un rendimiento superior manteniendo la eficiencia computacional.

Inferencia y generación de texto

Uno de los principales casos de uso de los LLM basados ​​en decodificadores es la generación de texto, donde el modelo genera un texto coherente y que suena natural basado en un mensaje o contexto determinado.

Decodificación autorregresiva: Durante la inferencia, los LLM basados ​​en decodificadores generan texto de manera autorregresiva, prediciendo un token a la vez en función de los tokens generados previamente y el mensaje de entrada. Este proceso continúa hasta que se cumple un criterio de parada predeterminado, como alcanzar una longitud máxima de secuencia o generar un token de fin de secuencia.

Estrategias de muestreo: Para generar texto diverso y realista, se pueden emplear varias estrategias de muestreo, como el muestreo top-k, el muestreo top-p (también conocido como muestreo de núcleo) o el escalado de temperatura. Estas técnicas controlan el equilibrio entre diversidad y coherencia del texto generado ajustando la distribución de probabilidad sobre el vocabulario.

Ingeniería rápida: La calidad y especificidad del mensaje de entrada pueden afectar significativamente el texto generado. La ingeniería rápida, el arte de crear indicaciones efectivas, ha surgido como un aspecto crucial para aprovechar los LLM para diversas tareas, lo que permite a los usuarios guiar el proceso de generación del modelo y lograr los resultados deseados.

Decodificación humana en el circuito: Para mejorar aún más la calidad y coherencia del texto generado, se utilizan técnicas como Aprendizaje por refuerzo a partir de la retroalimentación humana (RLHF) han sido empleados. En este enfoque, los evaluadores humanos brindan retroalimentación sobre el texto generado por el modelo, que luego se utiliza para ajustar el modelo, alineándolo efectivamente con las preferencias humanas y mejorando sus resultados.

Avances y direcciones futuras

El campo de los LLM basados ​​en decodificadores está evolucionando rápidamente, con nuevas investigaciones y avances que amplían continuamente los límites de lo que estos modelos pueden lograr. A continuación se muestran algunos avances notables y posibles direcciones futuras:

Variantes de transformadores eficientes: Si bien la atención escasa y la atención de ventana deslizante han logrado avances significativos en la mejora de la eficiencia de los LLM basados ​​en decodificadores, los investigadores están explorando activamente arquitecturas de transformadores alternativos y mecanismos de atención para reducir aún más los requisitos computacionales mientras se mantiene o mejora el rendimiento.

LLM multimodales: Al ampliar las capacidades de los LLM más allá del texto, los modelos multimodales tienen como objetivo integrar múltiples modalidades, como imágenes, audio o video, en un único marco unificado. Esto abre posibilidades interesantes para aplicaciones como subtítulos de imágenes, respuesta visual a preguntas y generación de contenido multimedia.

Generación Controlable: Permitir un control detallado sobre el texto generado es una dirección desafiante pero importante para los LLM. Técnicas como la generación controlada de texto y el ajuste rápido tienen como objetivo brindar a los usuarios un control más granular sobre varios atributos del texto generado, como el estilo, el tono o los requisitos de contenido específicos.

Conclusión

Los LLM basados ​​en decodificadores han surgido como una fuerza transformadora en el campo del procesamiento del lenguaje natural, ampliando los límites de lo que es posible con la generación y comprensión del lenguaje. Desde sus humildes comienzos como una variante simplificada de la arquitectura de transformador, estos modelos han evolucionado hasta convertirse en sistemas altamente sofisticados y potentes, aprovechando técnicas de vanguardia e innovaciones arquitectónicas.

A medida que continuamos explorando y avanzando en los LLM basados ​​en decodificadores, podemos esperar ser testigos de logros aún más notables en tareas relacionadas con el lenguaje, así como la integración de estos modelos en una amplia gama de aplicaciones y dominios. Sin embargo, es crucial abordar las consideraciones éticas, los desafíos de interpretabilidad y los posibles sesgos que pueden surgir del despliegue generalizado de estos poderosos modelos.

Al permanecer a la vanguardia de la investigación, fomentar la colaboración abierta y mantener un fuerte compromiso con el desarrollo responsable de la IA, podemos desbloquear todo el potencial de los LLM basados ​​en decodificadores y, al mismo tiempo, garantizar que se desarrollen y utilicen de manera segura, ética y beneficiosa para sociedad.

He pasado los últimos cinco años sumergiéndome en el fascinante mundo del aprendizaje automático y el aprendizaje profundo. Mi pasión y experiencia me han llevado a contribuir en más de 50 proyectos diversos de ingeniería de software, con un enfoque particular en AI/ML. Mi curiosidad constante también me ha atraído hacia el procesamiento del lenguaje natural, un campo que estoy ansioso por explorar más a fondo.