Contenido del curso

- Mecanismo de Atención y Arquitectura Transformer

🧠 Mecanismo de Atención y Arquitectura Transformer

Odisea Algorítmica: De la Regresión al Aprendizaje Profundo — En esta lección exploramos el corazón de los modelos modernos de lenguaje: la atención escalada de producto punto (scaled dot‑product attention), la atención multi‑cabeza y la arquitectura Transformer. Comprenderás por qué estas innovaciones superan a las RNN/LSTM y cómo dieron origen a modelos como GPT.

🎯 Objetivo de la lección: Al finalizar serás capaz de describir el mecanismo de atención (incluyendo su formulación matemática básica), explicar las ventajas de paralelización del Transformer y conectar estos conceptos con el escalado a modelos grandes (GPT, BERT).

1. Atención Escalada de Producto Punto

La atención escalada de producto punto (Scaled Dot‑Product Attention) es el bloque fundamental. Permite que cada token “mire” a los demás tokens de la secuencia y pondere su relevancia.

🔍 Fórmula conceptual

Dada una consulta Q, una clave K y un valor V (todos vectores), la atención se calcula como:

Atención(Q, K, V) = softmax( Q · Kᵀ / √dₖ ) · V
  • Q · Kᵀ — producto punto entre consulta y todas las claves (similaridad).
  • √dₖ — factor de escala (dₖ = dimensión de las claves). Evita que los productos punto crezcan demasiado.
  • softmax — normaliza los pesos de atención (suma = 1).
  • V — valores ponderados por los pesos de atención.
🧪 Intuición: “Cada token pregunta: ¿qué tan relevante eres para mí? (Q·K) y luego mezcla la información de los tokens más relevantes (V)”.

2. Atención Multi‑Cabeza (Multi‑Head Attention)

En lugar de una sola atención, el Transformer emplea varias cabezas que aprenden diferentes relaciones contextuales en paralelo.

  • Dividir Q, K, V en h subespacios (por ejemplo, 8 o 16 cabezas).
  • Atención escalada en cada cabeza de forma independiente.
  • Concatenar las salidas y proyectarlas con una capa lineal.

Ventajas de las cabezas múltiples

  • Capturan dependencias sintácticas, semánticas y posicionales simultáneamente.
  • Mayor riqueza representacional sin incrementar el coste computacional total de forma lineal.
  • Mejor generalización en tareas de lenguaje.

3. Arquitectura Transformer (Codificador‑Decodificador)

El Transformer original (Vaswani et al., 2017) se compone de dos pilares:

ComponenteFunción
Codificador (Encoder)Procesa la secuencia de entrada (contexto completo). Capas: atención multi‑cabeza + red feed‑forward + conexiones residuales + layer norm.
Decodificador (Decoder)Genera la salida token a token. Tiene atención enmascarada (no puede ver tokens futuros) y atención cruzada sobre el codificador.

Ambos módulos se apilan (ej. 6 capas en el modelo base). Cada capa contiene subcapas con conexiones residuales y normalización.

🧱 Posición de Embeddings

Como el Transformer no tiene recurrencia, necesita codificación posicional para inyectar información de orden. Se suman a los embeddings de entrada:

  • Codificaciones sinusoidales (frecuencias fijas) o
  • Embeddings posicionales aprendidos (como en GPT).

“Sin posición, un Transformer trataría ‘el gato persigue al perro’ igual que ‘perro el persigue gato al’”.

4. Ventajas sobre RNN/LSTM en Paralelización

Las RNN procesan tokens de forma secuencial (el paso t depende del estado t‑1). Esto impide el paralelismo en entrenamiento. El Transformer, en cambio, procesa toda la secuencia a la vez.

CaracterísticaRNN / LSTMTransformer
Paralelización❌ Secuencial (paso a paso)✅ Total (todos los tokens simultáneamente)
Dependencias largasLimitadas (desvanecimiento / explosión)🍃 Conexiones directas (atención)
Entrenamiento en GPUIneficiente (bajo uso)⚡ Altamente eficiente
EscalabilidadDifícil (secuencial)📈 Escala a modelos de cientos de miles de millones de parámetros

Gracias a la atención, cada token puede atender a cualquier otro en un solo paso, mientras que una RNN necesitaría tantos pasos como la distancia entre tokens.

5. Aplicación: Modelo de Lenguaje para Generación de Texto (GPT básico)

GPT (Generative Pre‑trained Transformer) es un decodificador Transformer entrenado para predecir la siguiente palabra. Ejemplo conceptual:

🔧 Ejemplo didáctico (GPT mini):

  • Entrada: “El gato está sobre la”
  • El modelo calcula atención multi‑cabeza entre todos los tokens previos (incluyéndose).
  • La última capa produce una distribución sobre el vocabulario: “alfombra” con probabilidad 0.45, “mesa” con 0.30, etc.
  • Selecciona (muestreo o argmax) y genera el siguiente token.

El entrenamiento se realiza con el objetivo de modelado de lenguaje autorregresivo (maximizar log‑verosimilitud de la secuencia).

# pseudocódigo conceptual de una pasada forward en GPT simple
def gpt_generar(contexto, modelo):
    for _ in range(max_len):
        logits = modelo(contexto)          # Transformer decodificador
        siguiente = muestrear(logits)      # token predicho
        contexto += [siguiente]
    return contexto

6. Conexión: Escalado a Modelos Grandes

El éxito del Transformer radica en su capacidad de escalar con más datos, más parámetros y más capas. Principios clave:

  • Leyes de escalado (Kaplan et al.): El rendimiento mejora de forma predecible al aumentar parámetros, datos y cómputo.
  • Arquitectura limpia: Sin recurrencia, sin cuellos de botella secuenciales → se puede distribuir en cientos de GPUs.
  • Modelos emblemáticos: GPT‑3 (175B), PaLM (540B), LLaMA‑3 (70B) — todos basados en Transformer.

El mismo mecanismo de atención que usamos para una frase de 10 tokens se aplica a contextos de 128k tokens (como en GPT‑4). La escalabilidad es posible por la atención eficiente (Flash Attention, sparse attention) y por la naturaleza matricial de las operaciones.

7. Resumen Visual (infografía conceptual)

🔹 Atención escalada

  • Q·K / √dₖ
  • Softmax → pesos
  • Ponderación de V

🔹 Multi‑cabeza

  • h espacios paralelos
  • Diferentes relaciones
  • Concatenación + proyección

🔹 Transformer

  • Encoder‑Decoder
  • Embeddings + posición
  • Paralelizable

🔹 GPT

  • Solo decodificador
  • Autoregresivo
  • Escalable

Para profundizar, explora la implementación real de nn.MultiheadAttention en PyTorch o el notebook original de “Attention is All You Need”. La base teórica aquí expuesta es el trampolín hacia modelos de lenguaje de última generación.

“La atención es todo lo que necesitas” — y ahora entiendes por qué.

Atención escalada de producto punto (scaled dot-product attention), multi-head attention. Arquitectura Transformer (codificador-decodificador). Posición de embeddings. Ventajas sobre RNN/LSTM en paralelización. Aplicación: modelo de lenguaje para generación de texto (GPT básico). Conexión: escalado a modelos grandes.
Calificación
0 0

No hay comentarios por ahora.