📚 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:
- Pre-training: aprende de Internet (billones de palabras)
- SFT (Supervised Fine-Tuning): aprende a conversar con ejemplos
- 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.
| Tipo | Divide | Cuándo se usa |
|---|---|---|
| DDP (Data Parallel) | Datos: cada GPU procesa batch distinto | Modelos que caben en 1 GPU |
| TP (Tensor Parallel) | Capas: parte la matriz entre GPUs | Modelos medianos (7-70B) |
| PP (Pipeline Parallel) | Capas: cada GPU tiene capas distintas | Modelos grandes |
| FSDP | Parámetros: sharding de pesos, activaciones, gradientes | Alternativa a TP+PP |
| ZeRO (Stages 1-3) | Estados del optimizer, gradientes, parámetros | Base 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
- Next-token prediction no busca verdad: el objetivo es maximizar P(token | contexto). No hay penalización por falsedades, solo por baja probabilidad.
- Knowledge cutoff: el modelo solo sabe lo que había en sus datos de entrenamiento. No tiene acceso a información nueva.
- Overconfidence: para preguntas raras, todas las opciones tienen baja probabilidad, pero softmax siempre elige una con confianza alta.
- Memorización vs generalización: hechos frecuentes se memorizan; hechos raros se "reconstruyen" mezclando patrones.
- Ambigüedad del contexto: "El banco..." sin más contexto: el modelo distribuye 50/50 entre financiero y parque.
Soluciones parciales
| Técnica | Cómo ayuda |
|---|---|
| RAG (Retrieval Augmented Generation) | Añadir búsqueda en BD antes de generar |
| Tool use | Dejar que el modelo ejecute código (cálculos) |
| Chain-of-Thought | Forzar razonamiento paso a paso |
| Temperatura baja | Reduce creatividad (pero también variedad) |
| Verificación externa | Validar 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