¿Qué es la fuga de datos en machine learning?

Autor

Tim Mucci

IBM Writer

Gather

¿Qué es la fuga de datos en el machine learning?

Fuga de datos en machine learning ocurre cuando un modelo utiliza información durante el entrenamiento que no estaría disponible en el momento de la predicción. La fuga hace que un modelo predictivo parezca preciso hasta que se despliega en su caso de uso; entonces, arrojará resultados inexactos, lo que conduce a una mala toma de decisiones y falsos insights.

El objetivo del modelado predictivo es crear un modelo de machine learning que pueda hacer predicciones precisas sobre datos futuros del mundo real, que no están disponibles durante el entrenamiento del modelo. Para evitar resultados inexactos, los modelos no deben evaluarse con los mismos datos con los que se entrenan. Por lo tanto, los científicos de datos suelen dividir los datos disponibles en dos conjuntos: uno para entrenar el modelo y otro para validar qué tan bien funcionará el modelo en datos no vistos.

Las últimas tendencias de IA presentadas por expertos

Obtenga insights curados sobre las noticias más importantes e intrigantes de la IA. Suscríbase a nuestro boletín semanal Think. Consulte la Declaración de privacidad de IBM .

¡Gracias! Ya está suscrito.

Su suscripción se entregará en inglés. En cada boletín, encontrará un enlace para darse de baja. Puede gestionar sus suscripciones o darse de baja aquí. Consulte nuestra Declaración de privacidad de IBM para obtener más información.

Ejemplos y tipos de fuga de datos

La fuga de datos ocurre cuando se utilizan datos externos al conjunto de datos de entrenamiento para crear el modelo, pero estos datos futuros no estarán disponibles cuando el modelo se utilice para la predicción. El modelo funcionará bien en pruebas y validación, pero cuando se usa en producción, se vuelve completamente inexacto.

Hay dos tipos de fuga: fuga objetivo y contaminación de prueba de tren.

Fuga objetivo: los modelos incluyen datos que no estarán disponibles cuando el modelo se utilice para hacer predicciones.

El uso de información que no estará disponible durante las predicciones del mundo real conduce a un sobreajuste, donde el modelo funciona excepcionalmente bien en los datos de entrenamiento y validación, pero no en la producción.

Contaminación entre pruebas: cuando se utilizan datos de entrenamiento y validación para crear un modelo, a menudo debido a una división o preprocesamiento inadecuados.

Ejemplo de fuga de destino

Por ejemplo, imagine un modelo creado para predecir el fraude con tarjetas de crédito. Este problema es preocupante en las aplicaciones de forecasting donde los modelos deben hacer predicciones futuras confiables basadas en datos incompletos. El conjunto de datos sin procesar contendrá información sobre el cliente, el monto de la transacción, la ubicación, si se detectó fraude y si se recibió una devolución de cargo.

Al entrenar el modelo, se ingresarán valores verdaderos o falsos en las columnas de detección de fraude y contracargo. En el mundo real, una devolución de cargo generalmente se inicia después de que se detecta el fraude, por lo que esta información no estaría disponible en el momento de la detección.

Entrenar un modelo con esta información le enseña que las transacciones con contracargo casi siempre son fraudulentas. Durante la validación, el modelo mostrará una alta precisión porque, en el entrenamiento, la relación entre el fraude y las devoluciones de cargo es fuerte. Sin embargo, la información de contracargo no estará disponible cuando se desplegará y el modelo tendrá un rendimiento deficiente en la práctica.

Ejemplo de contaminación de prueba de tren

Imagine a un científico de datos que construye un modelo para predecir los precios de la vivienda en función de características como el tamaño de la casa, el número de habitaciones y el vecindario. La estandarización de las características numéricas (como el tamaño y la antigüedad de la casa) para que todas tengan la misma escala es un paso común de preprocesamiento, que es útil para muchos algoritmos de machine learning.

Sin embargo, supongamos que el científico de datos aplica la estandarización a todo el conjunto de datos antes de dividirlo en conjuntos de datos de entrenamiento y prueba. En ese caso, el modelo "verá" indirectamente la información del conjunto de prueba durante el entrenamiento. Como resultado, el rendimiento del modelo en los datos de prueba podría parecer inflado artificialmente porque la información del conjunto de prueba se utilizó en el paso de preprocesamiento. Esto facilita que el modelo funcione bien en el conjunto de prueba, pero reduce potencialmente su capacidad de generalizar a datos nuevos e invisibles.

