La atención de Bahdanau (bautizada así por su primer autor; el modelo se llamaba RNNsearch) es un codificador–decodificador recurrente con un agregado: antes de escribir cada palabra, el decodificador vuelve a mirar toda la oración de entrada y decide qué partes le importan. La presentaron Bahdanau, Cho y Bengio en septiembre de 2014, con un título que lo dice todo: traducción automática «aprendiendo conjuntamente a alinear y traducir» (Bahdanau et al., 2015). Es la primera aparición del tipo Atención en esta Pokédex y el antecesor directo del Transformer.
Cómo funciona
- Un codificador que anota. Una red recurrente lee la oración de izquierda a derecha y otra de derecha a izquierda; concatenando sus estados se obtiene, para cada palabra xⱼ, una anotación hⱼ que resume toda la oración con foco en el entorno de esa palabra (Bahdanau et al., 2015, sec. 3.2). Ya no hay un único vector: hay uno por palabra.
- Un paso de atención antes de cada palabra. Para producir la palabra i, una pequeña red bloque feedforward, el modelo de alineamiento, puntúa cada anotación contra el estado anterior del decodificador: eᵢⱼ = a(sᵢ₋₁, hⱼ). Una softmax convierte esos puntajes en pesos αᵢⱼ que suman 1, y el vector de contexto es el promedio ponderado cᵢ = Σⱼ αᵢⱼ hⱼ (Bahdanau et al., 2015, sec. 3.1).
- Un decodificador que escribe. El nuevo estado sᵢ depende del anterior, de la última palabra emitida y de cᵢ; de él sale la distribución sobre la palabra siguiente.
Los autores leen αᵢⱼ como la probabilidad de que la palabra i de la traducción esté alineada con la palabra j de la fuente, y agregan: «Intuitively, this implements a mechanism of attention in the decoder» (2015, sec. 3.1). A diferencia de la traducción estadística, donde el alineamiento era una variable latente, aquí es una cantidad suave y diferenciable que se entrena junto con todo lo demás por retropropagación. Buckner (2024) señala un matiz: el contexto sigue siendo un vector de tamaño fijo, pero ahora se recalcula para cada palabra (2024, p. 270).
Los números son modestos: unidades recurrentes con compuertas (las GRU de Cho et al. (2014)) de 1.000 dimensiones, embeddings de 620 y vocabularios de 30.000 palabras por idioma (Bahdanau et al., 2015, apéndice A), entrenadas con el corpus inglés–francés de WMT'14 filtrado a 348 millones de palabras, unos cinco días por modelo (Bahdanau et al., 2015, secs. 4.1 y 4.2).
Qué cambió
El diagnóstico del artículo es que el vector fijo de Seq2seq es un cuello de botella; la solución, repartir la información en muchas anotaciones y recuperarla selectivamente (Bahdanau et al., 2015, sec. 3.1). Con los mismos datos y el mismo procedimiento de entrenamiento, el BLEU del codificador–decodificador básico se desploma a medida que las oraciones se alargan, mientras que RNNsearch-50 no se deteriora ni con oraciones de 50 palabras o más: 26,8 contra 17,8 BLEU. En oraciones sin palabras desconocidas, su versión más entrenada (36,2) igualó a Moses, el sistema estadístico de referencia (35,6), que además usaba un corpus monolingüe de 418 millones de palabras (Bahdanau et al., 2015, sec. 5.1).
El regalo inesperado fueron los alineamientos. En forma de matriz, los pesos αᵢⱼ trazan una diagonal, porque inglés y francés suelen conservar el orden, pero con desvíos que un lingüista reconoce: para traducir European Economic Area, el modelo salta primero a Area para escribir zone y luego retrocede palabra por palabra para économique européenne; para elegir entre le, la, les o l' ante the man, mira también man (Bahdanau et al., 2015, sec. 5.2.1).
La descendencia es directa. Vaswani et al. (2017) llaman a este mecanismo atención aditiva, y sus capas de atención entre codificador y decodificador imitan la de los modelos seq2seq (2017, secs. 3.2.1 y 3.2.3): es la actual atención cruzada. El transformer nació de una pregunta: si el decodificador ya puede ver todos los estados del codificador, ¿para qué conservar la recurrencia? (Buckner, 2024, pp. 271–272; Alammar y Grootendorst, 2024, pp. 14–15).
Límites
- Costo cuadrático. Cada palabra de la fuente se puntúa para cada palabra de la traducción; con oraciones de 15 a 40 palabras no es grave, pero puede limitar otras aplicaciones (Bahdanau et al., 2015, sec. 6.1). El transformer hereda ese costo.
- Sigue siendo recurrente. Codificador y decodificador avanzan paso a paso, así que el entrenamiento no se paraleliza a lo largo de la oración (Alammar y Grootendorst, 2024, p. 14).
- Palabras raras. Lo que queda fuera de las 30.000 palabras es
[UNK]; los autores lo señalan como la gran tarea pendiente (Bahdanau et al., 2015, sec. 7). - Mapas tentadores. Invitan a leerse como explicaciones (ver la nota del profesor).