Technical
Machine Learning que Preserva la Privacidad
Margarida Vieira · 16 de agosto de 2022
Este artículo recoge mi trabajo en NILG.AI durante una pasantía curricular sobre Machine Learning que preserva la privacidad. Los datos de viajes son cualquier tipo de información que conecta el origen y destino de los desplazamientos de una persona, y se generan continuamente a medida que nos movemos y interactuamos con sistemas conectados a Internet. Pero ¿por qué los datos de viajes son sensibles? Los trayectos que realizamos nos son únicos. Investigadores han demostrado que se necesitan 12 puntos de una huella dactilar para identificar a un individuo, mientras que solo 4 puntos de localización son suficientes para identificar de forma única al 95% de la población (enlace).
Por supuesto, esto se generaliza a cualquier tipo de dato sensible. Las empresas y organizaciones almacenan más datos personales que nunca para servir a sus clientes de forma más efectiva y ejecutar las operaciones empresariales de manera óptima. Además, como la privacidad está estrechamente ligada a la seguridad, preservar la privacidad de los datos de los usuarios beneficia tanto a estos como a las empresas que procesan información potencialmente sensible. Sin embargo, ante múltiples actores malintencionados dispuestos a acceder a datos personales y rastrear información sensible hasta su origen, encontrar la forma de mantener la utilidad de los datos mientras se reduce adecuadamente el riesgo de fuga de información sensible se ha convertido en la principal preocupación.
Esto plantea una pregunta importante: ¿cómo realizamos Machine Learning sobre datos para impulsar avances técnicos sin crear riesgos excesivos para la privacidad de los usuarios? De hecho, la privacidad de datos es un asunto central en el entrenamiento y evaluación de modelos de inteligencia artificial, especialmente aquellos que procesan datos sensibles.
Los cuatro pilares del Machine Learning que preserva perfectamente la privacidad
Aún no se ha clarificado completamente qué significa tener un Machine Learning que preserve perfectamente la privacidad.
Sin embargo, es posible definir los cuatro pilares cruciales para lograrlo: privacidad de los datos de entrenamiento - no debería ser posible que un actor malintencionado revirtiera los datos de entrenamiento; privacidad de entrada - los datos de entrada no deberían ser observables por otros, incluyendo el creador del modelo; privacidad de salida - la salida del modelo no debería ser visible para nadie excepto el usuario cuyos datos se están infiriendo; y privacidad del modelo - el modelo no debería ser susceptible de ser robado por ningún actor malintencionado (enlace).
Técnicas de Machine Learning que Preservan la Privacidad
Aunque existen muchas técnicas de preservación de privacidad para Inteligencia Artificial y Machine Learning, solo cuatro fueron seleccionadas para ser exploradas e implementadas en esta pasantía curricular: K-anonymity, Differential Privacy con enfoque en el Mecanismo de Laplace, Homomorphic Encryption y Extreme Learning Machines.
K-Anonymity
La K-anonimización se refiere frecuentemente al poder de "ocultarse entre la multitud" y se utiliza esencialmente para generalizar algunos atributos identificadores y eliminar otros completamente del conjunto de datos, sin comprometer la utilidad y efectividad de estos (enlace).
La k en k-anonymity se refiere al número de veces que cada combinación de valores aparece en un conjunto de datos. Si k = 2, para cualquier registro en un conjunto de datos, debe haber al menos k otros registros que sean indistinguibles. Diversas técnicas de k-anonimización mantienen los datos seguros y anónimos, desde la generalización hasta la supresión.
Desafortunadamente, k-anonymity no es suficiente para nada excepto conjuntos de datos muy grandes con solo pequeñas cantidades de campos simples para cada registro. Intuitivamente, cuantos más campos y más entradas posibles existan en esos campos, más único puede ser un registro y más difícil es garantizar que haya k registros equivalentes.
Differential Privacy
Differential Privacy es un grupo de algoritmos basados en describir los patrones de grupos en un conjunto de datos mientras se retiene información sobre individuos en el conjunto de datos (enlace).
De manera informal, Differential Privacy garantiza lo siguiente para cada individuo que contribuye datos para análisis: la salida de un análisis diferencialmente privado será aproximadamente la misma, independientemente de si uno contribuye sus datos. Es decir, el riesgo para la privacidad de uno no debería aumentar sustancialmente como resultado de participar en una base de datos estadística. Por lo tanto, un atacante no debería poder aprender información alguna sobre ningún participante que no pueda aprender si el participante hubiera optado por no participar en la base de datos.
La privacidad absoluta es inherentemente imposible, pero lo que Differential Privacy proporciona es una pequeña probabilidad de una violación de privacidad.
Se basa conceptualmente en un método anterior conocido como respuesta aleatorizada, donde la idea clave es introducir un mecanismo de aleatorización que proporciona negabilidad plausible. Supongamos que las respuestas registradas en una encuesta fueron aleatorizadas, lo que significa que con probabilidad p se registraría la respuesta verdadera, y con probabilidad 1-p se registraría una aleatoria. A pesar de lo sucedido, cada individuo podría argumentar que la respuesta registrada era falsa y, por lo tanto, mantener su privacidad.
El Mecanismo de Laplace es uno de los métodos más comprensibles para Differential Privacy. Hasta ahora, es el único enfoque que tiene tanto límites teóricos en la privacidad de los usuarios en el conjunto de datos como aún permite a los científicos extraer información útil del mismo. Sin embargo, el mecanismo de Laplace no es adecuado para datos categóricos (el Mecanismo Exponencial sería más apropiado en ese caso).
Homomorphic Encryption
Homomorphic Encryption es un esquema criptográfico de clave pública que incluye tres pasos principales:
-
El propietario genera un par de claves privada y pública
-
El propietario encripta los datos: la clave pública convierte el texto plano en texto cifrado, que es ilegible por humanos hasta que se utiliza la clave privada correcta para descifrarlo.
-
Se realiza computación en datos encriptados: los cálculos se realizan directamente sobre el texto cifrado, lo que significa que los datos y resultados permanecen encriptados durante el proceso.
-
El propietario desencripta los datos y resultados: los resultados encriptados se devuelven al propietario de los datos y, debido a las propiedades homomórficas de la encriptación y desencriptación, los datos y resultados se desencriptan por el propietario sin haber comprometido la seguridad en ningún momento durante el procedimiento.
Aunque es estándar que los datos se encripten en tránsito, se vuelven vulnerables una vez desencriptados para su procesamiento. Como resultado, el escenario perfecto es poder procesar los datos encriptados directamente. Aquí es cuando Homomorphic Encryption se vuelve particularmente interesante, como cuando se desea proporcionar un servicio de predicción basado en los datos de un usuario pero sin que el usuario necesite confiar en otra parte con sus datos, proporcionando solo datos encriptados.
A pesar de ser relativamente simple y tener poca dependencia comparado con los otros métodos, Homomorphic Encryption no puede realizar eficientemente multiplicaciones arbitrarias y solo puede realizar suma y multiplicación, lo que puede hacer que algunos cálculos sean más difíciles de realizar. Además, es todavía lento y computacionalmente costoso, por lo que podría no ser actualmente práctico, especialmente cuando se compara con otros mecanismos tradicionales.
Extreme Learning Machines
Extreme Learning Machines son redes neuronales con una capa única o múltiples capas de nodos ocultos donde los parámetros de los nodos ocultos no requieren entrenamiento.
La idea es que, manteniendo los pesos del modelo aleatorizados (pero guardándolos), estamos aplicando múltiples sumas y multiplicaciones en los datos que aún no tienen información sobre estos.
Los datos "anonimizados" son la versión comprimida, que puede tener más, menos o el mismo número de características (dependiendo del número de neuronas en las capas ocultas).
Pasantía: en la práctica
Para los propósitos de esta pasantía, se utilizó el conjunto de datos New York City Taxi Trip Duration para predecir la duración de un viaje dada la ubicación y hora del día.
La importancia de comprender y analizar los datos no puede ser menospreciada. Por esta razón, se realizó un análisis exploratorio exhaustivo antes de preprocesar los datos.
Después de conocer adecuadamente el conjunto de datos, comenzó la etapa de ingeniería de características, que brevemente involucró manejar valores faltantes mediante imputación, tratar características no numéricas, por ejemplo, mediante binarización; extrayendo nuevas características relevantes de las existentes.
Habiendo definido qué se realizaría en términos de ingeniería de características, el conjunto de datos fue muestreado para aumentar la eficiencia y acelerar el procesamiento de datos, ordenado temporalmente y dividido en muestras de entrenamiento y prueba. Los modelos de Machine Learning elegidos fueron Linear Regression, XGBoost Regressor y Multi-layer Perceptron (MLP) Regressor. En términos de métricas, se evaluaron el error cuadrático medio, la raíz del error cuadrático medio y el error absoluto medio, así como las puntuaciones de entrenamiento y prueba del modelo y el tiempo requerido para su ejecución.
Una explicación más completa y detallada del análisis exploratorio, la ingeniería de características y los mencionados mecanismos de anonimización, tanto en términos prácticos como teóricos, se puede encontrar en el informe final de esta pasantía.
Todos los resultados obtenidos en Machine Learning con datos anonimizados y no anonimizados han sido compilados en un panel interactivo, desarrollado utilizando la librería Streamlit.
Además, si estás interesado en ver el vídeo de 5 minutos que presenté como mi presentación final, donde recorro una exploración rápida del panel, sigue este enlace.
Conclusiones de mi pasantía en Machine Learning que Preserva la Privacidad
Respecto a los objetivos específicos de la pasantía, creo que una pasantía más larga me habría permitido explorar temas de mayor complejidad con mayor detalle. Respecto a Homomorphic Encryption, a pesar de ser uno de los métodos más fuertes para anonimizar datos, los resultados fueron muy por debajo de las expectativas, pero hubo falta de tiempo para una mayor exploración. En cuanto al mecanismo Extreme Learning Machines, cuyo poder de anonimización no está muy alejado del anterior, podría haber sido explorado con mayor detalle, aunque los resultados obtenidos fueron buenos cuando se comparaban con los otros mecanismos.
Adquirí una amplia colección de nuevas habilidades y experiencias durante toda la pasantía. A pesar de todos los desafíos enfrentados, no solo he expandido mi conocimiento en Machine Learning, que resultó ser muy útil en una de mis materias curriculares, sino que también tuve la oportunidad única de ser parte de un proyecto de importancia incalculable en la actualidad.