Los pasos de preprocesamiento, como el escalado, la imputación o la selección de características, deben ajustarse solo en los datos de entrenamiento y luego aplicarse al conjunto de validación, en lugar de ajustarlos en todo el conjunto de datos antes de dividirlos. La aplicación incorrecta de transformadores, como el escalado o la normalización, puede provocar la contaminación de las pruebas de entrenamiento, especialmente en los modelos de Neural Networks. Cuando estos pasos de preprocesamiento mal ejecutados se realizan en todo el conjunto de datos, llevan a predicciones con sesgo y una sensación irrealista del rendimiento del modelo.

AI Academy

Ponga la IA a trabajar para servicio al cliente

Vea cómo la IA generativa puede satisfacer a los clientes con una experiencia más fluida y aumentar la productividad de la organización en estas tres áreas clave: autoservicio, agentes humanos y operaciones del centro de contacto.

Causas de la fuga de datos

La fuga de datos puede ser un error multimillonario que requiere mucho tiempo y se produce en el machine learning debido a una variedad de factores. Algunas causas comunes son:

Inclusión de información futura: cuando se utiliza información no disponible que no estaría disponible en el momento de la predicción en un escenario del mundo real.

Selección inapropiada de características: selección de características correlacionadas con el objetivo pero no relacionadas causalmente. El modelo está aprendiendo a explotar información a la que no tendría acceso en las predicciones del mundo real.

Contaminación de datos externos: la fusión de conjuntos de datos con datos de entrenamiento puede dar lugar a predicciones con sesgo o inexactas, ya que los datos externos pueden contener información directa o indirecta sobre la variable objetivo.

Errores de preprocesamiento de datos: la división incorrecta de datos ocurre al escalar los datos antes de dividirlos en conjuntos de entrenamiento y validación o al completar los valores faltantes con información de todo el conjunto de datos. Esto puede ser especialmente problemático en los modelos de aprendizaje profundo, donde a menudo se requiere un preprocesamiento extenso, por lo que es crucial evitar mezclar datos de entrenamiento y prueba.

Validación cruzada incorrecta: al realizar una validación cruzada en un conjunto de datos con datos dependientes del tiempo, si se incluyen puntos de datos del futuro, el modelo obtiene acceso a información que no debería tener, lo que da como resultado evaluaciones demasiado optimistas.

Normalización: las transformaciones de datos, como el escalado o la normalización de características, cuando se aplican incorrectamente a los datos de entrenamiento y prueba juntos, en lugar de aplicarse por separado, conducen a la fuga de datos.

Fuga de cambios en la validación y el proceso: cambiar la forma en que se realiza la validación puede introducir fugas al permitir que entre nueva información en el conjunto de entrenamiento. Ajustar el proceso parcialmente volviendo a ejecutar la validación cruzada o volviendo a dividir los datos después de ajustar los modelos puede filtrar información inadvertidamente en el proceso de entrenamiento.

Impacto de la fuga de datos en los modelos de machine learning

La fuga de datos es un error común en el entrenamiento de algoritmos de machine learning para el modelado predictivo. Un estudio de la Biblioteca Nacional de Medicina1 encontró que en 17 campos científicos diferentes donde se aplicaron métodos de machine learning, al menos 294 artículos científicos se vieron afectados por la fuga de datos, lo que llevó a un rendimiento demasiado optimista.

Un estudio de Yale2 descubrió que la filtración de datos puede inflar o desinflar las métricas de rendimiento de los modelos basados en neuroimágenes, dependiendo de si la información filtrada introduce ruido o crea patrones poco realistas. Estos modelos se utilizan para diagnosticar enfermedades para identificar tratamientos y ayudar a los neurocientíficos a comprender mejor la relación entre el cerebro y el cuerpo.

La fuga de datos en los modelos de machine learning puede tener varios impactos en diferentes campos y tipos de datos; estos son los más comunes:

