Saltar a contenido

Cómo funciona el Transformer

El Transformer es una arquitectura neuronal que procesa una secuencia mediante atención. Cada posición puede combinar información de otras posiciones sin recorrerlas una a una como una red recurrente. Esa propiedad permitió paralelizar el entrenamiento y escalar modelos de texto, imagen, audio y vídeo.1

La atención es la operación distintiva, pero un Transformer completo también necesita embeddings, información posicional, proyecciones, redes feed-forward, conexiones residuales y normalización.

La arquitectura en una sola vista

ARQUITECTURA
Un bloque Transformer, sin saltos
La atención mezcla información entre posiciones; la red feed-forward transforma cada posición. Las rutas residuales conservan una vía directa.
Atenciónmueve información entre posiciones
FFNtransforma información dentro de cada posición
Residualmantiene una ruta directa para señal y gradiente

En un modelo autoregresivo, la última representación se proyecta sobre el vocabulario para producir las probabilidades del siguiente token.

1. Embeddings e información posicional

Un token empieza como un identificador entero. Una matriz aprendida lo convierte en un vector. Tokens que aparecen en contextos parecidos pueden acabar con representaciones relacionadas.

La atención, por sí sola, no conoce el orden. El modelo necesita añadir o incorporar la posición. El paper original usó codificaciones sinusoidales sumadas al embedding de entrada. Arquitecturas posteriores emplean embeddings posicionales aprendidos, posiciones relativas o transformaciones rotatorias como RoPE.12

ENTRADA DEL TRANSFORMER
Identidad del token + posición: el orden cambia la relación
La autoatención no incorpora el orden por sí sola. El modelo necesita una señal posicional para distinguir secuencias con casi los mismos tokens pero relaciones distintas.
SECUENCIA A
modeloe(modelo)posición 1 · PE(1)
corrigióe(corrigió)posición 2 · PE(2)
evaluadore(evaluador)posición 3 · PE(3)
quién actúa: el modelo quién recibe: el evaluador
SECUENCIA B
evaluadore(evaluador)posición 1 · PE(1)
corrigióe(corrigió)posición 2 · PE(2)
modeloe(modelo)posición 3 · PE(3)
quién actúa: el evaluador quién recibe: el modelo
Transformer original xi = e(tokeni) + PE(i) Embedding y codificación posicional tienen la misma dimensión y se suman antes de entrar en la pila.
Familias posteriores La posición no tiene que sumarse al embedding RoPE, por ejemplo, introduce posición mediante rotaciones aplicadas a Q y K dentro de la atención.
Identidad ≠ ordenEl embedding de token representa qué unidad es; la señal posicional indica dónde aparece.
Mismos tokens ≠ misma secuenciaCambiar posiciones puede invertir relaciones aunque el vocabulario sea casi idéntico.
No hay un único mecanismoLa suma sinusoidal explica el Transformer original; posiciones aprendidas, relativas y RoPE usan contratos distintos.

La posición no es un detalle cosmético: permite distinguir quién actúa sobre quién aunque una secuencia contenga prácticamente los mismos tokens. El mecanismo exacto no es universal; la suma embedding + posición describe el Transformer original, mientras que RoPE incorpora la posición mediante rotaciones dentro del cálculo de atención.2

2. Query, Key y Value

Cada representación se proyecta en tres vectores:

  • Query (Q): qué información busca esta posición
  • Key (K): qué señal ofrece cada posición para ser encontrada
  • Value (V): qué contenido aporta si recibe atención

La atención escalada conecta cuatro operaciones: proyectar Q, K y V; calcular compatibilidades; normalizar los pesos; y mezclar los valores.1

SELF-ATTENTION
La ecuación de atención convertida en flujo
Q decide qué busca cada posición; K calcula compatibilidad; V aporta el contenido que finalmente se mezcla.
1Proyectar
X
Qqueries
Kkeys
Vvalues

Tres proyecciones aprendidas de la misma representación.

