01 · Punto de partida
¿Y si el modelo tira para un lado?
En el Tema 36 el veredicto fue «válido con límites» o «rechazado»: el modelo verificado se parecía poco a la realidad. Antes de tirarlo, corresponde calibrar: mover sus parámetros dentro de rangos plausibles hasta que el error contra datos conocidos se achique.
Calibrar no es «tocar hasta que cierra». Es una búsqueda declarada: qué parámetros se mueven, en qué rango, contra qué datos y con qué riesgo de sobreajuste (quedar perfecto en el pasado e inútil en el futuro).
- ¿Qué parámetros se calibran y cuáles quedan fijos?
- ¿En qué rango físico tiene sentido moverlos?
- ¿Contra qué datos se ajusta y contra cuáles se valida?
- ¿El ajuste mejora el futuro o solo maquilla el pasado?
02 · Vocabulario mínimo
Parámetro, error y sobreajuste
Parámetro
Valor que configura el modelo: caudal, tasa de llegada, capacidad. Calibrar es elegirlo con datos.
Error
Distancia a los datos conocidos: MAE o sesgo del Tema 36. Calibrar es achicarlo sin trampas.
Sobreajuste
Modelo que memoriza el pasado: error cero en calibración y fracaso con datos nuevos.
| Decisión | Se calibra | No se calibra |
|---|---|---|
| Parámetros físicos | Dentro de rango medible (caudal 2–4) | Valores imposibles que «cierran» |
| Cantidad | Uno o dos a la vez | Todos juntos hasta memorizar ruido |
| Datos | Período de ajuste declarado | El período reservado para validar |
| Criterio | MAE en unidades reales | El gráfico «que se ve lindo» |
03 · Tres técnicas
Cómo se calibra sin maquillar
- 1Barrido declarado.
Probar valores en grilla dentro del rango y quedarse con el de menor error. Simple y auditable.
- 2Un parámetro a la vez.
Mover de a uno para entender qué hace cada uno antes de combinar.
- 3Reserva para validar.
Ajustar con un período y juzgar con otro intacto (backtesting del Tema 36).
Calibrar todo junto
Rápido y frágil
Mueve 6 parámetros hasta empatar el pasado. El error cae a cero porque memoriza ruido, no porque entienda.
Calibrar poco y reservar
Lento y robusto
Mueve 1–2 parámetros en rango físico y valida con datos nuevos. Menos brillo, más futuro.
- Calibración
- Ajuste de parámetros para acercar el modelo a datos conocidos.
- Rango plausible
- Intervalo físico o medido donde el parámetro tiene sentido.
- Sobreajuste
- Ajuste que memoriza ruido y falla con datos nuevos.
- Barrido
- Búsqueda en grilla de valores con error registrado.
04 · Protocolo
El ajuste en cinco pasos
Elegir pocos parámetros, acotar su rango, barrer con error registrado, validar con datos reservados y declarar valores finales con su error. El Tema 38 comparará ya calibrado contra la realidad.
05 · En Python
Barrer un parámetro y medir MAE
El barrido es un bucle honesto: cada valor candidato genera su serie y su error. Gana el menor, dentro del rango:
Python en tu navegador. Calibrar es un bucle con error, sin librerías externas.
real = [10, 12, 14, 16, 18]
def sim(base, tasa):
n, h = 8, []
for b in base:
n = n + tasa
h.append(n)
return h
def mae(r, s):
return sum(abs(a - b) for a, b in zip(r, s)) / len(r)
base = [0] * 5
for tasa in [1.0, 1.5, 2.0]:
print(tasa, round(mae(real, sim(base, tasa)), 2))
Elegir el ganador sin trampas
El mínimo se elige con min sobre la grilla declarada; el rango ya acota lo físicamente posible.
grilla = [1.0, 1.5, 2.0]
errores = [(t, mae(real, sim(base, t))) for t in grilla]
mejor = min(errores, key=lambda par: par[1])
print("mejor tasa:", mejor[0], "MAE:", round(mejor[1], 2))
06 · Exploración
Laboratorio: buscar la tasa justa
La curva oscura es el sistema real (tasa verdadera 2,0 más ruido). Tu modelo usa la tasa que elijas. Movela y observá cómo el MAE baja hasta el mínimo… y vuelve a subir si te pasás.
Calibrar la tasa
verdadera 2,0 · rango 0,5–3,5
Con tasa 1,0 el modelo subestima: el MAE avisa que falta calibrar.
Curva oscura con puntos: datos reales. Curva clara: modelo con tu tasa. El mínimo del error está cerca de la tasa verdadera.
Preguntas para explorar
- Bar ré la tasa de 0,5 a 3,5. ¿Dónde está el mínimo del MAE? ¿Coincide con la verdadera 2,0?
- Subí el ruido a 2. ¿El mínimo se vuelve más playo o más nítido? ¿Qué riesgo trae?
- Si calibrás con estos 12 días y validás con los mismos, ¿el MAE te dice la verdad sobre el futuro?
Ver respuestas sugeridas
- Cerca de 2,0: el error cae hasta ahí y vuelve a subir al pasarse. La curva en U es la firma de una calibración sana.
- Más playo: con mucho ruido varias tasas «empatan» y cualquiera parece buena. Ahí conviene calibrar poco y reservar datos.
- No: con los mismos datos el error es optimista. La prueba honesta usa días nuevos, como en el Tema 36.
07 · Comprensión
Confusiones frecuentes
«Calibrar es validar»
No: calibrar ajusta con datos conocidos; validar juzga con datos nuevos. Mezclarlos invalida el juicio.
«Más parámetros, mejor ajuste»
Mejor ajuste al pasado, peor futuro: cada parámetro extra memoriza un poco más de ruido.
«El mínimo de la grilla es la verdad»
Es el mejor dentro del rango y con esos datos. Con otro ruido u otro período, el mínimo se mueve.
«Si cierra, el parámetro es real»
Solo si cayó en rango plausible y sobrevive a datos nuevos. Un valor imposible que «cierra» es maquillaje.
08 · Práctica guiada
Ejercicios con Python
Ejercicio 1: medir el error de cada tasa
Barré tres tasas y anotá el MAE de cada una.
real = [10, 12, 14, 16, 18]
def sim(tasa):
n, h = 8, []
for _ in real:
n = n + tasa
h.append(n)
return h
for tasa in [1.0, 1.5, 2.0]:
err = sum(abs(a - b) for a, b in zip(real, sim(tasa))) / len(real)
print(tasa, round(err, 2))
Ver solución razonada
Da 5.0, 2.5 y 0.0: la tasa 2,0 empata perfecto porque el ejemplo no tiene ruido. Con ruido, el mínimo sería aproximado.
Ejercicio 2: elegir el ganador
Elegí la mejor tasa con min sobre errores ya calculados.
errores = [(1.0, 5.0), (1.5, 2.5), (2.0, 0.0)]
mejor = min(errores, key=lambda par: par[1])
print("mejor:", mejor)
Ver solución
Da mejor: (2.0, 0.0): el mínimo declarado, reproducible y auditable.
Ejercicio 3: partir ajuste y validación
Calibrá con los primeros 8 días y reservá los últimos 4 para el juicio.
Ver una posible respuesta
dias = list(range(12))
ajuste, reserva = dias[:8], dias[8:]
print("ajuste:", len(ajuste), "reserva:", len(reserva))
La calibración toca solo el ajuste; la reserva queda intacta hasta la validación del Tema 36.
09 · Síntesis
Ideas para recordar
- Calibrar es mover pocos parámetros, en rango plausible, para achicar el error.
- El barrido en grilla con errores guardados es simple y auditable.
- Se ajusta con unos datos y se juzga con otros: sin reserva no hay validez.
- Más parámetros es más sobreajuste: el mínimo perfecto desconfía.
- En Python: bucle sobre la grilla, MAE y
mincon criterio.
En el próximo tema contrastaremos ya calibrados: la comparación con el sistema real.