Mala generalización a nuevos datos: cuando los modelos se entrenan con información que no representa el mundo real, el modelo tendrá dificultades para generalizar a los datos invisibles. Las predicciones sobre nuevos datos pueden ser inexactas y poco confiables.

Toma de decisiones con sesgo: Los sesgos en los datos filtrados corren el riesgo de sesgar el comportamiento del modelo, lo que da como resultado decisiones injustas y divorciadas de los escenarios del mundo real.

Insights y hallazgos poco confiables: la fuga de datos compromete la confiabilidad de los insights derivados del modelo, lo que lleva a los usuarios a desconfiar de los resultados.

Métricas de rendimiento infladas: las fugas en los modelos de machine learning a menudo dan como resultado modelos que muestran falsamente una alta precisión y exactitud.

Desperdicio de recursos: encontrar y corregir la fuga de datos después de haber entrenado un modelo requiere mucho tiempo y es costoso. Arreglar la fuga de datos requiere volver a entrenar los modelos desde cero, lo que es costoso desde el punto de vista computacional, y reelaborar todo el pipeline del modelo, desde el preprocesamiento de datos hasta el nuevo entrenamiento, lo que puede requerir muchos recursos en términos de esfuerzo humano y costos computacionales.

Pérdida de confianza: los modelos poco confiables finalmente generan desconfianza en los equipos de ciencia de datos y en el proceso analítico general.

Riesgos legales y de cumplimiento: la fuga de datos en el análisis predictivo puede generar riesgos legales y regulatorios. Si la información confidencial se utiliza indebidamente, puede dar lugar a sanciones y daños a la reputación.

Detección de fugas de datos en machine learning

La detección de fugas de datos requiere que las organizaciones sean conscientes de cómo se preparan y procesan los modelos; requiere estrategias rigurosas para validar la integridad de los modelos de machine learning. Estas son algunas de las mejores prácticas a tener en cuenta con respecto a la construcción de modelos y la detección de fugas de datos:

Preparar: los datos deben dividirse correctamente y los pasos de preprocesamiento deben aplicarse solo al conjunto de datos de entrenamiento. Revise todas las características para asegurarse de que no representen información futura o no disponible durante la predicción.

Búsqueda: después de entrenar el modelo, investigue patrones sospechosos que puedan indicar fugas. Revise la importancia de las características y el comportamiento del modelo para detectar cualquier relación poco realista.

Prueba: pruebe un modelo limitado con datos del mundo real. Supervisar su rendimiento en escenarios del mundo real; si el rendimiento cae significativamente, podría indicar que se ha producido una fuga durante el entrenamiento.

Estas son algunas señales de alerta comunes para detectar fugas:

Rendimiento inusualmente alto: si un modelo muestra una exactitud, precisión o recuperación significativamente mayores de lo esperado, especialmente en los datos de validación, podría indicar una fuga de datos.

Discrepancias entre el entrenamiento y el rendimiento de la prueba: una gran brecha entre el rendimiento en el conjunto de entrenamiento y el conjunto de prueba es una señal de que el modelo podría estar sobreajustado debido a fugas.

Resultados inconsistentes de la validación cruzada: si el rendimiento entre los pliegues de la validación cruzada varía mucho o parece inusualmente alto, podría deberse a una fuga en la prueba del tren o a una división incorrecta.

Comportamiento inesperado del modelo: si un modelo depende en gran medida de características que no tienen sentido lógicamente, eso podría indicar una fuga.

Técnicas de evaluación adecuadas

La minimización de la fuga de datos se puede lograr de varias maneras y se emplean varias herramientas para salvaguardar la integridad del modelo. Lavalidación cruzada, en particular de series temporales o k-fold estratificadas, ayuda a evaluar los modelos correctamente y destaca las posibles fugas. En los LLM (modelos de lenguaje grandes), la validación cruzada y el manejo estricto de los datos son esenciales para evitar entrenar el modelo con datos que podría encontrar más tarde durante la inferencia, lo que socavaría su capacidad de responder a nuevas entradas. El uso de un conjunto de retención separado que permanece intacto durante el entrenamiento agrega protección contra fugas.

La importancia de las características puede revelar si el modelo se basa en datos que no estarían disponibles durante las predicciones. La visualización de datos y las predicciones de modelos pueden exponer patrones o anomalías indicativas de fugas. Además, losexpertos en el dominio deben analizar el modelo para identificar si está utilizando datos poco realistas o no disponibles, lo que ayuda a descubrir características problemáticas.