2Comparar
S = QKT / √dk

Cada fila compara una query con todas las keys.

3Normalizar
A = softmax(S)

Los pesos de cada fila quedan normalizados y suman 1.

4Mezclar valores
Z = AV
α₁v₁+α₂v₂+z

La salida es una combinación ponderada de los values.

Attention(Q, K, V) = softmax(QKT / √dk) V
Los colores son una guía pedagógica, no pesos de un modelo concreto. La operación real se ejecuta sobre matrices.

El producto QKᵀ calcula compatibilidades entre posiciones. El factor √d_k controla la escala de los logits. softmax convierte cada fila en pesos normalizados. La multiplicación por V produce una combinación ponderada de información.

El visualizador de atención Transformer permite cambiar scores, máscara causal y valores para observar directamente cómo esas operaciones modifican los pesos y la salida de una cabeza.

La interpretación “cada palabra mira a todas las demás” es útil, aunque incompleta. En realidad, cada cabeza aprende proyecciones distintas y puede especializarse en patrones diferentes.

3. Multi-head attention

En lugar de ejecutar una sola atención con toda la dimensión, el bloque divide la representación en varias cabezas. Cada cabeza calcula sus propias matrices Q, K y V.

MULTI-HEAD ATTENTION
Varias proyecciones leen relaciones distintas antes de recombinarse
Cada cabeza recibe la misma secuencia, aprende sus propias proyecciones Q/K/V y produce una salida contextual. Después se concatenan todas las cabezas y una proyección WO las vuelve a mezclar.
CADA CABEZAheadi = Attention(QWiQ, KWiK, VWiV)
SALIDAMultiHead = Concat(head₁, …, headₕ) WO
COMPARTENla misma secuencia de entrada
NO COMPARTENlas proyecciones Q/K/V
NO HAY ROLES FIJOSuna cabeza no tiene una semántica universal preasignada
Los patrones de las matrices son ilustrativos. La arquitectura permite subespacios de atención distintos; no implica que una cabeza concreta tenga siempre una función interpretable y estable.

Una cabeza puede capturar dependencias locales. Otra puede relacionar entidades alejadas. Otra puede ayudar a copiar estructura o seguir delimitadores. No existe una asignación fija y universal, pero la separación aumenta la capacidad de representar relaciones simultáneas.

4. Máscara causal en modelos generativos

Un decoder autoregresivo no debe ver el futuro durante el entrenamiento. Se aplica una máscara triangular que impide a la posición t atender a tokens posteriores.1

DECODER AUTOREGRESIVO
La máscara causal separa paralelismo de acceso al futuro
Durante el entrenamiento se calculan muchas posiciones a la vez, pero cada query solo puede atender a su propio prefijo.
keys →12345
queries ↓12345
×××× ××× ×× ×
visiblebloqueado: token futuro
ENTRENAMIENTO
Paralelo en filas

Las posiciones conocidas del lote se calculan juntas. La máscara invalida los logits que apuntan al futuro antes de aplicar softmax.

q₁q₂q₃q₄q₅
GENERACIÓN
Secuencial en tokens nuevos

El token siguiente todavía no existe. La caché KV reutiliza keys y values del prefijo para no recomputarlos en cada paso.

t₁t₂t₃t₄ ?
Contrato: posición t puede usar 1…t; nunca t+1…n.

Así, aunque todas las posiciones del lote se procesen en paralelo durante el entrenamiento, cada predicción respeta el mismo contrato que existirá al generar: solo puede usar el prefijo disponible.

Durante la inferencia, la generación sigue siendo secuencial porque el token siguiente no existe hasta que se elige el anterior. La caché KV evita recalcular claves y valores de todo el prefijo en cada paso. El explorador de KV cache y contexto hace visible cómo crece esa memoria con la longitud, GQA/MQA, precisión y concurrencia.

5. La red feed-forward

