Un panorama de los modelos de lenguaje basados en transformadores
En este artículo, nos centramos en los modelos basados en transformadores que abordan limitaciones previas. Exploraremos el mecanismo de atención y los componentes de los transformadores, y cómo se aplican en modelos como USE, BERT y GPT.
Mecanismo de atención y transformadores
Los mecanismos de atención permiten a los modelos hacer predicciones considerando toda la entrada y centrándose selectivamente en partes específicas. Este enfoque está guiado por pesos aprendidos. Por ejemplo, en la frase “El zorro vio un conejo. Tenía mucha hambre, así que intentó atraparlo, pero se esquivó justo a tiempo,” la atención ayuda a determinar a qué “él” se refiere, al conejo o al zorro.
Los transformadores utilizan una estructura de codificador-decodificador aprovechando el mecanismo de atención. El codificador procesa la entrada centrándose selectivamente en diferentes partes y pasa estas codificaciones al decodificador. La Figura 1 muestra una arquitectura simplificada de un codificador transformador. Las palabras se convierten primero en números mediante métodos como la codificación one-hot o los embeddings Word2Vec. Esta secuencia se alimenta a una capa de self-attention, que utiliza partes de la entrada para predecir otra parte. Los resultados se pasan a una red neuronal feed-forward, creando información codificada con contexto para el decodificador.
El decodificador es similar pero incluye una capa de atención codificador-decodificador para centrarse en partes importantes de la secuencia de entrada. A diferencia de las redes neuronales recurrentes (por ejemplo, LSTM), los transformadores leen todas las palabras de entrada simultáneamente, permitiendo la paralelización y el entrenamiento en corpora más grandes.
Universal Sentence Encoder (USE)
Los modelos USE abordan dos limitaciones principales: predecir la palabra siguiente/anterior limita la aplicación en tareas posteriores, y los embeddings de palabras no capturan la información contextual de frases enteras. Google Research introdujo modelos USE utilizando transformadores y Deep Averaging Networks (DAN) optimizados para embeddings de frases a través de múltiples tareas.
El modelo USE basado en transformadores apila seis codificadores de transformadores, que tokenizan las entradas y calculan las salidas secuencialmente. Las salidas finales forman el embedding de la frase. DAN, por otro lado, promedia las representaciones vectoriales de las palabras de entrada y sus bigramas, pasándolas a través de capas feed-forward para formar el embedding de la frase.
Los modelos USE emplean el aprendizaje multitarea, combinando conjuntos de datos no supervisados y supervisados como Wikipedia, noticias web y foros de discusión. Se entrenan en tareas como skip-thought (predicción de frases circundantes), entrada-respuesta conversacional e inferencia en lenguaje natural (clasificación de pares de frases como neutros, de implicación o de contradicción). Estos modelos se afinan para tareas específicas como el análisis de sentimientos y la clasificación.
A pesar de sobresalir en tareas a nivel de frases, los modelos USE son menos efectivos para la generación de texto general, lo cual exploraremos con otros modelos.
Generative Pretraining Transformer (GPT)
GPT de OpenAI, introducido en 2018, fue revolucionario por el preentrenamiento de un modelo de lenguaje general para diversas tareas. GPT utiliza un apilamiento de 12 decodificadores, codificando secuencias de entrada con Byte Pair Encoding (BPE) y codificación de posición. Se entrenó en el conjunto de datos BooksCorpus para la predicción de texto y la clasificación.
GPT se afina para tareas como inferencia en lenguaje natural, respuesta a preguntas, similitud semántica y clasificación, superando a modelos anteriores. Sin embargo, su naturaleza unidireccional es una limitación.
Bidirectional Encoder Representations from Transformers (BERT)
BERT, introducido por Google AI, es un modelo basado en codificadores entrenado de manera bidireccional. BERT_BASE es comparable en tamaño a GPT, mientras que BERT_LARGE tiene 340 millones de parámetros. Utiliza tokenización WordPiece, embeddings de segmentos y embeddings de posición. BERT se preentrena en tareas de modelo de lenguaje enmascarado y predicción de la siguiente frase utilizando conjuntos de datos como BooksCorpus y Wikipedia.
BERT supera a GPT en diversas tareas gracias a su naturaleza bidireccional. Las variantes como ALBERT (ligero) y RoBERTa (optimizado) ofrecen diferentes compromisos. La bidireccionalidad de BERT mejora el rendimiento pero tiene dificultades para entender la negación.
GPT-2 y condicionamiento de tareas
GPT-2, el modelo de OpenAI de 2019, varía en tamaño, siendo el más grande 10 veces el tamaño de GPT. Entrenado en 40 GB de datos de Reddit, GPT-2 utiliza el condicionamiento de tareas, produciendo diferentes salidas según las indicaciones de tareas. Supera a BERT en la mayoría de las tareas, pero muestra limitaciones en la resumación de texto.
GPT-3
GPT-3, introducido en 2020, tiene 175 mil millones de parámetros y comparte la arquitectura de GPT-2 con más capas. Entrenado en una mezcla de conjuntos de datos, GPT-3 destaca en el aprendizaje con pocos ejemplos, produciendo texto y código coherentes. Sin embargo, tiene dificultades con la coherencia del texto largo y las repeticiones.
Conclusión
Hemos revisado modelos basados en transformadores como USE, GPT y BERT, destacando sus avances y limitaciones. Aunque transformadores para el procesamiento del lenguaje natural, estos modelos aún enfrentan desafíos, como el manejo de nuevos conceptos y el análisis de textos específicos de dominio.