Prevención de la fuga de datos en el machine learning

Para evitar la fuga de datos, las organizaciones deben realizar un manejo cuidadoso de los datos y una evaluación sistemática. Estas son algunas prácticas esenciales:

Preprocesamiento de datos: Para evitar la fuga de información entre conjuntos, aplique pasos de preprocesamiento, como escalar o imputar missing values por separado para conjuntos de entrenamiento y prueba. Realice preprocesamiento, como escalado, codificación e imputación por separado para conjuntos de entrenamiento y prueba; automatice los pipelines cuando sea posible.

División de datos adecuada: divida los conjuntos de entrenamiento y prueba correctamente. Una división de entrenamiento/prueba cuidadosamente planificada protege la información del conjunto de prueba para que no se filtre en la fase de entrenamiento. Para los datos dependientes del tiempo, divídalos cronológicamente para evitar que datos futuros entren en el proceso de entrenamiento. Para comprobar si hay fugas, mantenga un conjunto de validación separado y distinto que no se utilice durante el entrenamiento, representativo de los datos del mundo real.

Validación cruzada: utilice la validación cruzada k-fold para probar el modelo en múltiples subconjuntos de datos, lo que ayuda a detectar posibles fugas y mejora la generalización.

Ingeniería de características: evite crear características que introduzcan datos futuros. Revise las características derivadas para confirmar que reflejan solo lo que estaría disponible en el momento de la predicción. Evalúe periódicamente la relevancia de las características para confirmar que sean adecuadas y no introduzca información no disponible en el momento de la predicción.

Validación basada en el tiempo: para datos de series temporales, utilice la validación basada en el tiempo para imitar el rendimiento del mundo real. Esto ayuda a garantizar que los datos pasados se utilicen para predecir resultados futuros y evita futuras fugas de datos. Maneje los datos de series temporales con cuidado, utilizando métodos como la validación de ventana móvil o la validación de avance para evitar fugas de datos futuros durante el entrenamiento.

Evaluación regular del modelo: monitoree continuamente el rendimiento durante el entrenamiento y las pruebas para detectar cualquier cambio inesperado que indique fugas.

Fuga de datos en la prevención de pérdida de datos

Hay otra definición de fuga de datos que no tiene nada que ver con machine learning, sino que se refiere a la exposición involuntaria de datos desde una perspectiva de seguridad de datos. La fuga de datos en la prevención de pérdida de datos (DLP) ocurre cuando la información confidencial se expone involuntariamente a partes no autorizadas. Por ejemplo, un servidor de almacenamiento en la nube mal configurado podría permitir un fácil acceso a información de identificación personal (PII) y secretos comerciales.

Los vectores más comunes de fuga de datos provienen de errores humanos, como que un empleado extravíe su computadora portátil o comparta información confidencial a través de plataformas de correo electrónico y mensajería. Los hackers pueden utilizar los datos expuestos para cometer robo de identidad, robar datos de tarjetas de crédito o vender los datos en la dark web.

Soluciones relacionadas
IBM watsonx.ai

Entrene, valide, ajuste y despliegue IA generativa, modelos fundacionales y capacidades de machine learning con IBM watsonx.ai, un estudio empresarial de próxima generación para creadores de IA. Diseñe aplicaciones de IA en menos tiempo y con menos datos.

Descubra watsonx.ai
Soluciones de inteligencia artificial

Ponga la IA a trabajar en su negocio con la experiencia en IA líder en la industria y la cartera de soluciones de IBM a su lado.

Explore las soluciones de IA
Consultoría y servicios de IA

Reinvente los flujos de trabajo y las operaciones críticas añadiendo IA para maximizar las experiencias, la toma de decisiones en tiempo real y el valor empresarial.

Conozca los servicios de IA
Dé el siguiente paso

Obtenga acceso único a capacidades que abarcan el ciclo de vida del desarrollo de IA. Produzca potentes soluciones de IA con interfaces fáciles de usar, flujos de trabajo y acceso a API y SDK estándar de la industria.

Explore watsonx.ai Reserve una demostración en vivo