Después de la atención, cada posición atraviesa una red densa aplicada de forma independiente y con los mismos parámetros para todas las posiciones de esa capa.1

RED FEED-FORWARD · POR POSICIÓN
La atención mezcla información entre tokens; la FFN transforma cada posición por separado
Después de la atención, cada vector pasa por la misma transformación de la capa: expansión a una dimensión interna, no linealidad o puerta y proyección de vuelta a dmodel. Durante esta operación no hay mezcla lateral entre posiciones.
ATTENTIONmezcla entre posiciones
Una posición puede incorporar información de otras posiciones.
FFNtransformación independiente
Cada posición se transforma de forma independiente, pero comparte los parámetros de esa FFN dentro de la capa.
FORMA GENERAL FFN(x) = W₂ σ(W₁x + b₁) + b₂ Transformer original: ReLU entre dos proyecciones; dmodel=512 y dff=2048. Las arquitecturas modernas cambian anchos y pueden usar variantes con puertas como SwiGLU.
ATTENTIONdecide de qué posiciones recoger información
FFNtransforma localmente la representación resultante
PARÁMETROSse comparten entre posiciones de una capa; cambian entre capas

En modelos grandes, esta parte contiene una fracción importante de los parámetros y del cómputo. Arquitecturas modernas utilizan activaciones y puertas como GELU, SwiGLU o variantes equivalentes. Los modelos mixture-of-experts sustituyen una única red densa por varios expertos y enrutan cada token hacia una parte de ellos.

6. Residuales y normalización

Cada subbloque no sustituye sin más la representación que recibe: aprende una transformación sobre una ruta residual que conserva la entrada. La posición de la normalización determina dónde se modifica la señal antes de continuar por la pila de capas.

RESIDUAL + NORMALIZACIÓN
La posición de la normalización cambia la ruta por la que viaja la representación
Cada subcapa aprende una transformación F —atención o FFN— mientras una ruta residual conserva la representación de entrada. Post-norm y pre-norm colocan la normalización en puntos distintos de ese mismo circuito.
POST-NORM · TRANSFORMER ORIGINAL y = Norm(x + F(x))
La ruta de identidad también atraviesa la normalización antes de llegar a la siguiente capa.
PRE-NORM y = x + F(Norm(x))
La identidad queda como camino directo entre capas; la normalización vive dentro de la rama que aprende la corrección.
SE REPITEuna vez alrededor de atención y otra alrededor de la FFN
NO CAMBIAla idea residual: la subcapa aprende una corrección sobre x
SÍ CAMBIAdónde se normaliza la señal que atraviesa el bloque
El Transformer de 2017 usó post-norm. Xiong et al. analizaron por qué la colocación de LayerNorm afecta a la estabilidad de optimización y mostraron gradientes mejor comportados al inicio para pre-norm en su análisis y experimentos; eso no implica que una variante sea universalmente superior en cualquier arquitectura.

El Transformer original usó post-norm: suma primero la salida de la subcapa a la ruta residual y normaliza después.1 En pre-norm, la normalización se aplica dentro de la rama de la subcapa, dejando una ruta de identidad directa entre capas. El análisis de Xiong et al. muestra por qué esa colocación cambia el comportamiento de los gradientes al inicio del entrenamiento y puede mejorar la estabilidad de optimización.3

La misma estructura residual rodea tanto la atención como la red feed-forward. El detalle exacto de la normalización cambia entre familias, pero la idea central se mantiene: cada subcapa aprende una corrección sobre una representación que también puede avanzar por la ruta residual.

Encoder, decoder y encoder-decoder

FAMILIAS TRANSFORMER
Encoder, decoder y encoder-decoder: cambia el contrato de atención
Comparten bloques Transformer, pero no exponen la misma información a cada posición. La diferencia está en qué puede atender a qué y en cómo fluye la información entre entrada y salida.
ENCODERRepresentar todo el input
ABCD
self-attention bidireccionalrepresentaciones contextualizadas

