Pregunta de investigación

¿Cómo detectar data leakage y validar un modelo en el tiempo?

Una reconstrucción del instante de decisión para impedir que el entrenamiento vea datos futuros o consecuencias del resultado.

Respuesta breve

Cada ejemplo debe reconstruirse con la información disponible en el momento exacto de predecir. La división de datos respeta tiempo, entidad y proceso de generación; las transformaciones se ajustan solo con entrenamiento y la prueba final permanece cerrada hasta decidir el modelo.

Contexto

El leakage no siempre es una columna con la etiqueta. También aparece en agregados recalculados, duplicados entre particiones, variables registradas después del evento y decisiones humanas causadas por el propio resultado.

Una partición aleatoria puede ser estadísticamente limpia y operacionalmente imposible si mezcla pasado y futuro de la misma entidad.

Ejemplo didáctico · situación inventada

Un dato de las nueve que llegó a las once

Una predicción se ejecuta a las 10:00. Un registro describe el estado de las 09:00, pero el sistema no lo recibió hasta las 11:00. La extracción histórica contiene ambas horas.

Qué decisión cambia. El backtest debe excluir ese registro del ejemplo de las 10:00. Filtrar solo por la hora del evento haría que el modelo evaluado dispusiera de información que el servicio real aún no conocía.

Qué comprobar antes de empezar

  • Instante de predicción, horizonte y latencia real de cada fuente.
  • Entidades repetidas entre entrenamiento, validación y prueba.
  • Transformaciones o imputaciones ajustadas con datos posteriores.
  • Variables creadas como consecuencia de la etiqueta o de una decisión posterior.
  • Número de veces que el equipo ha consultado el conjunto de prueba.

Método de trabajo

Crear un corte de conocimiento

Cada fila conserva cuándo se conoció cada atributo, no solo la fecha a la que se refiere.

Dividir por operación

Usamos ventanas temporales y, cuando corresponde, grupos que impiden compartir la misma entidad.

Encapsular transformaciones

Imputación, selección y escalado se ajustan dentro de cada partición de entrenamiento.

Avanzar ventanas

El backtest repite entrenamiento y predicción como habría ocurrido en periodos sucesivos.

Señales para detener la prueba

  • Una variable no estaría disponible en el instante real de decisión.
  • La misma observación o una variante aparece en entrenamiento y prueba.
  • El rendimiento cae de forma abrupta al pasar a la siguiente ventana temporal.
  • El conjunto de prueba se ha usado para escoger variables, umbrales o arquitectura.

Fuentes

Para seguir con esta decisión

Servicio de Machine learning y modelos predictivos: alcance y entregables

Publicado por Ordantis el .

Primera conversación

Trae el problema, los datos disponibles y la condición que no puede fallar.

Iniciar diagnóstico