XLNet es un modelo autorregresivo de transformador diseñado para el procesamiento del lenguaje natural, presentado como una mejora sobre BERT. Fue publicado el 19 de junio de 2019 bajo la licencia Apache 2.0, con 340 millones de parámetros y entrenado con 33 mil millones de palabras. El modelo logró resultados de vanguardia en tareas como modelado de lenguaje, respuesta a preguntas e inferencia de lenguaje natural, y es un ejemplo notable de la arquitectura de modelos de lenguaje grandes en la investigación de aprendizaje profundo.
A diferencia de BERT, que utiliza el modelado de lenguaje enmascarado, XLNet emplea el modelado de lenguaje por permutación. Este enfoque factoriza la probabilidad conjunta de una secuencia en todos los órdenes posibles, lo que permite al modelo capturar el contexto bidireccional sin depender del enmascaramiento. Este diseño fue concebido para abordar una limitación de BERT, donde los tokens enmascarados no se ven durante el preentrenamiento, lo que crea una discrepancia entre el preentrenamiento y el ajuste fino.
Modelado de lenguaje por permutación
En el modelado autorregresivo estándar, la probabilidad de una secuencia se factoriza en un orden fijo de izquierda a derecha. Por ejemplo, la frase "Mi perro es lindo" se modela como el producto de probabilidades condicionales: Pr(Mi) Pr(perro|Mi) Pr(es|Mi, perro) * Pr(lindo|Mi, perro, es). XLNet, en cambio, muestrea una permutación aleatoria de las posiciones de los tokens y factoriza la probabilidad según ese orden. Por ejemplo, con la permutación 3-2-4-1, el modelo predice "es" primero, luego "perro", después "lindo" y finalmente "Mi", condicionando cada predicción en los tokens previamente predichos. Al entrenar con todas las permutaciones, el modelo aprende a utilizar el contexto de ambas direcciones, mejorando su capacidad para capturar dependencias de largo alcance.
Atención de dos flujos
Para implementar el modelado de lenguaje por permutación, XLNet utiliza un mecanismo de atención de dos flujos. El primer flujo, llamado flujo de contenido, codifica el contenido de cada token mediante una autoatención causal estándar. El segundo flujo, llamado flujo de consulta, codifica el contenido de cada token en el contexto de los tokens previamente predichos, utilizando una atención cruzada enmascarada donde las consultas provienen del flujo de consulta y los pares clave-valor provienen del flujo de contenido. Este diseño permite al modelo predecir un token sin ver su propio contenido, mientras sigue aprovechando el contenido de otros tokens en el orden permutado.
Entrenamiento y rendimiento
XLNet fue entrenado con un gran corpus de 33 mil millones de palabras, utilizando un modelo con 340 millones de parámetros. El proceso de entrenamiento combinó el modelado de lenguaje por permutación con un objetivo de reordenamiento de segmentos, lo que ayudó al modelo a aprender relaciones entre oraciones. En su publicación, XLNet superó a BERT en una variedad de puntos de referencia, incluido el conjunto de datos de respuesta a preguntas de Stanford (SQuAD), el punto de referencia de Evaluación General de Comprensión del Lenguaje (GLUE) y varias tareas de comprensión lectora. Su éxito demostró la eficacia del preentrenamiento basado en permutaciones e influyó en trabajos posteriores en IA generativa y aprendizaje automático.
Impacto y legado
XLNet contribuyó a la evolución de los modelos de lenguaje preentrenados al resaltar las ventajas y desventajas entre los enfoques autorregresivos y los de auto codificación. Mientras que la estrategia de enmascaramiento de BERT permitía un contexto bidireccional, introducía una discrepancia entre el preentrenamiento y el ajuste fino; el enfoque de permutación de XLNet ofreció una manera de lograr contexto bidireccional manteniendo la propiedad autorregresiva. Esta idea ha sido incorporada en modelos posteriores, como Transformer-XL y otras variantes. Aunque las arquitecturas más recientes han superado a XLNet en rendimiento, sigue siendo un hito importante en la historia de la investigación en inteligencia artificial y las redes neuronales.
Véase también
- BERT
- Modelo de lenguaje grande
- Aprendizaje profundo
- Aprendizaje automático