Fuga de datosData Leakage

Información de evaluación que se cuela en el entrenamiento

Puntos clave
  • La fuga de datos es el accidente de que información que debía quedar aparte para calificar termine colándose hacia el entrenamiento.
  • El síntoma que se nota desde fuera es uno solo: el puntaje sale sospechosamente bueno. Y al usarlo de verdad, ese puntaje desaparece.
  • La causa es distinta a la del sobreajuste. El sobreajuste es haber memorizado de más; la fuga es haber visto algo que no debía verse.
  • El camino más común por donde entra es el orden: si se arregla el conjunto entero antes de separarlo, en ese instante ya pasó información al otro lado.
  • La fuga no baja el rendimiento. Lo infla. Por eso es mucho más difícil de notar.
Contenido

1La analogía

Se quiere saber qué tan bien calienta un calefactor nuevo, así que se cierra la puerta del cuarto y se deja un termómetro adentro. Una hora después, el número no para de subir. Parece que se compró un buen calefactor.

Pero la puerta había quedado con una rendija del ancho de un dedo. El aire que calentaba la caldera de la sala entraba sin parar por esa rendija. El número del termómetro era real, pero ese número no lo había hecho el calefactor del cuarto. La fuga de datos es justo esa rendija.

Si se sella bien la rendija y se vuelve a medir, el número cae de golpe. Da lástima, pero esa es la capacidad real de este calefactor. Si nunca se hubiera notado la rendija abierta y se hubiera confiado en que era un buen aparato, el chasco habría llegado justo en el día más frío.

2En detalle

La información colada infla el puntaje

Al construir un modelo, los datos se separan en dos partes: una para entrenar y otra para calificar. Con la primera se enseña, y la segunda se deja sin tocar hasta el final, para medir la capacidad real. La parte de calificar solo tiene sentido si es la primera vez que el modelo la ve.

Pero si aunque sea un poco de la parte de calificar pasa hacia el entrenamiento, el modelo llega al examen ya sabiendo la respuesta. El puntaje sale muy bueno y se cree que se construyó un buen modelo. El problema aparece en el momento de usarlo de verdad: ahí ya no hay nada que se cuele, y el rendimiento cae en picada.

Lo que hace peligroso a este fallo es la dirección en la que se mueve. Los demás problemas suelen avisar de sí mismos bajando el puntaje; la fuga se esconde subiéndolo. Por eso, cuando un resultado sale demasiado bueno, antes de alegrarse conviene buscar la rendija.

Dónde suelen aparecer las rendijas

La primera aparece en el orden. Si se rellenan las casillas vacías con un promedio o se ajusta el rango de valores usando el conjunto entero, y solo después se separa entre entrenamiento y evaluación, el valor de la parte de evaluación ya quedó mezclado en ese promedio. El arreglo debe hacerse después de separar, y con un criterio decidido mirando solo el lado de entrenamiento.

La segunda aparece cuando lo mismo termina en ambos lados. Si el registro de una misma persona está repartido en varias filas y se separa por fila sin más, esa misma persona puede quedar tanto en entrenamiento como en evaluación. Pasa igual con varias fotos del mismo producto tomadas desde ángulos distintos. En estos casos hay que separar por persona o por objeto, como unidad completa.

La tercera aparece con el tiempo. Si el problema es predecir algo que va a pasar y los datos se mezclan sin orden antes de separarlos, se termina aprendiendo de algo que ocurrió después para adivinar lo que pasó antes. Un problema con una dimensión de tiempo siempre debe separarse fijando un punto: lo de antes para un lado, lo de después para el otro.

La columna donde viene pegada la respuesta

La rendija más difícil de notar es la de una columna que trae la respuesta con otro nombre. Si en un problema de detectar una enfermedad se incluye una columna con "el nombre del medicamento recetado", el modelo termina leyendo el nombre del medicamento en vez de reconocer la enfermedad. Pasa lo mismo si en un problema de predecir quién cancelará un servicio aparece una columna con "la fecha en que se procesó la cancelación".

Estas columnas suelen verse completamente naturales a simple vista. Por eso hay que revisar cuándo se genera cada columna. Si un valor se crea después del momento que se quiere predecir, ese valor no existe todavía cuando el modelo se usa de verdad, y no debería entrar al entrenamiento.

Cómo encontrar por dónde se cuela

La mejor señal es un puntaje demasiado bueno. Si el problema es difícil y aun así se acierta casi todo, hay que sospechar antes de festejar. Si al quitar una sola columna el puntaje se desploma, esa columna es sospechosa de ser la rendija.

También ayuda dejar fijo, como una sola secuencia, el orden en que se manejan los datos: separar, arreglar, entrenar, calificar. Hacerlo a mano y cada vez distinto es fácil de desordenar. Con el orden fijo, se reduce el número de lugares donde podría abrirse una rendija.

3Con más precisión

La fuga se confunde a menudo con el sobreajuste. El sobreajuste es memorizar de más los datos de entrenamiento y derrumbarse frente a datos nuevos, y ahí el puntaje de calificación sale bajo. La fuga se distingue porque el puntaje de calificación también sale alto: la parte de calificar dejó de ser, en los hechos, algo nuevo para el modelo.

También hay un punto donde la comparación cojea. Una rendija se siente con la mano cuando pasa aire, pero la rendija de los datos casi siempre es invisible. Si se usa el método de calificar dividiendo varias veces, la misma rendija puede repetirse en cada tanda y hacer que el puntaje salga parejo y bueno en todas. Por eso, para encontrar una fuga conviene menos mirar el puntaje y más rastrear cómo se construyeron los datos, paso por paso.

Vale la pena saber también que este nombre se usa con dos sentidos. Uno es el que se ha explicado, cuando información de calificación pasa al entrenamiento. El otro es cuando entra al entrenamiento información que, en el uso real, nunca se podría tener a mano. El primero solo deja de poder confiarse en el puntaje; el segundo vuelve inutilizable al modelo en sí.

4Pruébalo

5Malentendidos comunes

  • Es fácil pensar que la fuga hace que el rendimiento empeore, pero en realidad lo hace parecer mejor de lo que es, y por eso se descubre más tarde.

  • Es fácil pensar que mezclar bien los datos antes de separarlos evita la fuga, pero en realidad ese mismo gesto de mezclar es lo que abre una rendija en un problema que tiene orden en el tiempo.

  • Es fácil pensar que la fuga solo pasa cuando por error se mete un dato de calificación en el entrenamiento, pero en realidad ocurre mucho más seguido por un arreglo hecho antes de separar los datos, o por una columna con un valor que se genera después.

7Resumen en una línea

En resumenLa fuga de datos es el accidente de que información que debía quedar aparte se cuele hacia el entrenamiento, y como se esconde inflando el puntaje, un resultado demasiado bueno es lo primero que hay que sospechar.

¿Has visto un error o tienes una analogía mejor? Sugerir una corrección · Última actualización2026-09-02