Cada posición puede combinar información de todo el input. Q, K y V proceden de la misma secuencia.

DECODERGenerar sin mirar el futuro
x₁x₂x₃x₄
self-attention causalp(xt+1 | x≤t)

Cada posición solo puede usar el prefijo disponible. Ese mismo contrato sostiene la generación autoregresiva.

ENCODER-DECODERRepresentar entrada y generar salida
ENCODER
ABCD
memoria del input · K,V
Q cross-attention K,V
DECODER
y₁y₂y₃
self-attention causal

Las queries vienen del decoder; keys y values vienen del encoder. Así la salida puede consultar todo el input mientras mantiene causalidad sobre sus propios tokens.

EncoderVisibilidad completa dentro del input.
DecoderVisibilidad causal dentro de la salida.
Encoder-decoderCausalidad en la salida + cross-attention sobre todo el input.
Idea clave: “Transformer” no describe un único diagrama. Describe bloques reutilizables cuyo patrón de atención cambia según la tarea.

BERT popularizó el uso de encoders con contexto bidireccional para producir representaciones útiles en clasificación, extracción y comprensión.4 Las familias GPT popularizaron el decoder causal para generación. El Transformer original combinaba ambos: el encoder representaba toda la entrada y el decoder generaba la salida consultando esas representaciones mediante cross-attention.1

“Transformer” no implica por tanto un único diagrama. Describe una familia de bloques y contratos de atención.

Por qué desplazó a las redes recurrentes

Las RNN y LSTM actualizan un estado paso a paso. Eso introduce una dependencia secuencial difícil de paralelizar y obliga a transportar información lejana a través de muchos pasos.

RECURRENCIA → DEPENDENCIA SECUENCIAL · ATENCIÓN → INTERACCIÓN DIRECTA
Por qué la atención cambió la ruta entre posiciones
La diferencia no es que una RNN “no pueda recordar” y un Transformer sí. Es la geometría del cómputo: una red recurrente propaga estado paso a paso; self-attention puede conectar dos posiciones conocidas dentro de una sola capa y procesar esas posiciones en paralelo.
PARALELISMOdurante entrenamiento, las posiciones conocidas de una capa de atención pueden calcularse juntas; la recurrencia introduce una dependencia paso a paso
CAMINO CORTOuna relación distante no necesita atravesar una cadena de estados recurrentes dentro de la capa
PRECIOla atención densa compara pares de posiciones: gana paralelismo y camino corto, pero introduce la matriz n × n explicada en la sección siguiente
IMPORTANTEEsto describe el cómputo dentro de una capa sobre posiciones ya conocidas. Un decoder autoregresivo sigue generando tokens nuevos secuencialmente: el token t+1 no existe hasta decidir t.

La ventaja aparece sobre posiciones ya conocidas durante el entrenamiento: la atención reduce el número de operaciones secuenciales dentro de una capa y acorta el camino entre posiciones distantes. El precio es la interacción densa entre pares, que se vuelve importante al crecer el contexto.

El coste de la atención

Para una secuencia de longitud n, la matriz QKᵀ tiene n × n elementos. Su memoria y parte del cómputo crecen de forma cuadrática con la longitud.

Eso no significa que todo el coste del modelo sea siempre O(n²). Las proyecciones y redes feed-forward también pesan, y las implementaciones optimizadas evitan materializar ciertos intermedios. Pero el crecimiento de la interacción entre todos los pares sigue siendo un límite estructural para contextos muy largos.

COSTE DE ATENCIÓN DENSA
La longitud crece linealmente; las interacciones por pares, cuadráticamente
En self-attention densa, cada una de las n queries se compara con n keys. El cuello estructural aparece en la matriz de scores n × n, no en una afirmación de que todo el Transformer cueste siempre O(n²).
n = 416 scores

4 queries × 4 keys = 16 compatibilidades.

2× tokens4× scores
n = 864 scores

8 queries × 8 keys = 64 compatibilidades.

