# Diagnóstico y mitigación del cambio de distribución en producción de ML
Las caídas repentinas en las métricas de calidad del modelo en producción suelen estar relacionadas con cambios en la distribución de datos. Esto ocurre cuando las propiedades estadísticas de los datos de entrada en operaciones en vivo difieren de las usadas para entrenar el modelo. Desglosaremos los tipos de cambios, métodos de monitoreo y estrategias para adaptar los modelos.
La naturaleza del problema: Cómo el cambio de distribución rompe los modelos
El cambio de distribución se produce cuando los datos de producción ya no coinciden con la muestra de entrenamiento. Un ejemplo clásico: un modelo de regresión lineal extrapolando una tendencia más allá del rango de entrenamiento, mientras que métodos no paramétricos (Random Forest, KNN) generan predicciones constantes. Esto sucede porque los modelos no paramétricos no generalizan más allá de la distribución observada. En sistemas del mundo real, estos escenarios provocan caídas catastróficas en la precisión, incluso si el modelo destacaba durante el desarrollo.
Punto clave: el cambio de distribución no siempre está ligado a errores de código. A menudo, el problema surge de cambios en la lógica de negocio, el comportamiento de los usuarios o factores externos. Por ejemplo, actualizar el catálogo de categorías en un sistema de comercio electrónico hace que algunas características sean desconocidas para el modelo, hundiendo inmediatamente las métricas.
Clasificación de los cambios: Tres tipos clave
Existen tres tipos fundamentales de cambio de distribución, cada uno que requiere enfoques diagnósticos diferentes:
- Covariate shift — cambios en la distribución de las características de entrada. Por ejemplo, agregar nuevas categorías a un catálogo en el que el modelo no fue entrenado.
- Label shift — cambios en la distribución de la variable objetivo. Caso típico: un modelo para diagnosticar una enfermedad rara, entrenado durante una epidemia, que genera falsos positivos en la temporada baja.
- Concept shift — cambios en la relación entre las características y la variable objetivo. Por ejemplo, cambios en las preferencias de los usuarios en redes sociales, donde el contenido previamente popular deja de recibir likes.
En la práctica, estos tipos suelen superponerse. El covariate shift puede desencadenar un concept shift si las reglas de negocio cambian junto con el comportamiento de los usuarios. Esto hace que aislar la causa raíz sea complicado y requiere monitoreo multinivel.
Por qué los datos «driftan»: Causas principales
El drift de datos surge por cuatro razones principales:
- Temporal drift — evolución natural del comportamiento de los usuarios o condiciones externas (p. ej., fluctuaciones estacionales en la demanda).
- Cambios en los métodos de recolección de datos — reemplazo de sensores, actualización de formatos de logs o cambios en la interfaz de usuario que afectan las métricas de comportamiento.
- Muestreo sesgado — entrenamiento con datos no representativos (p. ej., reconocimiento de objetos solo contra fondos de zoológicos).
- Transferencia entre dominios — despliegue de un modelo en un entorno diferente (p. ej., un sistema de navegación para carreteras europeas manejando tráfico indio).
La combinación de temporal drift y cambios en la recolección de datos es especialmente peligrosa. Por ejemplo, lanzar una nueva versión de una app móvil puede alterar los patrones de interacción de los usuarios y los formatos de logging simultáneamente, creando un efecto en cascada.
Herramientas de monitoreo: Desde PSI hasta clasificadores de dominio
El monitoreo efectivo exige un enfoque multinivel. Cuando tienes un objetivo en línea, rastrea la métrica de calidad principal (p. ej., ROC-AUC). Con retraso en el objetivo, enfócate en métricas proxy y distribuciones de características.
La herramienta clave es el Population Stability Index (PSI). Esta métrica compara la distribución de una característica entre el período de referencia y el actual:
PSI = sum((A_i - E_i) * ln((A_i + ε) / (E_i + ε)))
where E_i es la proporción de observaciones en el bin i-ésimo para el período de referencia, A_i es la proporción actual, y ε es una constante de suavizado (1e-6).
Interpretación de los valores:
- PSI < 0.1 — cambios menores (estable)
- 0.1 ≤ PSI < 0.25 — cambio moderado (investigar)
- PSI ≥ 0.25 — drift crítico (intervenir)
Para características categóricas, usa la prueba chi-cuadrado; para numéricas, distancia de Wasserstein o prueba de Kolmogorov-Smirnov. Para modelos profundos, analiza embeddings con PCA/t-SNE o entrena un clasificador de dominio: un clasificador binario para distinguir datos de entrenamiento de datos de producción. AUC > 0.7 indica un cambio significativo.
Estrategias de adaptación: Poniendo el modelo de nuevo en marcha
Una vez detectado un cambio, aplica una de estas estrategias:
Reentrenamiento programado y activado
Combina actualizaciones regulares del modelo (p. ej., semanales) con reentrenamiento inmediato cuando PSI exceda un umbral. Es crítico que la nueva muestra de entrenamiento refleje la distribución de datos actual — verifica esto con pruebas estadísticas.
Transfer Learning
Para redes neuronales, usa fine-tuning:
- Reentrenamiento completo (descongelando todas las capas) — efectivo con suficientes datos nuevos
- Ajuste de cabeza (entrenando solo la capa clasificadora) — robusto ante ruido en muestras pequeñas
Para modelos de boosting, extiende el ensemble usando el parámetro init_model, agregando nuevos árboles sobre datos frescos. La principal limitación: riesgo de sobreajuste al ruido con datos insuficientes.
Adaptación sin reentrenamiento
En algunos casos, calibrar predicciones o agregar pesos durante el entrenamiento puede compensar el cambio. Sin embargo, estos métodos son menos confiables que actualizar el modelo.
Lecciones clave
- El covariate shift es la causa más común de caídas en métricas, que requiere monitoreo de distribuciones de características de entrada
- PSI ≥ 0.25 — umbral crítico que necesita acción inmediata
- Combina reentrenamiento programado con disparadores basados en monitoreo
- Para redes neuronales, el ajuste de cabeza reduce el riesgo de sobreajuste al adaptarse a nuevos datos
- Los clasificadores de dominio no solo detectan cambios, sino que también identifican características problemáticas
— Editorial Team
Aún no hay comentarios.