📚 Entrenamiento

Cómo se ajustan los millones de parámetros para que el modelo aprenda a predecir la siguiente palabra, y por qué a veces se inventa cosas.

Ajustar los parámetros

El entrenamiento es el proceso de ajustar los millones de parámetros para que el modelo acierte la siguiente palabra.

💡 Imagina a un estudiante (el modelo) que tiene que hacer un examen de rellenar la palabra que falta en millones de frases. Cada vez que falla, ajusta ligeramente sus "conexiones cerebrales" (parámetros) para acertar la próxima vez.

3 fases del entrenamiento moderno:

  1. Pre-training: aprende de Internet (billones de palabras)
  2. SFT (Supervised Fine-Tuning): aprende a conversar con ejemplos
  3. RLHF / GRPO: aprende qué respuestas prefiere un humano

Pre-training (Next Token Prediction)

Dataset: CommonCrawl + libros + artículos + código (~15T tokens)
Objetivo: predecir el siguiente token

Cada batch:
  1. Forward: calcula P(token_i | token_{<i}) para todos los tokens
  2. Loss: cross-entropy entre predicción y token real
  3. Backward: gradiente de la pérdida respecto a cada parámetro
     (regla de la cadena, backpropagation)
  4. Optimizer step: ajustar parámetros (AdamW)

Coste estimado:
  LLaMA 3 70B: ~6.4M GPU-hours en H100 (~3 meses con 3000 GPUs)
  Coste: ~$50-100M USD

Secuencia completa en cada paso:

input_ids → Forward → logits → Loss → loss_value
labels → Backward → gradients → Optimizer → pesos w'

SFT (Fine-tuning supervisado)

Dataset: pares (instrucción, respuesta ideal) — ~100k-1M ejemplos
Objetivo: que el modelo imite las respuestas correctas

Ejemplo:
  Input: "Explica la fotosíntesis en una frase"
  Target: "Las plantas convierten luz solar en energía química"

Coste: horas o días en una GPU (vs meses para pre-training)

RLHF / GRPO (Alineamiento)

1. Generar varias respuestas para un prompt
2. Un reward model (modelo entrenado para evaluar) las puntúa
3. El LLM se ajusta para maximizar la recompensa esperada
   (PPO: Proximal Policy Optimization, o GRPO: Group Relative Policy Opt.)

GRPO (DeepSeek R1):
  - Genera un grupo de respuestas para el mismo prompt
  - Puntúa cada una
  - Actualiza el modelo para favorecer las mejor puntuadas
  - No necesita reward model externo (más eficiente que RLHF)

Training vs Inference cost

Training:
  - Forward + Backward + Optimizer step
  - Necesita almacenar activaciones (muchísima VRAM)
  - Necesita almacenar gradientes
  - Necesita almacenar estados del optimizer (Adam: 2× params)
  - Ej: LLaMA 70B training necesita ~500 GB de VRAM

Inference:
  - Solo Forward
  - No necesita gradientes ni optimizer states
  - Ej: LLaMA 70B inference en Q4_K_M necesita ~40+5 GB
  - Ratio: training cuesta 10-20× más que inference

Paralelismo de entrenamiento

Los modelos más grandes no caben en una sola GPU. Por eso se usan técnicas de paralelismo para distribuir el trabajo entre muchas GPUs.

TipoDivideCuándo se usa
DDP (Data Parallel)Datos: cada GPU procesa batch distintoModelos que caben en 1 GPU
TP (Tensor Parallel)Capas: parte la matriz entre GPUsModelos medianos (7-70B)
PP (Pipeline Parallel)Capas: cada GPU tiene capas distintasModelos grandes
FSDPParámetros: sharding de pesos, activaciones, gradientesAlternativa a TP+PP
ZeRO (Stages 1-3)Estados del optimizer, gradientes, parámetrosBase de FSDP

En la práctica, los entrenamientos de modelos grandes combinan varias técnicas simultáneamente. Por ejemplo, LLaMA 3 405B usó TP=8, PP=8, DP=1024 en 16,384 GPUs H100, con comunicación a través de NVLink y redes InfiniBand.

¿Por qué alucinan?

Los LLMs no saben qué es verdad. Solo saben qué palabra es más probable estadísticamente.

⚠️ Cuando un LLM dice algo falso con total confianza, es porque esa secuencia de palabras era probable según su entrenamiento. No "miente" porque no tiene intención. Alucina.

Ejemplo:

Prompt: "¿Qué tratado firmó Napoleón con la reina de Marte?"

El modelo podría decir: "El Tratado de Olympus Mons"

porque "Tratado de..." + "Napoleón" + "Marte" → secuencia plausible estadísticamente

Causas técnicas

  1. Next-token prediction no busca verdad: el objetivo es maximizar P(token | contexto). No hay penalización por falsedades, solo por baja probabilidad.
  2. Knowledge cutoff: el modelo solo sabe lo que había en sus datos de entrenamiento. No tiene acceso a información nueva.
  3. Overconfidence: para preguntas raras, todas las opciones tienen baja probabilidad, pero softmax siempre elige una con confianza alta.
  4. Memorización vs generalización: hechos frecuentes se memorizan; hechos raros se "reconstruyen" mezclando patrones.
  5. Ambigüedad del contexto: "El banco..." sin más contexto: el modelo distribuye 50/50 entre financiero y parque.

Soluciones parciales

TécnicaCómo ayuda
RAG (Retrieval Augmented Generation)Añadir búsqueda en BD antes de generar
Tool useDejar que el modelo ejecute código (cálculos)
Chain-of-ThoughtForzar razonamiento paso a paso
Temperatura bajaReduce creatividad (pero también variedad)
Verificación externaValidar hechos contra fuentes externas

Métrica de calibración

La calibración mide si la confianza del modelo coincide con su precisión.

Perfect calibration: cuando el modelo dice P=0.9, acierta el 90% de las veces.

Expected Calibration Error (ECE) = Σ |accuracy(bin) - confidence(bin)|

Ejemplo: de todas las veces que el modelo asigna P=0.7, solo acierta el 40%
  → ECE = |0.4 - 0.7| = 0.3 (mal calibrado)

Investigación sobre alucinaciones (2025-2026)

  • Model editing: modificar pesos específicos para corregir hechos falsos (ROME, MEMIT, FT)
  • Contrastive decoding: restar la distribución de un modelo más pequeño para reducir tokens "demasiado obvios"
  • Entropy-based detection: detectar alucinaciones midiendo la entropía de la distribución de atención