Sesión 9: Componentes del Transformer

1. Logro de la sesión

Profundizar en los componentes internos del transformer para diagnosticar y optimizar modelos.


2. Marco y alcance

Esta sesión combina teoría, formalización matemática y decisiones de ingeniería para construir soluciones NLP robustas y reproducibles.

Dimensión Pregunta guía Entregable esperado
Lingüística ¿Qué fenómeno modelamos? Definición operativa del problema
Estadística ¿Qué objetivo y supuestos usamos? Modelo con límites explícitos
Ingeniería ¿Cómo aseguramos reproducibilidad? Pipeline versionado y trazable
Producto ¿Qué error es tolerable? Métricas y SLA alineados

3. Fundamentos conceptuales

3.1 Proyecciones Q,K,V

Transformaciones lineales que definen consulta, clave y valor.

Implicaciones prácticas:

3.2 Máscara causal

Evita fuga de información futura en decodificación.

Implicaciones prácticas:

3.3 Padding mask

Ignora tokens de relleno para atención válida.

Implicaciones prácticas:

3.4 FFN posicional

No linealidad token a token tras atención.

Implicaciones prácticas:

3.5 Pre-norm vs post-norm

Afecta estabilidad en entrenamiento profundo.

Implicaciones prácticas:

3.6 Dropout en atención

Regularización para evitar sobreajuste.

Implicaciones prácticas:

3.7 Inicialización y escala

Impactan convergencia y saturación.

Implicaciones prácticas:

3.8 Depuración por activaciones

Inspección de atención y normas para detectar fallos.

Implicaciones prácticas:


4. Fundamentos matemáticos

Probabilidad de secuencia:

\[P(w_{1:n}) = \prod_{t=1}^{n} P(w_t \mid w_{1:t-1})\]

Objetivo de entrenamiento regularizado:

\[\min_{\theta} \frac{1}{N}\sum_{i=1}^{N}\mathcal{L}(f_\theta(x_i), y_i) + \lambda\,\Omega(\theta)\]

Entropía cruzada multiclase:

\[\mathcal{L}_{CE} = -\sum_{c=1}^{C} y_c\log(\hat{y}_c)\]

Perplejidad:

\[PP = \exp\left(-\frac{1}{N}\sum_{t=1}^{N}\log P(w_t\mid w_{<t})\right)\]

Relación sesgo-varianza (forma conceptual):

\[Error_{gen} = Error_{train} + Error_{complejidad}\]

5. Historia y protagonistas

NLP moderno es acumulativo: avances teóricos, de cómputo y de evaluación.

Investigador/a Contribución relacionada Lectura en esta sesión
Jimmy Lei Ba Layer normalization. Referente para contextualizar decisiones metodológicas actuales
Geoffrey Hinton Base de regularización y aprendizaje profundo. Referente para contextualizar decisiones metodológicas actuales
Llion Jones Contribuciones al paper transformer. Referente para contextualizar decisiones metodológicas actuales
Aidan Gomez Variantes y prácticas de entrenamiento. Referente para contextualizar decisiones metodológicas actuales

Línea temporal breve:


6. Metodología y pipeline

6.1 Definir caso de uso y variable objetivo.

Control mínimo de calidad:

6.2 Establecer corpus y criterios de calidad.

Control mínimo de calidad:

6.3 Diseñar preprocesamiento reproducible.

Control mínimo de calidad:

6.4 Construir baseline interpretable.

Control mínimo de calidad:

6.5 Entrenar modelo principal de sesión.

Control mínimo de calidad:

6.6 Validar con métricas técnicas y de negocio.

Control mínimo de calidad:

6.7 Analizar errores críticos.

Control mínimo de calidad:

6.8 Planificar despliegue y monitoreo.

Control mínimo de calidad:


7. Evaluación y validación

Escenario Métricas sugeridas Criterio de interpretación
Clasificación F1 macro, precisión, recall Evitar depender solo de accuracy
Etiquetado secuencial F1 por clase/entidad Reportar clases raras por separado
Generación BLEU/ROUGE + evaluación humana Fluidez no garantiza fidelidad factual
Operación Latencia p95, throughput, costo Score alto sin SLA no es suficiente

Principios de evaluación:


8. Casos aplicados y decisiones de producto

8.1 Atención al cliente e intención

Checklist de despliegue:

8.2 Extracción de entidades en documentos

Checklist de despliegue:

8.3 Resumen y control de factualidad

Checklist de despliegue:

8.4 Búsqueda semántica y recuperación

Checklist de despliegue:

8.5 Moderación de contenido

Checklist de despliegue:

8.6 Asistentes internos con trazabilidad

Checklist de despliegue:


9. Implementación orientativa en Python

import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.linear_model import LogisticRegression
from sklearn.pipeline import Pipeline
from sklearn.metrics import f1_score

df = pd.DataFrame({
    "texto": ["consulta urgente", "mensaje informativo", "reclamo de servicio", "agradecimiento"],
    "label": [1, 0, 1, 0],
})

X_train, X_test, y_train, y_test = train_test_split(
    df["texto"], df["label"], test_size=0.5, random_state=42, stratify=df["label"]
)

pipe = Pipeline([
    ("tfidf", TfidfVectorizer(ngram_range=(1, 2))),
    ("clf", LogisticRegression(max_iter=1000)),
])

pipe.fit(X_train, y_train)
pred = pipe.predict(X_test)
print("F1:", f1_score(y_test, pred, zero_division=0))

10. Glosario técnico mínimo


Referencias bibliográficas principales

  1. Jurafsky, D., & Martin, J. H. Speech and Language Processing.
  2. Manning, C., Raghavan, P., & Schutze, H. Introduction to Information Retrieval.
  3. Eisenstein, J. Introduction to Natural Language Processing.
  4. Goldberg, Y. Neural Network Methods for NLP.
  5. Goodfellow, I., Bengio, Y., & Courville, A. Deep Learning.
  6. Vaswani, A., et al. (2017). Attention Is All You Need.
  7. Devlin, J., et al. (2019). BERT: Pre-training of Deep Bidirectional Transformers.
  8. Raffel, C., et al. (2020). Exploring the Limits of Transfer Learning with T5.
  9. Hu, E., et al. (2021). LoRA: Low-Rank Adaptation of Large Language Models.
  10. Conneau, A., et al. (2020). Cross-lingual Representation Learning at Scale.