Inicio · Parte 14 — Matemática de Machine Learning
separar train, validación y test antes de mirar nada
leakage: información del test que llega al entrenamiento
validación cruzada anidada para hiperparámetros
Un modelo solo vale por lo que hace con datos que no ha visto. Medir eso correctamente es más difícil de lo que parece, y el leakage —cualquier filtración de información del conjunto de evaluación al de entrenamiento— es el error que más veces produce resultados brillantes y modelos inútiles en producción.
Sus formas son variadas y a menudo sutiles. Estandarizar usando la media de todo el conjunto antes de separar. Seleccionar características mirando su correlación con la etiqueta en todos los datos. Elegir hiperparámetros con el conjunto de test. Imputar valores faltantes globalmente. Y en series temporales, mezclar pasado y futuro al hacer validación cruzada aleatoria.
La demostración de esta clase es la más contundente posible: se generan datos donde X e y no tienen ninguna relación, puro ruido, y evaluando sobre los mismos datos con los que se entrenó se obtiene un 70 % de acierto. Con separación honesta la cifra cae al 60 %, todavía por encima del 50 % esperado por el azar, porque con 12 características y 60 observaciones queda margen para memorizar.
La disciplina que lo evita es sencilla de enunciar: separar el test al principio, no tocarlo hasta el final, hacer todo el preprocesamiento dentro de la validación cruzada, y usar validación anidada cuando hay hiperparámetros. Con series temporales, separar siempre por tiempo. Cuesta poco y es lo que distingue un resultado de una ilusión.
Datos sin relación real entre X e y.
60 observaciones, 12 características
relación real entre X e y: NINGUNA
accuracy entrenando y evaluando en todo: 0,70
accuracy en train: 0,65
accuracy en test: 0,60
línea base por azar: 0,50
Un 70 % de acierto sobre ruido puro, obtenido
simplemente por evaluar donde se entrenó.
Incluso el 60 % del test está inflado: con 12
características y 60 datos, hay margen de memorización.
Solo la validación repetida daría una cifra fiable.
Validación honesta frente a leakage: la misma métrica, dos verdades.
python classes/part-14-matematica-de-machine-learning/299-generalizacion-validacion-y-leakage/lab.py
compmath run 299
observacionesfeaturesrelacion_real_entre_X_y_yaccuracy_entrenando_y_evaluando_en_todoaccuracy_en_trainaccuracy_en_testbrechaaccuracy_esperada_por_azarleakageregla{
"observaciones": 60,
"features": 12,
"relacion_real_entre_X_y_y": "ninguna",
"accuracy_entrenando_y_evaluando_en_todo": 0.7,
"accuracy_en_train": 0.65,
"accuracy_en_test": 0.6
}
Diseño de experimentos de aprendizaje automático, auditoría de resultados, competiciones de ciencia de datos y validación de modelos antes de producción.
Estos algoritmos siguen siendo la línea base honesta contra la que se debe comparar cualquier modelo profundo.
10.1145/2382577.2382579 verificado en Crossref (2026-08-19).9780387848570 verificado en International ISBN Agency (2026-08-19).