LLM: ¿Cuál es un modelo grande de lenguaje?

Una tecnología más reciente, los modelos de lenguaje grandes (LLM), predicen un token o una secuencia de tokens, a veces muchos párrafos de tokens previstos. Recuerda que un token puede ser una palabra, una subpalabra (un subconjunto de una palabra) o incluso un solo carácter. Los LLM hacen predicciones mucho mejores que los modelos de lenguaje de n-gramas o las redes neuronales recurrentes por los siguientes motivos:

  • Los LLM contienen muchos más parámetros que los modelos recurrentes.
  • Los LLMs recopilan mucho más contexto.

En esta sección, se presenta la arquitectura más exitosa y ampliamente utilizada para compilar LLM: el transformador.

¿Qué es un transformador?

Los transformadores son la arquitectura de vanguardia para una amplia variedad de aplicaciones de modelos de lenguaje, como la traducción:

Figura 1: La entrada es: I am a good dog. Un traductor basado en Transformer transforma esa entrada en el resultado: Je suis un bon chien, que es la misma oración traducida al francés.
Figura 1: Una aplicación basada en Transformer que traduce del inglés al francés.

 

Los transformadores completos constan de un codificador y un decodificador:

  • Un codificador convierte el texto de entrada en una representación intermedia. Un codificador es una red neuronal enorme.
  • Un decodificador convierte esa representación intermedia en texto útil. Un decodificador también es una red neuronal enorme.

Por ejemplo, en un traductor:

  • El codificador procesa el texto de entrada (por ejemplo, una oración en inglés) en una representación intermedia.
  • El decodificador convierte esa representación intermedia en texto de salida (por ejemplo, la oración equivalente en francés).
Figura 2: El traductor basado en Transformer comienza con un codificador, que genera una representación intermedia de una oración en inglés. Un decodificador convierte esa representación intermedia en una oración de salida en francés.
Figura 2: Un Transformer completo contiene un codificador y un decodificador.

 

¿Qué es la autoatención?

Para mejorar el contexto, los Transformer dependen en gran medida de un concepto llamado atención automática. En efecto, en nombre de cada token de entrada, la autoatención hace la siguiente pregunta:

"¿Cuánto afecta cada otro token de entrada la interpretación de este?"

El "yo" en "autoatención" se refiere a la secuencia de entrada. Algunos mecanismos de atención ponderan las relaciones de los tokens de entrada con los tokens en una secuencia de salida, como una traducción, o con los tokens de alguna otra secuencia. Sin embargo, la autoatención solo pondera la importancia de las relaciones entre los tokens en la secuencia de entrada.

Para simplificar, supongamos que cada token es una palabra y que el contexto completo es solo una oración. Considera la siguiente oración:

The animal didn't cross the street because it was too tired.

La oración anterior contiene once palabras. Cada una de las once palabras presta atención a las otras diez y se pregunta cuánto le importa cada una de ellas. Por ejemplo, observa que la oración contiene el pronombre it. Los pronombres suelen ser ambiguos. Por lo general, el pronombre it hace referencia a un sustantivo o una frase nominal reciente, pero en la oración del ejemplo, ¿a qué sustantivo reciente hace referencia it, al animal o a la calle?

El mecanismo de autoatención determina la relevancia de cada palabra cercana para el pronombre it. En la figura 3, se muestran los resultados: cuanto más azul sea la línea, más importante es esa palabra para el pronombre it. Es decir, animal es más importante que calle para el pronombre it.

Figura 3: La relevancia de cada una de las once palabras de la oración: “El animal no cruzó la calle porque estaba demasiado cansado” del pronombre “eso”. La palabra “animal” es la más relevante para el pronombre “it”.
Figura 3: Autoatención para el pronombre it. De Transformer: Una novedosa arquitectura de red neuronal para la comprensión del lenguaje.

 

Por el contrario, supongamos que la última palabra de la oración cambia de la siguiente manera:

The animal didn't cross the street because it was too wide.

En esta oración revisada, con suerte, la autoatención clasificaría calle como más relevante que animal para el pronombre it.

Algunos mecanismos de autoatención son bidireccionales, lo que significa que calculan puntuaciones de relevancia para los tokens anteriores y siguientes a la palabra a la que asiste. Por ejemplo, en la Figura 3, observa que se examinan las palabras a ambos lados de it. Por lo tanto, un mecanismo de autoatención bidireccional puede recopilar el contexto de las palabras a ambos lados de la palabra a la que se le presta atención. Por el contrario, un mecanismo de autoatención unidireccional solo puede recopilar contexto de las palabras a un lado de la palabra a la que se le presta atención. La autoatención bidireccional es especialmente útil para generar representaciones de secuencias completas, mientras que las aplicaciones que generan secuencias token por token requieren autoatención unidireccional. Por este motivo, los codificadores usan la autoatención bidireccional, mientras que los decodificadores la usan unidireccional.

¿Qué es la autoatención multicabezal?

Por lo general, cada capa de autoatención está compuesta por varios encabezados de autoatención. El resultado de una capa es una operación matemática (por ejemplo, el promedio ponderado o el producto punto) del resultado de los diferentes encabezados.

