ElemedexEnciclopedia de bolsillo de arquitecturas de IA
Atención de Bahdanau
N.º 023

Atención de Bahdanau

RNNsearch · attentional encoder–decoder

Alineamiento suave

Antes de escribir cada palabra, vuelve la vista atrás y repasa la oración original, iluminando solo lo que le sirve. Sus miradas dejan un rastro en diagonal que los lingüistas enmarcan como si fuera un cuadro. Todos los transformers llevan en la sangre algo de este Pokémon.

Altura
1 capa BiGRU (2 × 1.000) + 1 capa GRU (1.000)
Peso
≈ 320 MB (fp32)
Parámetros
≈ 80 M (estimación a partir del apéndice A)
Contexto
Oraciones de hasta 50 palabras (RNNsearch-50)
Datos de entrenamiento
WMT'14 EN–FR: 348 M palabras; vocabulario de 30.000
Año
2014
Generación
3 · Aprendizaje profundo
Creadores
Bahdanau, Cho & Bengio (Jacobs University Bremen / Université de Montréal)
Clase
Arquitectura

Estadísticas base

Total
189

Escalas ordinales y aproximadas, pensadas para comparar especies entre sí; los números duros están en la ficha.

Debilidades

  • Puntúa cada palabra de la fuente para cada palabra de la salida: el costo crece con el producto de las longitudes.
  • Sigue siendo recurrente: lento de entrenar y difícil de paralelizar.
  • Vocabulario de 30.000 palabras por idioma: todo lo demás es [UNK].
  • Sus mapas de atención parecen explicaciones, pero no está claro que lo sean.

Hábitat

Creció en Montreal, con una sola GPU por modelo, a partir de 348 millones de palabras de textos paralelos inglés–francés (actas del Parlamento Europeo, documentos de la ONU, noticias). Hoy no vive como especie aparte: su mirada hacia atrás sobrevive como atención cruzada dentro de cada transformer con codificador y decodificador.

Movimientos

Habilidades

Contexto a medida
Para cada palabra que escribe calcula un vector de contexto distinto: un promedio de las anotaciones de la fuente, ponderado por su relevancia.
Anotaciones bidireccionales
Cada palabra de la fuente queda representada por un vector que resume lo que viene antes y lo que viene después.
Alinear sin que se lo enseñen
Nadie le dice qué palabra corresponde a cuál: el alineamiento emerge al entrenar la traducción de punta a punta.

Anatomía

RNNsearch (Bahdanau et al., 2015): el codificador bidireccional deja una anotación por palabra. En cada paso, el decodificador puntúa todas las anotaciones con su estado anterior, las normaliza con softmax y arma con ellas un contexto propio para la palabra que va a emitir.

Cadena evolutiva

  • atención: el decodificador vuelve a mirar cada estado del codificador022 Seq2seq
023 Atención de Bahdanau
  • elimina la recurrencia: la atención es todo lo que necesita025 Transformer

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

  1. 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.
  2. 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).
  3. 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).

Fuentes

  • Alammar, J., & Grootendorst, M. (2024). Hands-on large language models: Language understanding and generation. O’Reilly Media. §
  • Bahdanau, D., Cho, K., & Bengio, Y. (2015). Neural machine translation by jointly learning to align and translate. In 3rd International Conference on Learning Representations (ICLR 2015). https://doi.org/10.48550/arXiv.1409.0473 §
  • Buckner, C. J. (2024). From deep learning to rational machines: What the history of philosophy can teach us about the future of artificial intelligence. Oxford University Press. https://doi.org/10.1093/oso/9780197653302.001.0001 §
  • Cho, K., van Merriënboer, B., Gulcehre, C., Bahdanau, D., Bougares, F., Schwenk, H., & Bengio, Y. (2014). Learning phrase representations using RNN encoder–decoder for statistical machine translation. In A. Moschitti, B. Pang, & W. Daelemans (Eds.), Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP) (pp. 1724–1734). Association for Computational Linguistics. https://doi.org/10.3115/v1/D14-1179 §
  • Jain, S., & Wallace, B. C. (2019). Attention is not explanation. In J. Burstein, C. Doran, & T. Solorio (Eds.), Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers) (pp. 3543–3556). Association for Computational Linguistics. https://doi.org/10.18653/v1/N19-1357 §
  • Vaswani, A., Shazeer, N., Parmar, N., Uszkoreit, J., Jones, L., Gomez, A. N., Kaiser, Ł., & Polosukhin, I. (2017). Attention is all you need. In Advances in Neural Information Processing Systems (Vol. 30). Curran Associates. https://proceedings.neurips.cc/paper_files/paper/2017/hash/3f5ee243547dee91fbd053c1c4a845aa-Abstract.html §
  • Wiegreffe, S., & Pinter, Y. (2019). Attention is not not explanation. In K. Inui, J. Jiang, V. Ng, & X. Wan (Eds.), Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP) (pp. 11–20). Association for Computational Linguistics. https://doi.org/10.18653/v1/D19-1002 §