Evaluación de Modelos · Machine Learning

Validación cruzada k-fold

Configurar una validación cruzada k-fold, con estratificación cuando procede, y reportar la media y la desviación típica del error entre pliegues.

Validación cruzada k-fold

Un solo corte es una moneda al aire Divide, vencerás y repite. La validación cruzada convierte la pregunta «¿qué tal este corte aleatorio?» en «¿qué tal de media, y cuánto varía?». Esa desviación que añades es tan informativa como la propia media.

El problema de la división única

Reservar un veinte por ciento una sola vez da una estimación ruidosa: depende de qué casos cayeron en cada lado. Con datos escasos, el azar de un corte puede inflar o hundir el resultado, y ni te enteras de cuál suerte te tocó.

La idea de k pliegues

Se parte el conjunto en k porciones llamadas pliegues. Se entrena k veces: cada vez un pliegue distinto hace de validación y el resto de entrenamiento. Así todos los datos sirven de validación exactamente una vez.

Entrenar y validar en rotación

Cada iteración deja fuera un pliegue distinto, entrenando con los k menos uno restantes. Se obtiene una puntuación por iteración. Ningún ejemplo se desperdicia, y el modelo se prueba contra todas las regiones del conjunto.

Media y desviación

Las k puntuaciones se resumen con su media —la estimación del rendimiento— y su desviación típica, que mide cuánto fluctúa según el corte. Reportar solo la media oculta si el modelo es estable o caprichoso.

Una fila de bloques de colores donde en cada ronda uno distinto aparece resaltado como validación y el resto queda como entrenamiento.
En k-fold cada bloque hace de validación una sola vez mientras los demás entrenan; así todos los datos son probados y la media de las puntuaciones resulta más honesta.

Estratificación

En clases desequilibradas, un pliegue podría salir sin casi positivos. La estratificación reparte cada pliegue con la misma proporción de clases que el total, garantizando que ninguna tanda de validación sea ciega a la minoría.

Elegir k

K suele valer cinco o diez. K pequeño: estimación más sesgada y barata. K grande: más cercana a entrenar con todo, pero más cara y con pliegues de validación diminutos y ruidosos. Un compromiso clásico es dejar k en cinco.

Repetición y leave-one-out

Repetir el k-fold con distintos repartos y promediar reduce el ruido del corte. En el extremo, leave-one-out usa un solo ejemplo por pliegue: máximo aprovechamiento, pero alta varianza y coste en datos grandes. Casi nunca compensa.

Cuidado con la serie temporal

El k-fold ingenuo revuelve el tiempo y deja validar contra el futuro, una fuga sutil. Con datos temporales se usa validación en ventana que avanza o partición por bloques de tiempo, respetando que el entrenamiento siempre preceda a la validación.

Errores frecuentes

Ejemplo resuelto: validar un clasificador con k-fold

Un equipo quiere estimar el rendimiento de un modelo que detecta fraude y reportar un número fiable. El protocolo:

  1. Dividir en cinco pliegues estratificados para conservar la proporción de casos raros en cada uno.
  2. Entrenar con cuatro pliegues y validar con el pliegue restante.
  3. Repetir rotando el pliegue de validación hasta cubrir los cinco.
  4. Anotar la métrica de cada vuelta y calcular su media y su desviación típica.
  5. Reservar un conjunto de prueba aparte, tocado una sola vez, para el veredicto final.

¿Para qué sirve en la realidad?

La validación cruzada es el estándar para comparar candidatos y ajustar hiperparámetros con datos escasos: aprovecha cada muestra, y la desviación entre pliegues delata si el modelo es estable o depende de la suerte del corte, algo crucial al decidir si desplegar.

¿Qué ventaja principal ofrece la validación cruzada k-fold frente a una única división de validación?

En validación cruzada estratificada, cada pliegue conserva la proporción de clases del conjunto completo.

La validación cruzada no es el examen final

La k-fold guía la elección de modelo e hiperparámetros. Precisamente por usarse para decidir, su puntuación queda ligeramente optimista. La estimación limpia exige un conjunto de prueba apartado, tocado una sola vez al final.

K-fold

Porcion que hace de validacion en una iteracion
pliegue
Propiedad de usar todos los datos para validar
cobertura
Reparto que preserva proporciones de clase
estratificacion
Lo que hay que reportar junto a la media
desviacion tipica
Variante para datos con orden temporal
ventana que avanza

Ordena una ronda de validación cruzada k-fold:

Dividir
Entrenar
Validar
Resumir

Validación cruzada en detalle
Explicación cuidada de k-fold, estratificación y sus trampas.

Une cada término de la validación cruzada con su papel.

De un corte a una distribución honesta

# Validación cruzada
## Pliegues
### cada uno valida una vez
### cobertura total
## Estratificación
### proporción de clase
### evita pliegues vacíos
## Reporte
### media
### desviación típica
## Cautela
### no barajar el tiempo
### conjunto de prueba aparte

Validación cruzada en la práctica
Documentación de referencia sobre k-fold, estratificación y sus variantes.

Tu k-fold estratificado da una media buena pero una desviación enorme entre pliegues. ¿Qué sospechas del modelo o de los datos, y qué harías?