Qué crece con n
INTERACCIÓN ALL-TO-ALLscores de atención · ~ n²

Para dimensiones fijas por cabeza, el trabajo de comparar todas las posiciones entre sí crece cuadráticamente con la longitud.

OTROS BLOQUESproyecciones + FFN · ~ n

Con ancho del modelo fijo, estas operaciones se aplican por posición. Por eso el coste total no se resume correctamente como “todo es O(n²)”.

KERNEL EXACTOFlashAttention · menos tráfico de memoria

Usa tiling para no materializar toda la matriz de atención en HBM y reducir lecturas/escrituras. Sigue calculando atención densa exacta.

Cuando n crece, hay varios puntos del espacio de diseño
CAMBIAR EL PATRÓNatención local o dispersareduce qué pares interactúan
REDUCIR LO QUE ENTRAretrieval, compresión, memoria externaevita atender a contexto irrelevante
CAMBIAR LA ARQUITECTURASSM e híbridosexploran otra dinámica de secuencia
n × n ES EL OBJETO CLAVEla matriz de scores representa interacciones entre pares de posiciones
OPTIMIZAR MEMORIA ≠ CAMBIAR EL PATRÓNFlashAttention mejora el movimiento de datos sin convertir la atención densa exacta en atención lineal
O(n²) NO DESCRIBE TODO EL MODELOFFN, proyecciones y otros componentes también contribuyen al coste total

Las líneas de trabajo incluyen:

  • atención local o dispersa
  • compresión y memoria externa
  • recuperación de fragmentos relevantes
  • kernels más eficientes
  • modelos de espacio de estados
  • arquitecturas híbridas

Mamba mostró que una familia de modelos de espacio de estados selectivos podía procesar secuencias con crecimiento lineal y mantener capacidades competitivas en varios dominios.6 Eso no convierte al Transformer en obsoleto. Abre otro punto del espacio de diseño.

Transformers más allá del texto

La arquitectura trabaja con secuencias de vectores, no exclusivamente con palabras.

Vision Transformer divide una imagen en parches, proyecta cada parche a un vector y aplica un encoder Transformer.5 En audio pueden usarse frames o tokens acústicos. En vídeo se combinan estructura espacial y temporal. En modelos multimodales, texto, imagen y audio pueden alinearse en espacios compartidos o conectarse mediante atención cruzada.

La serie Multimodalidad en IA generativa desarrolla esas decisiones.

Qué no explica la arquitectura por sí sola

Conocer el Transformer no basta para explicar el comportamiento de un modelo. También importan:

  • los datos de preentrenamiento
  • el objetivo de pérdida
  • el tokenizador
  • la escala y el presupuesto de cómputo
  • el ajuste por instrucciones
  • la optimización por preferencias
  • el contexto y las tools durante la inferencia

Dos modelos con bloques parecidos pueden comportarse de forma muy distinta por el resto del sistema.

Dónde profundizar en 5sigmas

Preguntas frecuentes

¿La atención es lo mismo que memoria?

No. La atención combina representaciones disponibles en el contexto. Una caché KV conserva claves y valores para reutilizarlos durante la generación, pero no equivale a memoria persistente ni garantiza recordar información entre sesiones.

¿Por qué se divide por la raíz de la dimensión?

Cuando la dimensión de las claves crece, el producto escalar tiende a aumentar su varianza. Dividir por √d_k evita logits demasiado extremos y mantiene una región de gradiente más útil para softmax.

¿Todos los Transformers generan texto?

No. Un encoder puede producir representaciones o clasificaciones. Un Vision Transformer puede clasificar imágenes. La generación autoregresiva es una configuración concreta, no una propiedad obligatoria.

¿Un contexto mayor siempre mejora el resultado?

No. Aumenta la información disponible, pero también el coste y la dificultad de localizar la evidencia relevante. La calidad depende de la posición, el ruido, el entrenamiento para contexto largo y la estrategia de recuperación.

Fuentes primarias