Dado que cada capa de autoatención se inicializa con valores aleatorios, los diferentes grupos pueden aprender diferentes relaciones entre cada palabra a la que se le presta atención y las palabras cercanas. Por ejemplo, la capa de autoatención que se describió en la sección anterior se enfocó en determinar a qué sustantivo se refería el pronombre it. Sin embargo, otras capas de autoatención podrían aprender la relevancia gramatical de cada palabra para todas las demás, o bien aprender otras interacciones.

¿Por qué los Transformers son tan grandes?

Los transformadores contienen cientos de miles de millones o incluso billones de parámetros. En general, en este curso, se recomendó crear modelos con una cantidad menor de parámetros en lugar de aquellos con una cantidad mayor. Después de todo, un modelo con una cantidad menor de parámetros usa menos recursos para hacer predicciones que un modelo con una cantidad mayor de parámetros. Sin embargo, la investigación demuestra que los transformadores con más parámetros superan de manera coherente a los transformadores con menos parámetros.

Pero ¿cómo puede un LLM generar texto?

Ya viste cómo los investigadores entrenan los LLM para predecir una o dos palabras que faltan, y es posible que no te impresionen. Después de todo, predecir una o dos palabras es, en esencia, la función de autocompletar integrada en varios software de texto, correo electrónico y creación de contenido. Es posible que te preguntes cómo los LLM pueden generar oraciones, párrafos o haikus sobre el arbitraje.

De hecho, los LLM son, en esencia, mecanismos de autocompletado que pueden predecir automáticamente (completar) miles de tokens. Por ejemplo, considera una oración seguida de una oración enmascarada:

My dog, Max, knows how to perform many traditional dog tricks.
___ (masked sentence)

Un LLM puede generar probabilidades para la oración enmascarada, incluidas las siguientes:

Probabilidad Palabras
3.1% Por ejemplo, puede sentarse, quedarse y dar la vuelta.
2.9% Por ejemplo, sabe cómo sentarse, quedarse quieto y voltearse.

Un LLM lo suficientemente grande puede generar probabilidades para párrafos y ensayos completos. Puedes considerar las preguntas de un usuario a un LLM como la oración “dada”, seguida de una máscara imaginaria. Por ejemplo:

User's question: What is the easiest trick to teach a dog?
LLM's response:  ___

El LLM genera probabilidades para diversas respuestas posibles.

Como otro ejemplo, un LLM entrenado en una gran cantidad de "problemas matemáticos expresados en palabras" puede dar la apariencia de realizar un razonamiento matemático sofisticado. Sin embargo, esos LLM básicamente solo completan automáticamente una instrucción de problema de palabras.

Beneficios de los LLM

Los LLM pueden generar texto claro y fácil de entender para una amplia variedad de públicos objetivo. Los LLM pueden hacer predicciones sobre tareas para las que se entrenan de forma explícita. Algunos investigadores afirman que los LLM también pueden realizar predicciones de entradas para las que no fueron entrenados de forma explícita, pero otros se negaron.

Problemas con los LLM

El entrenamiento de un LLM implica muchos problemas, como los siguientes:

  • Recopilar un conjunto de entrenamiento enorme
  • Consumen varios meses y enormes recursos de procesamiento y electricidad.
  • Resolver desafíos de paralelismo.

El uso de LLM para inferir predicciones causa los siguientes problemas:

  • Los LLMs hallucinan, lo que significa que sus predicciones suelen contener errores.
  • Los LLM consumen enormes cantidades de recursos de procesamiento y electricidad. El entrenamiento de LLM en conjuntos de datos más grandes suele reducir la cantidad de recursos necesarios para la inferencia, aunque los conjuntos de entrenamiento más grandes incurren en más recursos de entrenamiento.
  • Al igual que todos los modelos de AA, los LLM pueden mostrar todo tipo de sesgos.

Ejercicio: Comprueba tu comprensión

Supongamos que un Transformer se entrena con mil millones de documentos, incluidos miles de documentos que contienen al menos una instancia de la palabra elefante. ¿Cuáles de las siguientes afirmaciones son probablemente verdaderas?
Árboles de acacia, una parte importante de la dieta de un elefante, ganarán gradualmente una puntuación alta de autoatención con la palabra elefante.
Sí, y esto permitirá que el transformador responda preguntas sobre la dieta de un elefante.
El transformador asociará la palabra elefante con varios idioms que contengan la palabra elefante.
Sí, el sistema comenzará a asignar puntuaciones de atención propia altas entre la palabra elefante y otras palabras en refranes sobre elefantes.
El transformador aprenderá gradualmente a ignorar cualquier uso sarcástico o irónico de la palabra elefante en los datos de entrenamiento.
Los transformadores lo suficientemente grandes que se entrenan en un conjunto de entrenamiento lo suficientemente amplio se vuelven bastante hábiles para reconocer el sarcasmo, el humor y la ironía. Por lo tanto, en lugar de ignorar el sarcasmo y la ironía, el transformador aprende de ellos.