4. IA Responsable
Es un enfoque para evaluar, desarrollar e implementar sistemas de IA
de manera segura, confiable y ética, y tomar decisiones y acciones
responsables.
En términos generales, la IA Responsable es la práctica de defender los principios de la IA al diseñar, construir
y usar sistemas de inteligencia artificial.
11. La privacidad diferencial agrega ruido, por lo que el impacto máximo de un
individuo en el resultado de un análisis agregativo es a lo sumo epsilon (ϵ)
• El riesgo de privacidad incremental entre la exclusión voluntaria y la participación
de cualquier individuo se rige por ϵ
• Un valor bajo de ϵ genera una mayor privacidad pero una menor precisión
• Un valor bajo de ϵ genera una mayor precisión pero con un alto riesgo de
identificación individual (menor privacidad)
12.
13.
14.
15.
16.
17.
18.
19. 2. Equidad
Ausencia de impacto negativo en los grupos basado en:
Origen étnico
Género
Edad
Discapacidad física
Otras características sensibles
20.
21.
22.
23. Mitigando la injusticia
Crea modelos con restricciones de paridad:
Algoritmos:
• Exponentiated Gradient - Una técnica de *reducción* que aplica un
enfoque de minimización de costos para aprender la compensación óptima
del rendimiento predictivo general y la disparidad de equidad (clasificación
binaria y regresión)
• Grid Search - Una versión simplificada del algoritmo de gradiente
exponencial que funciona de manera eficiente con un pequeño número de
restricciones (clasificación binaria y regresión)
• Threshold Optimizer - Una técnica de *post-procesamiento* que aplica una
restricción a un clasificador existente, transformando la predicción según
corresponda (clasificación binaria).
24. Mitigando la injusticia
Restricciones:
• Paridad demográfica: Minimice la disparidad en la tasa de selección entre grupos
de entidades confidenciales.
• Paridad de sensitividad (TPR): Minimice la disparidad en la tasa positiva real entre
grupos de características confidenciales
• Paridad de tasa de falsos positivos: Minimice la disparidad en la tasa de falsos
positivos entre grupos de características confidenciales
• Equalized odds: Minimice la disparidad en la tasa combinada de verdaderos
positivos y la tasa de falsos positivos entre grupos de características confidenciales
• Paridad de tasa de error: Asegurarse de que el error de cada grupo de entidades
confidencial no se desvíe de la tasa de error general en más de una cantidad
especificada.
• Pérdida de grupo limitada (Bounded group loss): Restringe la pérdida para cada
grupo de entidades sensibles en un modelo de regresión
30. IA Responsable en Azure
Machine Learning
Luis Beltrán
luis@luisbeltran.mx
@darkicebeam
¡Gracias por tu atención!
Hinweis der Redaktion
Cuando hablamos de IA, solemos referirnos a un modelo de aprendizaje automático que se utiliza dentro de un sistema para automatizar algo. Por ejemplo, un automóvil autónomo puede tomar imágenes utilizando sensores. Un modelo de aprendizaje automático puede usar estas imágenes para hacer predicciones (por ejemplo, el objeto de la imagen es un árbol). Estas predicciones son utilizadas por el coche para tomar decisiones (por ejemplo, girar a la izquierda para evitar el árbol). Nos referimos a todo este sistema como IA.
Cuando se desarrolla la IA, existe el riesgo de que sea injusta o vista como una caja negra que toma decisiones para los humanos.
Por ejemplo, otro modelo que analiza la información de una persona (como su salario, nacionalidad, edad, etc.) y decide si le concede un préstamo o no. La participación humana es limitada en las decisiones tomadas por el sistema. Esto puede conducir a muchos problemas potenciales y las empresas necesitan definir un enfoque claro para el uso de la IA. La IA responsable es un marco de gobernanza destinado a hacer exactamente eso.
La IA responsable es la práctica de diseñar, desarrollar e implementar IA con la buena intención de empoderar a los empleados y las empresas, e impactar a los clientes y a la sociedad de manera justa, segura y ética, lo que permite a las organizaciones generar confianza y escalar la IA de manera más segura.
Son el producto de muchas decisiones tomadas por quienes las desarrollan e implementan. Desde el propósito del sistema hasta la forma en que las personas interactúan con los sistemas de IA, la IA responsable puede ayudar a guiar proactivamente las decisiones hacia resultados más beneficiosos y equitativos. Eso significa mantener a las personas y sus objetivos en el centro de las decisiones de diseño del sistema y respetar valores duraderos como la equidad, la confiabilidad y la transparencia.
Evaluar e investigar los modelos de ML antes de su implementación sigue siendo el núcleo del desarrollo confiable y responsable de la IA.
Microsoft ha desarrollado un estándar de IA responsable. Es un framework para construir sistemas de IA de acuerdo con seis principios clave: equidad, confiabilidad y seguridad, privacidad y seguridad, inclusión, transparencia y responsabilidad. Para Microsoft, estos principios son los cimientos de un enfoque responsable y confiable de la IA, especialmente a medida que la tecnología inteligente se vuelve más frecuente en los productos y servicios que las personas usan todos los días.
Hablemos de algunos de los principios
Los sistemas de IA como el reconocimiento facial o el etiquetado de voz definitivamente se pueden usar para violar la privacidad de un individuo y amenazar la seguridad. Cómo se utiliza la huella en línea de un individuo para rastrear, deducir e influir en las preferencias o perspectivas de alguien es una preocupación seria que debe abordarse. La forma en que las "noticias falsas" o las "falsificaciones profundas" influyen en la opinión pública también representa una amenaza para la seguridad individual o social. Los sistemas de IA se utilizan cada vez más mal en este dominio. Existe una necesidad pertinente de establecer un marco que proteja la privacidad y seguridad de un individuo.
La privacidad es cualquier dato que pueda identificar a un individuo y / o su ubicación, actividades e intereses. Dichos datos generalmente están sujetos a estrictas leyes de privacidad y cumplimiento, por ejemplo, GDPR en Europa. Los sistemas de IA deben cumplir con las leyes de privacidad que requieren transparencia sobre la recopilación, el uso y el almacenamiento de datos. Debe exigir a los consumidores que dispongan de controles adecuados a la hora de elegir cómo se utilizan sus datos.
Los proyectos de ciencia de datos, incluidos los proyectos de ML, implican el análisis de datos; Y, a menudo, esos datos incluyen detalles personales confidenciales que deben mantenerse privados.
En la práctica, la mayoría de los informes que se publican a partir de los datos incluyen agregaciones de los datos, lo que puede pensar que proporcionaría cierta privacidad; después de todo, los resultados agregados no revelan los valores de los datos individuales.
Sin embargo, considere un caso en el que múltiples análisis de los datos dan como resultado agregaciones informadas que, cuando se combinan, podrían usarse para elaborar información sobre individuos en el conjunto de datos de origen. En el ejemplo de la diapositiva, 10 participantes comparten datos sobre su ubicación y salario. Los datos salariales agregados nos indican el salario promedio en Seattle; y los datos de ubicación nos dicen que el 10% de los participantes del estudio (en otras palabras, una sola persona) tiene su sede en Seattle, por lo que podemos determinar fácilmente el salario específico del participante con sede en Seattle.
Cualquiera que revise ambos estudios y conozca a una persona de Seattle que participó, ahora conoce el salario de esa persona.
La privacidad diferencial busca proteger los valores de los datos individuales agregando "ruido" estadístico al proceso de análisis. La matemática involucrada en agregar el ruido es bastante compleja, pero el principio es bastante intuitivo: el ruido garantiza que las agregaciones de datos se mantengan estadísticamente consistentes con los valores de datos reales, lo que permite alguna variación aleatoria, pero hace imposible calcular los valores individuales a partir de los datos agregados. Además, el ruido es diferente para cada análisis, por lo que los resultados no son deterministas; en otras palabras, dos análisis que realizan la misma agregación pueden producir resultados ligeramente diferentes.
SmartNoise es un proyecto (co-desarrollado por Microsoft) que contiene componentes para construir sistemas diferencialmente privados que son globales.
Soporte integrado para entrenar modelos simples de aprendizaje automático como regresión lineal y logística
Compatible con bibliotecas de entrenamiento de código abierto como TensorFlow Privacy
Puede utilizar SmartNoise para crear un análisis en el que se agregue ruido a los datos de origen. Las matemáticas subyacentes de cómo se agrega el ruido pueden ser bastante complejas, pero SmartNoise se encarga de la mayoría de los detalles por usted.
Epsilon: The amount of variation caused by adding noise is configurable through a parameter called epsilon. This value governs the amount of additional risk that your personal data can be identified. The key thing is that it applies this privacy principle for every member in the data. A low epsilon value provides the most privacy, at the expense of less accuracy when aggregating the data. A higher epsilon value results in aggregations that are more true to the actual data distribution, but in which the individual contribution of a single individual to the aggregated value is less obscured by noise.
Upper and lower bounds: Clamping se utiliza para establecer límites superior e inferior en los valores de una variable. Esto es necesario para garantizar que el ruido generado por SmartNoise sea coherente con la distribución esperada de los datos originales..
Tamaño de la muestra: Para generar datos diferencialmente privados consistentes para algunas agregaciones, SmartNoise necesita conocer el tamaño de la muestra de datos que se va a generar.
Es común al analizar datos examinar la distribución de una variable usando un histograma.
Por ejemplo, veamos la verdadera distribución de edades en el conjunto de datos de diabetes.
Los histogramas son lo suficientemente similares como para garantizar que los informes basados en los datos diferencialmente privados proporcionen la misma información que los informes de los datos sin procesar.
Ahora comparemos eso con un histograma diferencialmente privado de Age.
Otro objetivo común del análisis es establecer relaciones entre variables. SmartNoise proporciona una función de covarianza diferencialmente privada que puede ayudar con esto.
En este caso, la covarianza entre Age y DisatolicBloodPressure es positiva, lo que indica que los pacientes mayores tienden a tener una presión arterial más alta.
Además de la funcionalidad Análisis, SmartNoise le permite utilizar consultas SQL en orígenes de datos para recuperar resultados agregados diferencialmente privados.
En primer lugar, debe definir los metadatos de las tablas en el esquema de datos. Puede hacerlo en un archivo .yml, como el archivo diabetes.yml de la carpeta /metadatos. Los metadatos describen los campos de las tablas, incluidos los tipos de datos y los valores mínimos y máximos de los campos numéricos.
Con los metadatos definidos, puede crear lectores que puede consultar. En el siguiente ejemplo, crearemos un PandasReader para leer los datos sin procesar de un marco de datos de Pandas, y un PrivateReader que agrega una capa de privacidad diferencial al PandasReader.
Ahora puede enviar una consulta SQL que devuelva un conjunto de resultados agregado al lector privado.
Comparemos el resultado con la misma agregación de los datos sin procesar.
Puede personalizar el comportamiento de PrivateReader con el parámetro epsilon_per_column.
Probemos un lector con un alto valor épsilon (baja privacidad) y otro con un bajo valor épsilon (alta privacidad).
Tenga en cuenta que los resultados del lector de épsilon alta (baja privacidad) están más cerca de los resultados verdaderos de los datos sin procesar que los resultados del lector de baja épsilon (alta privacidad).
Los modelos de aprendizaje automático se utilizan cada vez más para informar las decisiones que afectan la vida de las personas. Por ejemplo, la predicción realizada por un modelo de aprendizaje automático puede influir en:
- Aprobación de un préstamo, seguro u otro servicio financiero.
- Aceptación en un curso escolar o universitario.
- Elegibilidad para un ensayo médico o tratamiento experimental.
- Inclusión en una promoción de marketing.
- Selección para empleo o promoción.
Con tales decisiones críticas en juego, es importante tener confianza en que los modelos de aprendizaje automático en los que confiamos predicen de manera justa y no discriminan a favor o en contra de subconjuntos de la población en función del origen étnico, el género, la edad u otros factores.
Usa el paquete Fairlearn para analizar un modelo y explorar la disparidad en el rendimiento de predicción para diferentes subconjuntos de datos en función de características específicas, como la edad. Instalamos el paquete.
Entrenar modelo
Después de eso, puede usar el paquete Fairlearn para comparar su comportamiento para diferentes valores de características confidenciales.
Se utiliza una combinación de funciones métricas fairlearn y scikit-learn para calcular los valores de rendimiento.
Utilice las funciones métricas scikit-learn para calcular la precisión general, el recuerdo y las métricas de precisión.
Utilice la función de selection_rate de fairlearn para devolver la tasa de selección (porcentaje de predicciones positivas) para la población general.
Utilice un MetricFrame para calcular la tasa de selección, la exactitud, el recuerdo y la precisión para cada grupo de edad en la función Sensible a la edad.
A partir de estas métricas, debería poder discernir que se prevé que una mayor proporción de los pacientes mayores sean diabéticos. La precisión debería ser más o menos igual para los dos grupos, pero una inspección más cercana de la precisión y el recuerdo indica cierta disparidad en qué tan bien predice el modelo para cada grupo de edad.
El modelo hace un mejor trabajo de esto para los pacientes en el grupo de mayor edad que para los pacientes más jóvenes.
A menudo es más fácil comparar métricas visualmente. Para ello, usará el panel de imparcialidad de Fairlearn:
Cuando se muestre el widget, utilice el vínculo Introducción para empezar a configurar la visualización.
Seleccione las características sensibles que desea comparar (en este caso, solo hay una: Edad).
Seleccione la métrica de rendimiento del modelo que desea comparar (en este caso, es un modelo de clasificación binario, por lo que las opciones son Exactitud, Precisión equilibrada, Precisión y Recuperación). Comience con Recordar.
Seleccione el tipo de comparación de imparcialidad que desea ver. Comience con la diferencia de paridad demográfica.
La elección de la restricción de paridad depende de la técnica que se utilice y de los criterios de equidad específicos que desee aplicar. Las restricciones incluyen: - Paridad demográfica: use esta restricción con cualquiera de los algoritmos de mitigación para minimizar la disparidad en la tasa de selección entre grupos de entidades sensibles. Por ejemplo, en un escenario de clasificación binaria, esta restricción intenta garantizar que se realice un número igual de predicciones positivas en cada grupo.
Vea los gráficos del panel, que muestran:
Tasa de selección - Una comparación del número de casos positivos por subpoblación.
Tasas de falsos positivos y falsos negativos: cómo se compara la métrica de rendimiento seleccionada para las subpoblaciones, incluida la subpredicción (falsos negativos) y la sobrepredicción (falsos positivos).
Edite la configuración para comparar las predicciones basadas en diferentes métricas de rendimiento y equidad.
Los resultados muestran una tasa de selección mucho mayor para los pacientes mayores de 50 años que para los pacientes más jóvenes. Sin embargo, en realidad, la edad es un factor genuino en la diabetes, por lo que se esperarían más casos positivos entre los pacientes mayores.
Si basamos el rendimiento del modelo en la precisión (en otras palabras, el porcentaje de predicciones que el modelo acierta), entonces parece funcionar más o menos por igual para ambas subpoblaciones. Sin embargo, según la precisión y las métricas de recuerdo, el modelo tiende a funcionar mejor para los pacientes mayores de 50 años.
Un enfoque común para la mitigación es usar uno de los algoritmos y restricciones para entrenar varios modelos y, a continuación, comparar su rendimiento, tasa de selección y métricas de disparidad para encontrar el modelo óptimo para sus necesidades. A menudo, la elección del modelo implica una compensación entre el rendimiento predictivo bruto y la equidad. En general, la equidad se mide por la reducción de la disparidad de la selección de características o por una reducción en la disparidad de la métrica de rendimiento.
Para entrenar los modelos para la comparación, utilice algoritmos de mitigación para crear modelos alternativos que apliquen restricciones de paridad para producir métricas comparables entre grupos de entidades confidenciales. Algunos algoritmos comunes utilizados para optimizar los modelos para la equidad.
GridSearch entrena varios modelos en un intento de minimizar la disparidad del rendimiento predictivo para las características confidenciales del conjunto de datos (en este caso, los grupos de edad)
- Gradiente exponencial - Una técnica de *reducción* que aplica un enfoque de minimización de costos para aprender la compensación óptima del rendimiento predictivo general y la disparidad de equidad (clasificación binaria y regresión)
- Grid Search - Una versión simplificada del algoritmo Exponentiated Gradient que funciona eficientemente con
un pequeño número de restricciones (clasificación binaria y regresión)
- Threshold Optimizer - Una técnica *post-procesamiento* que aplica una restricción a un clasificador existente, transformando la predicción según corresponda (clasificación binaria)
La elección de la restricción de paridad depende de la técnica que se utilice y de los criterios de equidad específicos que desee aplicar.
La restricción de paridad EqualizedOdds intenta garantizar que los modelos que exhiben tasas de verdaderos y falsos positivos similares para cada grupo de entidades sensibles.
Los modelos se muestran en un diagrama de dispersión. Puede comparar los modelos midiendo la disparidad en las predicciones (en otras palabras, la tasa de selección) o la disparidad en la métrica de rendimiento seleccionada (en este caso, recordar). En este escenario, esperamos disparidad en las tasas de selección (porque sabemos que la edad es un factor en la diabetes, con más casos positivos en el grupo de mayor edad). Lo que nos interesa es la disparidad en el rendimiento predictivo, así que seleccione la opción para medir la disparidad en el recuerdo.
El gráfico muestra grupos de modelos con la métrica de recuperación general en el eje X y la disparidad en el recuerdo en el eje Y. Por lo tanto, el modelo ideal (con alto recuerdo y baja disparidad) estaría en la esquina inferior derecha de la trama. Puede elegir el equilibrio adecuado de rendimiento predictivo y equidad para sus necesidades particulares, y seleccionar un modelo adecuado para ver sus detalles.
Un punto importante a reforzar es que la aplicación de la mitigación de equidad a un modelo es una compensación entre el rendimiento predictivo general y la disparidad entre grupos de características sensibles; por lo general, debe sacrificar parte del rendimiento predictivo general para garantizar que el modelo prediga de manera justa para todos los segmentos de la población.
El gráfico muestra grupos de modelos con la métrica de recuperación general en el eje X y la disparidad en el recuerdo en el eje Y. Por lo tanto, el modelo ideal (con alto recuerdo y baja disparidad) estaría en la esquina inferior derecha de la trama. Puede elegir el equilibrio adecuado de rendimiento predictivo y equidad para sus necesidades particulares, y seleccionar un modelo adecuado para ver sus detalles.
Un punto importante a reforzar es que la aplicación de la mitigación de equidad a un modelo es una compensación entre el rendimiento predictivo general y la disparidad entre grupos de características sensibles; por lo general, debe sacrificar parte del rendimiento predictivo general para garantizar que el modelo prediga de manera justa para todos los segmentos de la población.
A modo de conclusión, recordamos que los principios que se recomiendan seguir para desarrollar una IA responsable son:
Confiabilidad: Necesitamos asegurarnos de que los sistemas que desarrollamos sean consistentes con las ideas, valores y principios de diseño para que no creen ningún daño en el mundo.
Privacidad: La complejidad es parte de los sistemas de IA, se necesitan más datos y nuestro software debe garantizar que esos datos estén protegidos, que no se filtren o divulguen.
Inclusión: Empoderar e involucrar a las personas asegurándose de que nadie se quede fuera. Considere la inclusión y la diversidad en sus modelos para que todo el espectro de comunidades esté cubierto.
Transparencia: La transparencia significa que las personas que crean sistemas de IA deben ser abiertas sobre cómo y están utilizando la IA y también abiertas sobre las limitaciones de sus sistemas. La transparencia también significa interpretabilidad, que se refiere al hecho de que las personas deben ser capaces de comprender el comportamiento de los sistemas de IA. Como resultado, la transparencia ayuda a ganar más confianza de los usuarios.
Responsabilidad: Definir las mejores prácticas y procesos que los profesionales de IA pueden seguir, como el compromiso con la equidad, para considerar en cada paso del ciclo de vida de la IA.