> ## Documentation Index
> Fetch the complete documentation index at: https://docs.monostate.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Hyperparámetros

> Los botones y controles del entrenamiento

# Hyperparámetros

Los hyperparámetros controlan cómo aprende tu modelo. Piensa en ellos como las configuraciones de tu entrenamiento.

## Los Tres Esenciales

### Learning Rate

Qué tan grandes son los pasos al actualizar el modelo.

* **Demasiado alto (0.01)**: El modelo salta alrededor, nunca converge
* **Demasiado bajo (0.00001)**: Toma una eternidad entrenar
* **Perfecto (0.00002)**: Mejora constante

Valores comunes:

* Fine-tuning: 2e-5 a 5e-5
* Entrenamiento desde cero: 1e-4 a 1e-3

### Batch Size

Cuántos ejemplos procesar antes de actualizar weights.

* **Pequeño (8)**: Más actualizaciones, menos estable, necesita menos memoria
* **Grande (128)**: Menos actualizaciones, más estable, necesita más memoria

Valores comunes:

* GPU limitada: 8-16
* Buena GPU: 32-64
* Múltiples GPUs: 128+

### Epochs

Cuántas veces pasar por todo tu dataset.

* **Muy pocos (1)**: Underfitting, el modelo no ha aprendido lo suficiente
* **Demasiados (100)**: Overfitting, memorizó datos de entrenamiento
* **Perfecto (3-10)**: Buen equilibrio

Observa validation loss - cuando deje de mejorar o empeore, detente.

## Configuraciones Secundarias

### Warmup Steps

Aumentar learning rate gradualmente al inicio.

```
Steps 0-500: Learning rate va de 0 → 2e-5
Steps 500+: Learning rate permanece en 2e-5
```

Previene inestabilidad inicial.

### Weight Decay

Regularización que impide que los weights se vuelvan demasiado grandes.

* Predeterminado: 0.0 (para fine-tuning LLM)
* Sin regularización: 0
* Regularización fuerte: 0.1

### Gradient Accumulation

Simular batches más grandes en hardware limitado.

```
Tamaño efectivo del batch = batch_size × gradient_accumulation_steps
```

Ejemplo: batch\_size=4, accumulation=8 → actúa como batch\_size=32

## Valores Predeterminados Específicos por Tarea

### Text Classification

```python theme={null}
learning_rate = 5e-5
batch_size = 8
epochs = 3
warmup_ratio = 0.1
```

### Language Model Fine-tuning

```python theme={null}
learning_rate = 3e-5  # Predeterminado AITraining
batch_size = 2
epochs = 1
warmup_ratio = 0.1
weight_decay = 0.0
gradient_accumulation = 4
```

### Image Classification

```python theme={null}
learning_rate = 1e-4
batch_size = 32
epochs = 10
warmup_ratio = 0.05
```

## Cuándo Ajustar

**¿Learning rate demasiado alto?**

* Loss explota o se vuelve NaN
* Accuracy salta alrededor salvajemente
* Nunca converge

**¿Learning rate demasiado bajo?**

* Loss apenas disminuye
* El entrenamiento toma una eternidad
* Atascado en rendimiento pobre

**¿Problemas con batch size?**

* Sin memoria → reduce batch size
* Entrenamiento inestable → aumenta batch size
* Usa gradient accumulation si memoria limitada

## Valores de Inicio Rápido

¿No estás seguro por dónde empezar? Prueba estos:

```python theme={null}
# Valores predeterminados seguros para la mayoría de tareas
learning_rate = 2e-5
batch_size = 16
epochs = 3
warmup_ratio = 0.1
weight_decay = 0.0
```

Luego ajusta basándote en lo que ves.

## Configuraciones de Evaluación

Controla cuándo y cómo tu modelo es evaluado durante el entrenamiento:

| Parámetro               | Descripción                                                    | Predeterminado |
| ----------------------- | -------------------------------------------------------------- | -------------- |
| `eval_strategy`         | Cuándo evaluar (`epoch`, `steps`, `no`)                        | `epoch`        |
| `eval_batch_size`       | Tamaño del batch para evaluación                               | `8`            |
| `use_enhanced_eval`     | Habilitar métricas avanzadas (BLEU, ROUGE, etc.)               | `False`        |
| `eval_metrics`          | Métricas para computar (separadas por coma)                    | `perplexity`   |
| `eval_save_predictions` | Guardar predicciones del modelo                                | `False`        |
| `eval_benchmark`        | Ejecutar benchmark estándar (mmlu, hellaswag, arc, truthfulqa) | `None`         |

## Consejos Pro

1. **Comienza con predeterminados** - No pienses demasiado inicialmente
2. **Cambia uno a la vez** - Más fácil ver qué ayuda
3. **Registra todo** - Rastrea lo que funciona para tus datos
4. **Usa conjunto de validación** - Monitorea overfitting

## Próximos Pasos

<CardGroup cols={2}>
  <Card title="Métricas de Evaluación" href="/foundations/evaluation-metrics">
    Mide tu éxito
  </Card>

  <Card title="Cómo Funciona el Entrenamiento" href="/foundations/how-training-works">
    Entiende el proceso
  </Card>
</CardGroup>
