Artículos · arXiv 1706.03762
Attention Is All You Need
Resumen en tres líneas
- 🎯 Los modelos recurrentes se ejecutan secuencialmente a lo largo de las posiciones de los tokens, impidiendo la paralelización dentro de las secuencias de entrenamiento y teniendo dificultades con longitudes de ruta de largo alcance.
- 🔧 Presenta el Transformer, una arquitectura codificador-decodificador basada enteramente en autoatención multi-cabeza de producto escalar escalado y redes feed-forward aplicadas a cada posición.
- 📈 Alcanza el estado del arte en traducción con 28.4 BLEU en WMT 2014 inglés a alemán y 41.8 BLEU en inglés a francés, entrenándose en 3.5 días en 8 GPU.
Resumen
Los modelos dominantes de transducción de secuencias se basan en redes neuronales recurrentes o convolucionales complejas estructuradas en configuraciones de codificador-decodificador. Los modelos con mejor rendimiento también conectan el codificador y el decodificador mediante un mecanismo de atención. Proponemos una nueva arquitectura de red simple, el Transformer, basada únicamente en mecanismos de atención, prescindiendo por completo de la recurrencia y las convoluciones. Los experimentos en dos tareas de traducción automática demuestran que estos modelos son superiores en calidad, a la vez que resultan más paralelizables y requieren significativamente menos tiempo de entrenamiento. Nuestro modelo alcanza 28.4 BLEU en la tarea de traducción de inglés a alemán de WMT 2014, mejorando los mejores resultados existentes, incluidos los ensambles, en más de 2 BLEU. En la tarea de traducción de inglés a francés de WMT 2014, nuestro modelo establece un nuevo estado del arte para un modelo individual con una puntuación BLEU de 41.8 tras entrenarse durante 3.5 días en ocho GPU, una pequeña fracción de los costes de entrenamiento de los mejores modelos de la literatura. Demostramos que el Transformer generaliza bien a otras tareas al aplicarlo con éxito al análisis sintáctico de circunscripción (constituency parsing) en inglés, tanto con conjuntos de datos de entrenamiento amplios como limitados.
Resumen original (inglés)
The dominant sequence transduction models are based on complex recurrent or convolutional neural networks in an encoder-decoder configuration. The best performing models also connect the encoder and decoder through an attention mechanism. We propose a new simple network architecture, the Transformer, based solely on attention mechanisms, dispensing with recurrence and convolutions entirely. Experiments on two machine translation tasks show these models to be superior in quality while being more parallelizable and requiring significantly less time to train. Our model achieves 28.4 BLEU on the WMT 2014 English-to-German translation task, improving over the existing best results, including ensembles by over 2 BLEU. On the WMT 2014 English-to-French translation task, our model establishes a new single-model state-of-the-art BLEU score of 41.8 after training for 3.5 days on eight GPUs, a small fraction of the training costs of the best models from the literature. We show that the Transformer generalizes well to other tasks by applying it successfully to English constituency parsing both with large and limited training data.
Guía de lectura
Problema y motivación
Las arquitecturas dominantes de transducción de secuencias se basaban en redes neuronales recurrentes (como LSTM o GRU) o redes neuronales convolucionales dispuestas en estructuras de codificador-decodificador. Las redes recurrentes computan intrínsecamente representaciones ocultas de manera secuencial ( condicionado a y a la entrada ), lo que impide la paralelización a lo largo de los pasos temporales dentro de los ejemplos de entrenamiento. Además, relacionar posiciones distantes en redes recurrentes requiere operaciones secuenciales, mientras que los modelos convolucionales como ConvS2S y ByteNet requieren u operaciones para conectar posiciones arbitrarias. Los autores buscaban construir una arquitectura que prescindiera por completo de la recurrencia y las convoluciones, permitiendo una paralelización completa a lo largo de las longitudes de secuencia y reduciendo al mismo tiempo la longitud máxima de la ruta entre dos tokens cualesquiera a .
Ideas clave
- Arquitectura de atención pura: Reemplazar totalmente las conexiones recurrentes con mecanismos de atención que mapean dependencias directamente a través de todas las posiciones de una secuencia.
- Scaled Dot-Product Attention: Escalar los productos escalares multiplicativos por para evitar que los valores de los productos crezcan excesivamente en dimensiones altas, lo que empujaría a las funciones softmax hacia regiones con gradientes extremadamente pequeños.
- Multi-Head Attention: Proyectar linealmente consultas (queries), claves (keys) y valores (values) en múltiples subespacios de representación de menor dimensión en paralelo, permitiendo que la red atienda simultáneamente a información proveniente de diferentes posiciones y espacios de representación.
- Positional Encoding: Dado que las operaciones de atención son invariantes ante permutaciones, se añaden funciones sinusoidales fijas de frecuencias variables a los embeddings de entrada y salida para codificar el orden de los tokens.
Método
El Transformer utiliza un marco de codificador-decodificador con capas idénticas apiladas en cada uno.
Codificador y Decodificador
Cada capa del codificador tiene dos subcapas: un mecanismo de autoatención multi-cabeza y una red feed-forward completamente conectada aplicada a cada posición (FFN). Se aplican conexiones residuales y normalización de capas a cada subcapa: , operando sobre una dimensión .
Cada capa del decodificador contiene tres subcapas: autoatención multi-cabeza enmascarada (que enmascara las posiciones futuras para preservar la decodificación autorregresiva), atención cruzada multi-cabeza sobre las salidas de la pila del codificador, y una FFN aplicada a cada posición.
Formulación matemática
La atención de producto escalar escalado sobre matrices empaquetadas se calcula como:
La atención multi-cabeza combina proyecciones paralelas: Para el modelo base, y .
La subcapa feed-forward aplicada a cada posición se aplica de forma idéntica a cada posición: donde la dimensión de la capa interna es .
Las codificaciones posicionales se definen mediante funciones seno y coseno:
Resultados
- WMT 2014 Inglés-Alemán: El Transformer (big) alcanzó una puntuación de estado del arte de 28.4 BLEU, superando a los modelos previos y ensambles en más de 2.0 BLEU. El modelo base logró 27.3 BLEU utilizando FLOPs, una fracción del coste de arquitecturas anteriores.
- WMT 2014 Inglés-Francés: El modelo big obtuvo 41.8 BLEU (modelo individual), estableciendo un nuevo estado del arte tras 3.5 días de entrenamiento en 8 GPU NVIDIA P100 ( FLOPs).
- English Constituency Parsing: Evaluado en la Sección 23 de WSJ sin ajustes específicos para la tarea, un Transformer de 4 capas alcanzó 91.3 en la configuración discriminativa y 92.7 en la semi-supervisada, superando a las líneas base basadas en RNN.
Limitaciones y preguntas abiertas
- La autoatención estándar tiene una complejidad computacional por capa de , lo que resulta computacionalmente costoso para secuencias muy largas.
- La generación en el decodificador sigue siendo autorregresiva (generando un token a la vez secuencialmente), lo que limita la latencia de inferencia.
- El artículo señala la necesidad de investigar vecindarios de atención local o restringida () para gestionar de forma eficiente contextos masivos de entrada y salida (p. ej., imágenes, audio, vídeo).
Términos clave
- Transformer
- Arquitectura de modelo para la transducción de secuencias basada enteramente en mecanismos de autoatención sin recurrencia ni convoluciones.
- Scaled Dot-Product Attention (Atención de producto escalar escalado)
- Función de atención donde los productos escalares de consultas y claves se dividen por la raíz cuadrada de la dimensión de la clave antes de calcular la función softmax sobre los valores.
- Multi-Head Attention (Atención multi-cabeza)
- Mecanismo de atención que proyecta consultas, claves y valores en múltiples subespacios de representación en paralelo antes de concatenar y proyectar las salidas.
- Self-Attention (Autoatención)
- Mecanismo de atención intrasecuencial que relaciona diferentes posiciones de una misma secuencia para calcular una representación de dicha secuencia.
- Positional Encoding (Codificación posicional)
- Representaciones vectoriales fijas o aprendidas que se añaden a los embeddings de los tokens para inyectar información sobre el orden secuencial en las capas de atención invariantes ante permutaciones.
- Residual Dropout
- Dropout aplicado a la salida de cada subcapa antes de sumarla a la entrada de la subcapa y aplicar la normalización de capa, así como a los embeddings de tokens.
- Label Smoothing (Suavizado de etiquetas)
- Técnica de regularización durante el entrenamiento con un valor que penaliza predicciones con un exceso de confianza, mejorando las puntuaciones BLEU a pesar de empeorar la perplejidad.
- Constituency Parsing (Análisis de circunscripción)
- Tarea sintáctica de PLN que requiere salidas objetivo extensas y restringidas estructuralmente, utilizada para demostrar la capacidad de generalización de la arquitectura Transformer.
Preguntas
¿Por qué la Scaled Dot-Product Attention se divide por $\sqrt{d_k}$?
Para valores grandes de , los productos escalares crecen mucho en magnitud (asumiendo media cero y varianza unitaria, el producto escalar tiene varianza ), lo que empuja a la función softmax hacia regiones con gradientes extremadamente pequeños. Escalar por contrarresta este efecto.
¿Cómo mantiene el Transformer el orden de los tokens sin recurrencia?
Añade codificaciones posicionales sinusoidales directamente a los embeddings de entrada y salida en la base de las pilas del codificador y del decodificador, asignando un patrón único basado en frecuencias a cada posición del token.
¿Qué impide que las posiciones del decodificador atiendan a tokens futuros durante el entrenamiento?
La subcapa de autoatención del decodificador utiliza un enmascaramiento que asigna a los valores en la entrada de la softmax correspondientes a conexiones futuras no permitidas.
¿Cuáles fueron los requisitos de hardware y cómputo para el entrenamiento?
El modelo base se entrenó en una sola máquina con 8 GPU NVIDIA P100 durante 100 000 pasos (12 horas a 0.4 segundos/paso). El modelo big se entrenó durante 300 000 pasos (3.5 días a 1.0 segundo/paso).
La explicación de esta página la escribió una IA a partir del artículo y puede contener errores. Consulte el artículo para los detalles.