Daniel Sierra Ramos

Daniel Sierra Ramos

Lead Data Scientist en Telefonica. MSc. en Ingeniería de Telecomunicación por la UC3M. Amplia experiencia en consultoría de IA y ejecución de proyectos analíticos para diferentes sectores y clientes nacionales e internacionales. Defensor de una inteligencia artificial responsable en las organizaciones. Apasionado de la música, los viajes, la bicicleta de montaña y la buena gastronomía, sea donde sea.
AI of Things
Cómo transformar una compañía (X): Auditar y mitigar sesgos en los algoritmos
En los últimos años la cantidad de datos generados por parte de compañías y gobiernos se ha visto incrementada enormemente gracias al fenómeno conocido con la transformación digital. Este incremento de la información generada ha permitido mejorar en gran medida la toma de decisiones de grandes y pequeñas compañías con aplicaciones orientadas a la detección de fraude, la estimación de ventas, el mantenimiento predictivo o la segmentación de clientes, entre otros; así como mejorar la vida de las personas mediante los sistemas de recomendación de películas y música, las aplicaciones móviles para la previsión de gastos o los coches autónomos. Los sistemas de toma de decisiones automáticas han supuesto un gran avance para nuestra sociedad. Son capaces de evaluar la situación y actuar en un corto periodo de tiempo, y hasta en algunos casos, sin necesidad de supervisión humana. Todos los sistemas de toma de decisiones han de ser entrenados previamente con un conjunto de datos histórico que permita descubrir los patrones presentes en los fenómenos físicos y sociales que interactúan con nosotros, dejando al descubierto uno de los mayores problemas presentes en las aplicaciones de aprendizaje automático: los sesgos humanos. Los sesgos humanos se encuentran presentes en todas las facetas de nuestra vida, y, por tanto, en los datos que generamos. Este fenómeno hace que los algoritmos que construimos estén plagados de sesgos que introducen elementos discriminatorios que perjudican a ciertas minorías de nuestra sociedad. Principales causantes de la discriminación Entre los elementos causantes de la discriminación presente en los algoritmos se encuentran los siguientes: Datos sesgados Ocurre cuando el proceso de adquisición de los datos está sesgado y no es igualitario. “El policía y el crimen”: Un policía, a causa de sus sesgos raciales, detiene más individuos de raza negra que de raza blanca. A lo largo del tiempo, se irá generando un histórico de detenciones en el que se verá reflejado el sesgo del policía. Los modelos generados a partir de estos datos también adolecerán de este sesgo, haciendo valer la premisa de que “los individuos de raza negra cometen más crímenes que los individuos de raza blanca” Datos contaminados Se generan cuando la definición del problema no es la correcta. “El Manager y el proceso de selección”: A la hora de contratar un nuevo empleado, las decisiones del manager son las que más valen. Se desea construir un modelo que ayude en el proceso de selección de una compañía. Para ello se construye un clasificador y se toma como “variable objetivo” las decisiones tomadas en el pasado a la hora de contratar, es decir, la decisión del manager, el cual tiene preferencia por la contratación de hombres. Este sesgo se verá reflejado en el modelo, y por tanto en las posteriores contrataciones. En este caso, una “variable objetivo” más acertada podría ser el rendimiento que tuvo esa persona a lo largo de su tiempo en la compañía, y no la decisión que tomó el manager. Variables limitadas Cuando la información recogida en alguna de las variables es de peor calidad o menos confiable para alguno de los grupos sensibles. Una variable realmente relevante para uno de los grupos puede no serlo para otros. “La edad y la experiencia” En un modelo de selección de candidatos, se emplea la edad y los tipos de empleo que cada persona ha tenido a lo largo de su vida. En este caso, los más jóvenes no contarán con información de calidad acerca de empleos pasados, mientras que los más mayores, por tener más experiencia, tendrán más oportunidades. Disparidades en el tamaño muestral Cuando se dispone de muchas menos muestras en uno de los grupos sensibles frente al otro. “Las religiones del mundo” En el mundo contamos con más de 4000 religiones vivas, pero sólo 3 de ellas abarcan alrededor del 70% de la población. En el caso de que la religión actúe como una variable sensible, el resto de las religiones se verán infrarrepresentadas debido a la enorme diferencia en el tamaño muestral. Presencia de variables proxy Se produce cuando, a pesar de no haber variables sensibles, siguen existiendo variables correlacionadas con dichas variables sensibles que siguen aportando discriminación y sesgos “La geografía y la raza” Existen zonas geográficas en los que la mayoría de las personas pertenecen a una determinada raza o etnia. En estos casos, la localización geográfica, que es una variable no sensible, actuará como “proxy” de la raza introduciendo sesgos raciales, aunque la propia variable raza no se encuentre en el conjunto de datos. El criterio de Independencia Existen 3 criterios fundamentales para tratar los sesgos discriminatorios presentes en las aplicaciones de Machine Learning: independencia, separación y suficiencia. En este post, nos centraremos en el criterio de independencia por ser uno de los criterios más sencillos y empleados a la hora de evaluar un proceso o una acción susceptible de contener desigualdades. Consiste en medir el porcentaje de individuos de cada grupo sensible que se ve beneficiado. En el contexto del Machine Learning, consiste en evaluar el sesgo de una variable sensible teniendo en cuenta únicamente la salida del modelo analítico. En el ejemplo de la concesión de créditos, si un modelo otorga el crédito al 80% de los hombres que lo solicitaron y al 30% de las mujeres que lo solicitaron, diremos que el modelo está sesgado en cuanto al criterio de independencia, es decir, no existe statistical parity. En términos matemáticos, el criterio de independencia de puede definir como $latex P(\hat{y}=1|S=a) = P(\hat{y}=1|S=b)$ $latex S \sim \text{variable sensible}$ $latex a,b \sim \text{grupos sensibles}$ $latex \hat{y} \sim \text{salida del modelo}$ O lo que es lo mismo, que $latex \hat{Y}$ sea independiente de $latex S$ $latex \hat{Y} \perp S$ Entre los problemas más conocidos del criterio de independencia se encuentran los siguientes: Se descarta cualquier tipo de relación entre la variable sensible y la variable objetivo Se permite laziness, es decir, se podría alcanzar independencia incluso con datos aleatorios en uno de los grupos sensibles Se permite el intercambio de falsos positivos y falsos negativos, manteniendo el criterio de independencia. Este problema se debe principalmente al hecho de que únicamente se tiene en cuenta la salida del modelo y no su rendimiento. El disparate impact (DI) es una de las métricas, junto con la statistical parity difference (SPD), que sirve para medir el sesgo presente en un conjunto de datos según el criterio de independencia. Para ello, se identifican los grupos sensibles u: grupo no privilegiado y p: grupo privilegiado dada una variable sensible $latex S$ $latex SPD = P(\hat{y}=1|S=u) - P(\hat{y}=1|S=p)$ $latex DI = \dfrac{P(\hat{y}=1|S=u)}{P(\hat{y}=1|S=p)}$ Para que haya paridad estadística se debe cumplir que $latex \varepsilon<|DI|\leq 1$ El valor $latex \varepsilon$ representa el grado de flexibilidad permitido. Cuanto menor es el valor, más laxo es el requisito de independencia entre la salida del modelo y la variable sensible. Un valor ampliamente empleado es $latex \epsilon = 0.8$, lo cual implica que sólo puede existir un 20% de diferencias entre el grupo privilegiado y el grupo no privilegiado para que no exista discriminación. Este concepto tiene su origen en las Uniform Guidelines for Employee Selection Procedures, presentes en la legislación de Estados Unidos y adoptada por 4 departamentos gubernamentales (EEOC, Department Of Labor, Department of Justice, and the Civil Service Commission). Model Ethics: evalúa y mitiga el sesgo en tus modelos de ML Model Ethics es una de nuestras soluciones propuestas para la auditoría y mitigación de sesgos analíticos de una manera rápida y totalmente agnóstica al tipo de modelo de clasificación implementado en nuestros clientes. El principal objetivo es el de ofrecer una solución directa y fácilmente interpretable que permita reducir y asegurar unos niveles de desigualdad aceptables dentro del marco regulatorio sin renunciar al rendimiento del modelo analítico. Model Ethics se basa en el criterio de independencia para auditar los modelos analíticos, y se emplea la métrica conocida como disparate impact para evaluar el sesgo presente en el modelo. A su vez, se emplea la técnica Reject Option Classification para mitigar las posibles diferencias existentes entre cada uno de los grupos sensibles identificados. Paso 1: Datos de entrada y definición de variables El primer elemento presente es la carga de datos. Model Ethics acepta un fichero CSV que debe contener, al menos, los siguientes elementos: variables sensibles (raza, género, etc.), variable objetivo, predicción del modelo, score del modelo Una vez subido el fichero se selecciona el rol que tendrá cada una de las columnas, y se identifican a su vez todas las variables sensibles que se desean tratar. En cada una de las variables sensibles se debe seleccionar, a su vez, cada uno de los grupos sensibles presentes en el conjunto de datos (grupo privilegiado y grupo no privilegiado). En la Figura 1 se muestra un ejemplo en el que se define cada una de las columnas presente en el fichero “sample.csv”. Asimismo se seleccionan las variables sex y race como variables sensibles. Figura 1: Carga de datos y selección de variables Asimismo, se realiza la definición de cada uno de los grupos sensibles de las variables seleccionadas (figura izquierda). Concretamente, para el caso de la variable sex se identifican el grupo Male como grupo privilegiado y el grupo Female como grupo no privilegiado. Para la variable race se identifica el grupo White como grupo privilegiado y el resto de grupos como grupo no privilegiado. Si no se seleccionan manualmente los grupos sensibles, la herramienta los seleccionará automáticamente en base a la proporción de representación en cada uno de los grupos, otorgando a aquellos con mayor representación el grupo privilegiado. Paso 2: Evaluación de modelo Una vez definido el problema, se procede a realizar una pequeña evaluación del problema de clasificación binaria en términos de 4 métricas fundamentales: Accuracy, Precision, Recall y F-Score. Esta evaluación pre-auditoría resulta clave a la hora de valorar los efectos de la mitigación de los sesgos sobre los propios resultados del modelo. Figura 3: Métricas del modelo Paso 3: Auditoría de sesgos A continuación, se realiza una auditoría de los sesgos presentes en los resultados del modelo para cada una de las variables sensibles. Esta auditoría se realiza en función a la métrica del disparate impact, a partir de la cual se extraer el porcentaje de discriminación que el grupo privilegiado ejerce sobre el grupo no privilegiado. En la Figura 4 se muestra un ejemplo se auditoría ética. En este caso se observa un porcentaje de discriminación del 85.9% de los hombres frente a las mujeres, y una discriminación del 41.9% de los individuos de raza blanca frente al resto de individuos. Estos porcentajes se pueden obtener analizando el porcentaje de positivos para cada unos de los grupos (barras grises horizontales), según los cuales se indica que, del total de hombres, obtuvieron una salida positiva el 8.86% de ellos, mientras que de todas las mujeres, sólo obtuvieron una salida positiva el 1.25%. Una salida positiva se puede interpretar de diferentes formas de acuerdo al caso de uso que se esté tratando (por ejemplo, podría ser una concesión de crédito, o un pase exitoso en un proceso de selección). Figura 4: Auditoría ética Paso 4: Mitigación de sesgos Una vez detectados los sesgos presentes en el modelo, es posible realizar la mitigación de estos sobre la salida. Para ello se emplea la técnica conocida como Reject Option Classification, mediante la cual se analiza la salida probabilística del modelo para balancear el porcentaje de positivos de cada uno de los grupos sensibles. Para ello, la herramienta proporciona la posibilidad de que el usuario decida el máximo porcentaje de discriminación deseado a partir del cual se desea realizar la mitigación. La elección de este valor dependerá en gran medida de la aplicación y del nivel de restricción que se desee adoptar en este contexto. Automáticamente se toma como valor de referencia un porcentaje máximo de un 20%, el cual es un valor ampliamente aceptado por la comunidad. Es importante destacar que la mitigación de sesgos sólo se puede realizar sobre una de las variables sensibles a la vez, aunque esto pueda tener impacto en el resto de variables. En la Figura 5 se muestra cómo, a partir del porcentaje escogido, los valores de discriminación de la variable sex pasan de un 85.9% a un 17.2%. Figura 5: Mitigación de la variable "sex" Asimismo, analizando el impacto sobre el resto de las variables se puede observar también una pequeña mejora como consecuencia de la mitigación sobre el género. En este caso, la variable race pasa de un 41.9% a tener un 29.7%, que a pesar de ser superior al 20% supone una cierta mejora sobre el caso original. El hecho de que, por el hecho de mitigar la variable sex, se hayan conseguido mejoras también en la variable race, podría ser un indicativo de que, efectivamente, un gran número de los hombres beneficiados por el modelo eran hombres blancos. Figura 6: Impacto de la mitigación en el resto de variables sensibles Finalmente, una vez mitigado el sesgo y analizado su impacto en el resto de variables es necesario comprobar cuánto ha impactado la mitigación en las propias métricas del modelo. En la Figura 7 se muestra una comparativa entre las métricas obtenidas antes de la auditoría y después. Se puede comprobar cómo las métricas se han visto reducidas en todos los aspectos como consecuencia de la mitigación realizada sobre la salida del modelo. Figura 7: Impacto de la mitigación sobre las métricas del modelo Conclusiones La Inteligencia Artificial se enfrenta a un gran reto ético. Los sistemas de decisión automáticos dan pie a reutilizar los sesgos presentes en años de historia del ser humano haciendo que la toma de decisiones se vea comprometida y se desequilibre la balanza en perjuicio de algunos grupos minoritarios. Model Ethics pretende afrontar este problema haciendo accesible una herramienta de auditoría y mitigación de sesgos discriminatorio no intrusiva y empleando técnicas de post-procesado. Desde IoT&BigData se sigue avanzando en nuevos mecanismos que ayuden a las organizaciones a construir sistemas justos y que comprometidos con la Inteligencia Artificial Responsable (Responsible AI), no sólo en términos de discriminación, sino en todas las facetas (XAI, Privacidad, Seguridad, etc.) que ayudan a que la IA sea para todos. AI OF THINGS ¿Cómo conseguir una Inteligencia Artificial justa? 23 de febrero de 2023 Todos los post de esta serie: Cómo transformar una compañía(I): Priorizar casos de uso Cómo transformar una compañía(II): conectar la tecnología con el negocio Cómo transformar una compañía(III): Profundizando en la arquitectura de referencia Cómo transformar una compañía (IV): Desarrollar una metodología de ingesta de datos Cómo transformar una compañía (V): Complementar las fuentes internas con datos externos Cómo transformar una compañía(VI):Las POC o como un proyecto pequeño puede salvar uno grande Cómo transformar una compañía(VII): Poner una PoC en producción Cómo transformar una compañía(IX):Conocer el significado de nuestros datos Cómo transformar una compañía(X):Auditar y mitigar sesgos en los algoritmos Para mantenerte al día con LUCA visita nuestra página web, suscríbete a LUCA Data Speaks o síguenos en Twitter, LinkedIn y YouTube.
18 de noviembre de 2020
AI of Things
LUCA Ethics: Modelos más justos para una sociedad igualitaria
Durante los últimos años, LUCA ha ayudado a las organizaciones a tomar decisiones más objetivas basadas en grandes cantidades de datos y algoritmos complejos de Inteligencia Artificial. En numerosas ocasiones, la automatización de estas decisiones lleva implícita la introducción de sesgos humanos no deseados en el contexto sociodemográfico, político o religioso, llegando a promover comportamientos injustos o discriminatorios en la población. Con el objetivo de garantizar que los servicios proporcionados por LUCA no conduzcan a resultados con sesgos injustos y discriminatorios, se ha desarrollado una metodología comprometida con la ética en la Inteligencia Artificial. Dicha metodología disminuye los efectos del sesgo en el aprendizaje automático, consiguiendo así, modelos con resultados más justos y comprometidos con una sociedad igualitaria. La metodología LUCA Ethics La metodología propuesta, llamada LUCA Ethics, se sustenta del conocimiento en materia del fairness en Machine Learning generado en la comunidad científica durante los últimos años. A continuación, se describen las dos principales fases del proceso: Análisis: Esta fase consiste en la realización del diagnóstico del fairnessde un modelo. Abarca la identificación de las variables sensibles, el descubrimiento de proxies y la cuantificación del sesgo según el criterio de separación, o, mejor dicho, una versión relajada del mismo, igualdad de oportunidades. Este criterio consiste asegurar que de la salida del modelo actual cumpla con la siguiente premisa: las tasas de verdaderos positivos de todos los grupos sensibles deben ser iguales. De esta manera se asegura que la proporción de aciertos positivos es igual para todos, equiparando así las oportunidades de los grupos no privilegiados. Esta fase es fundamental para conocer el estado del modelo antes de aplicar las correcciones. Corrección: Esta fase consiste en la corrección del sesgo detectado según el criterio de justicia seleccionado. Para ello, se aplican técnicas de post-procesado no invasivas, que únicamente precisan la salida del modelo analítico y no requieren de variables de entrada para realizar la corrección. Esta técnica consiste en optimizar el threshold de salida del modelo individualmente para cada uno de los grupos sensibles, de tal forma que se consiga la misma tasa de verdaderos positivos y se optimicen el resto de las métricas. Como resultado de aplicar dicha metodología, se genera una visualización interactiva que permite consultar el sesgo de los modelos analíticos en materia de justicia y aplicar técnicas correctivas para permitir ajustar los resultados en base a distintas necesidades. Un ejemplo de aplicación Tomando como referencia un problema de clasificación binaria en el que existe una variable sensible con dos categorías, se puede construir un modelo de clasificación y visualizar la curva ROC con respecto a cada categoría sensible (imagen de la izquierda) y las métricas de precisión y recall del modelo sobre el conjunto de test (imagen de la derecha). Con la metodología propuesta se alcanza la misma tasa de verdaderos positivos (recall) en ambas categorías sensibles mediante la optimización del umbral de decisión de cada una de ellas por separado. En este ejemplo, si deseamos una tasa de verdaderos positivos de 0.65, necesitamos que los threshold sean de 0.37 y 0.47 en los grupos azul y naranja, respectivamente. Esto resulta en una precision de 0.67. La metodología propuesta abre un nuevo camino hacia la implementación de mecanismos que ayuden en la mejora de nuestros sistemas y permitan alcanzar la igualdad y la justicia social dentro de la inteligencia artificial. Por ello, es nuestro deber seguir trabajando en la inclusión de esta filosofía y conseguir que el fairness sea una premisa en el diseño de nuevos algoritmos. En el siguiente post os contamos, usando como ejemplo un modelo de "scoring" para concesión de créditos bancarios, distintas estrategias para asegurar la obtención de resultados más justos. AI OF THINGS ¿Cómo conseguir una Inteligencia Artificial justa? 23 de febrero de 2023 Escrito por Daniel Sierra Ramos, Data Science Manager y Alfonso Ibañez Martín, Head of Big Data Analytics en LUCA Para mantenerte al día con LUCA visita nuestra página web, o síguenos en Twitter, LinkedIn y YouTube.
22 de mayo de 2019