Diferencia entre revisiones de «Equidad y corrección de sesgos en Aprendizaje Automático»

De FdIwiki ELP
Saltar a: navegación, buscar
m (Algoritmos)
(/* Adversarial debiasing Brian Hu Zhang; Blake Lemoine; Margaret Mitchell, Mitigating Unwanted Biases with Adversarial Learning. Consultado el 17 de diciembre de 2019 Joyce Xu, Algorithmic Solutions to Algorithmic Bias: A Technical Guide. Consultado...)
 
(No se muestran 43 ediciones intermedias de 4 usuarios)
Línea 1: Línea 1:
 
''Versión en inglés: [[Fairness and bias correction in Machine Learning|Fairness and bias correction in Machine Learning]]''
 
''Versión en inglés: [[Fairness and bias correction in Machine Learning|Fairness and bias correction in Machine Learning]]''
  
En aprendizaje automático, un algoritmo es '''justo''', o tiene '''equidad''' si sus resultados son independientes de un cierto conjunto de variables que consideramos sensibles y no relacionadas con él (p.e.: género, raza, orientación sexual, etc.).
+
En aprendizaje automático, un algoritmo es '''justo''', o tiene '''equidad''' si sus resultados son independientes de un cierto conjunto de variables que consideramos sensibles y no relacionadas con él (p.e.: género, etnia, orientación sexual, etc.).
  
== Fairness criteria in classification problems<ref name="Barocas">Solon Barocas; Moritz Hardt; Arvind Narayanan, [http://www.fairmlbook.org ''Fairness and Machine Learning'']. Retrieved 15 December 2019.</ref> ==
+
==Contexto==
 +
Las investigaciones sobre equidad en algoritmos de aprendizaje automático son bastante recientes. Sin ir más lejos la mayoría de los artículos publicados sobre este tema son de los últimos tres años <ref name="Articles">[https://fairmlclass.github.io/1.html#/4 ''Moritz Hardt, Berkeley'']. Consultado el 18 de diciembre de 2019</ref>. Algunos de los hechos más destacados en este ámbito han sido los siguientes:
 +
* En 2018 IBM introduce AI Fairness 360, una librería de Python con diversos algoritmos para redurcir el sesgo algorítmico de un programa, aumentando así su equidad. <ref name="IBM">[https://aif360.mybluemix.net/ ''IBM AI Fairness 360'']. Consultado el 18 de diciembre de 2019</ref>
 +
* Facebook afirmó en 2018 que hace uso de una herramienta, ''Fairness Flow'', que detecta sesgos en su IA. Sin embargo, no se puede acceder al código de dicha herramienta ni se sabe si realmente corrige estos sesgos. <ref name="Facebook">[https://qz.com/1268520/facebook-says-it-has-a-tool-to-detect-bias-in-its-artificial-intelligence/ ''Fairness Flow el detector de sesgos de Facebook'']. Consultado el 18 de diciembre de 2019</ref>
 +
* En 2019, Google publica un conjunto de herramientas en Github para estudiar los efectos de la equidad a largo plazo. <ref name="Google">[https://github.com/google/ml-fairness-gym ''ML-Fairness gym'']. Consultado el 18 de diciembre de 2019</ref>
  
In [[wikipedia: Statistical classification | classification]] problems, an algorithm learns a function to predict a discrete characteristic <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]], the target variable, from known characteristics <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]]. We model <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] as a discrete [[wikipedia:random variable | random variable]] which encodes some characteristics contained or implictly encoded in <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]] that we consider as sensitive characteristics (gender, ethnicity, sexuality, etc.). We finally denote by <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] the prediction of the classifier.
+
A pesar de que se siguen perfeccionando los algoritmos utilizados, los principales avances vienen de la concienciación por parte de algunas grandes empresas de la importancia que va a tener en la sociedad la reducción del sesgo en los algoritmos de aprendizaje automático en un futuro.
Now let us define three main criteria to evaluate if a given classifier is fair, that is, if its predictions are not influenced by some of this sensitive variables.
+
  
=== Independence ===
+
== Criterios de equidad en problemas de clasificación<ref name="Barocas">Solon Barocas; Moritz Hardt; Arvind Narayanan, [http://www.fairmlbook.org ''Fairness and Machine Learning'']. Consultado el 15 de diciembre de 2019.</ref> ==
  
We say the [[wikipedia:random variable | random variables]] <!-- <math display="inline">(R,A)</math> --> [[File: R,A.JPG|1000x1000px|frameless]] satisfy independence if the sensitive characteristics <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] are [[wikipedia:Independence (probability theory)|statistically independent]] to the prediction <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]], and we write <!-- <math display="inline"> R \bot A </math> --> [[File: RbotA.JPG|1000x1000px|frameless]].
+
En problemas de [[wikipedia:es:clasificación estadística | clasificación]], un algoritmo aprende una función para predecir una característica discreta <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]], la variable objetivo, a partir de unas características conocidas <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]]. Modelizamos <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] como una  [[wikipedia:es:variable aleatoria | variable aleatoria]] que codifica algunas características contenidas o implícitamente codificadas en <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]] que consideramos características protegidas (género, etnia, orientación sexual, etc.). Por último, denotamos por <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] la predicción del clasificador.
 +
Ahora pasamos a definir tres criterios principales para evaluar si un clasificador es justo, es decir, si sus predicciones no están influenciadas por algunas de las variables protegidas.
  
We can also express this notion with the following formula:
+
=== Independencia ===
 +
 
 +
Decimos que las [[wikipedia:es:variable aleatoria | variables aleatorias]] <!-- <math display="inline">(R,A)</math> --> [[File: R,A.JPG|1000x1000px|frameless]] satisfacen la '''independencia''' si las características protegidas<!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] son [[wikipedia:es:independencia (probabilidad)|estadísticamente independientes]] a la predicción <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]], y escribimos <!-- <math display="inline"> R \bot A </math> --> [[File: RbotA.JPG|1000x1000px|frameless]].
 +
 
 +
También podemos expresar esta noción con la siguiente fórmula:
 
<!-- <math display="block"> P(R = r | A = a) = P(R = r | A = b) \quad \forall r \in R \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(R = r | A = a) = P(R = r | A = b) \quad \forall r \in R \quad \forall a,b \in A </math> -->
 
[[File: IndependenceDef.JPG|1000x1000px|frameless|center]]
 
[[File: IndependenceDef.JPG|1000x1000px|frameless|center]]
This means that the [[wikipedia:probability theory | probability]] of being classified by the algorithm in each of the groups is equal for two individuals with different sensitive characteristics.
+
Esto significa que la [[wikipedia:es:teoría de la probabilidad | probabilidad]] de ser clasificado por el algoritmo en cada uno de los grupos es la misma para dos individuos con características protegidas distintas.
  
Yet another equivalent expression for equivalence can be given using the concept of [[wikipedia:mutual information | mutual information]] between [[wikipedia:random variables | random variables]], defined as
+
Se puede dar otra noción equivalente de independencia utilizando el concepto de [[wikipedia:es:información mutua | información mutua]] entre [[wikipedia:es:variable aleatoria | variables aleatorias]], definida como
 
<!-- <math display="block"> I(X,Y) = H(X) + H(Y) - H(X,Y) </math> -->  
 
<!-- <math display="block"> I(X,Y) = H(X) + H(Y) - H(X,Y) </math> -->  
 
[[File:MutInf.JPG|1000x1000px|frameless|center]]
 
[[File:MutInf.JPG|1000x1000px|frameless|center]]
In this formula, <!-- <math display="inline"> H </math> --> [[File: H.JPG|1000x1000px|frameless|text-bottom]] is the [[wikipedia:entropy |entropy]] of the [[wikipedia:random variable | random variable]]. Then <!-- <math display="inline"> (R,A) </math> --> [[File: R,A.JPG|1000x1000px|frameless]] satisfy independence if <!-- <math display="inline"> I(R,A) = 0 </math> --> [[File: I(R,A).JPG|1000x1000px|frameless]].
+
En esta fórmula, <!-- <math display="inline"> H </math> --> [[File: H.JPG|1000x1000px|frameless|text-bottom]] es la [[wikipedia:es:entropía |entropía]] de la [[wikipedia:es:variable estadística | variable estadística]]. Entonces <!-- <math display="inline"> (R,A) </math> --> [[File: R,A.JPG|1000x1000px|frameless]] satisface independencia si <!-- <math display="inline"> I(R,A) = 0 </math> --> [[File: I(R,A).JPG|1000x1000px|frameless]].
  
A possible relaxation of the indepence definition include introducing a positive slack <!-- <math display="inline> \epsilon > 0 </math> --> [[File: EpsMq0.JPG|1000x1000px|frameless]] and is given by the formula:
+
Una posible relajación de la definición de independencia pasa por la introducción de una variable positiva <!-- <math display="inline> \epsilon > 0 </math> --> [[File: EpsMq0.JPG|1000x1000px|frameless]], y viene dada por la fórmula:
 
<!-- <math diplay="block"> P(R = r | A = a) \geq P(R = r | A = b) - \epsilon \quad \forall r \in R \quad \forall a,b \in A </math> -->
 
<!-- <math diplay="block"> P(R = r | A = a) \geq P(R = r | A = b) - \epsilon \quad \forall r \in R \quad \forall a,b \in A </math> -->
 
[[File: IndependenceRel1.JPG|1000x1000px|frameless|center]]
 
[[File: IndependenceRel1.JPG|1000x1000px|frameless|center]]
  
Finally, another possible relaxation is to require <!-- <math display="inline"> I(R,A) \leq \epsilon </math> --> [[File:IndependenceRel2.JPG|1000x1000px|frameless]].
+
Por último, otra posible relajación pasa por requerir <!-- <math display="inline"> I(R,A) \leq \epsilon </math> --> [[File:IndependenceRel2.JPG|1000x1000px|frameless]].
  
=== Separation ===
+
=== Separación ===
  
We say the [[wikipedia:random variable | random variables]] <!-- <math display="inline">(R,A,Y)</math> --> [[File: R,A,Y.JPG|1000x1000px|frameless]] satisfy separation if the sensitive characteristics <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] are [[wikipedia:Independence (probability theory)|statistically independent]] to the prediction <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] given the target value <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]], and we write <!-- <math display="inline"> R \bot A | Y </math> --> [[File: RbotAbarY.JPG|1000x1000px|frameless]].
+
Decimos que las [[wikipedia:es:variables aleatorias | variables aleatorias]] <!-- <math display="inline">(R,A,Y)</math> --> [[File: R,A,Y.JPG|1000x1000px|frameless]] satisfacen la '''separación''' si las características protegidas <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] son [[wikipedia:es:independencia (probabilidad)|estadísticamente independientes]] a la predicción <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] dado el valor objetivo <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]], y escribimos <!-- <math display="inline"> R \bot A | Y </math> --> [[File: RbotAbarY.JPG|1000x1000px|frameless]].
  
We can also express this notion with the following formula:
+
También podemos expresar esta noción con la siguiente fórmula:
 
<!-- <math display="block"> P(R = r | Y = q, A = a) = P(R = r | Y = q, A = b) \quad \forall r \in R \quad q \in Y \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(R = r | Y = q, A = a) = P(R = r | Y = q, A = b) \quad \forall r \in R \quad q \in Y \quad \forall a,b \in A </math> -->
 
[[File: SeparationDef.JPG|1000x1000px|frameless|center]]
 
[[File: SeparationDef.JPG|1000x1000px|frameless|center]]
This means that the [[wikipedia:probability theory | probability]] of being classified by the algorithm in each of the groups is equal for two individuals with different sensitive characteristics given that they actually belong in the same group (have the same target variable).
+
Esto significa que la [[wikipedia:es:teoría de la probabilidad | probabilidad]] de ser clasificado por el algoritmo en cada uno de los grupos es la misma para dos individuos con características protegidas distintas dado que ambos pertenecen al mismo grupo (tienen la misma variable objetivo).
  
Another equivalent expression, in the case of a binary target rate, is that the [[wikipedia:Sensitivity and specificity|true positive rate]] and the [[wikipedia:Sensitivity and specificity|false positive rate]] are equal (and therefore the [[wikipedia:Sensitivity and specificity|false negative rate]] and the [[wikipedia:Sensitivity and specificity|true negative rate]] are equal) for every value of the sensitive characteristics:
+
Otra expresión equivalente, en el caso de tener una variable objetivo binaria, es la que exige que la [[wikipedia:es: sensibilidad y especificidad (estadística) | tasa de verdaderos positivos]] y la [[wikipedia:es: sensibilidad y especificidad (estadística) | tasa de falsos positivos]] sean iguales (y por tanto la [[wikipedia:es: sensibilidad y especificidad (estadística) | tasa de falsos negativos]] y la [[wikipedia:es: sensibilidad y especificidad (estadística) | tasa de verdaderos negativos]] también lo sean) para cada valor de las características protegidas:
 
<!-- <math display="block"> P(R = 1 | Y = 1, A = a) = P(R = 1 | Y = 1, A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(R = 1 | Y = 1, A = a) = P(R = 1 | Y = 1, A = b) \quad \forall a,b \in A </math> -->
 
[[File: SeparationDef1.JPG|1000x1000px|frameless|center]]
 
[[File: SeparationDef1.JPG|1000x1000px|frameless|center]]
Línea 43: Línea 51:
 
[[File: SeparationDef2.JPG|1000x1000px|frameless|center]]
 
[[File: SeparationDef2.JPG|1000x1000px|frameless|center]]
  
Finally, a possible relaxation of the given definitions is the difference between rates to be a positive number lower than a given slack <!-- <math display="inline> \epsilon > 0 </math> --> [[File: EpsMq0.JPG|1000x1000px|frameless]], instead of equals to zero.
+
Por último, una posible relajación de las definiciones dadas es que la diferencia entre tasas sea un número positivo menor que una cierta variable <!-- <math display="inline> \epsilon > 0 </math> --> [[File: EpsMq0.JPG|1000x1000px|frameless]], en lugar de igual a cero.
  
=== Sufficiency ===
+
=== Suficiencia ===
  
We say the [[wikipedia:random variable | random variables]] <!-- <math display="inline">(R,A,Y)</math> --> [[File: R,A,Y.JPG|1000x1000px|frameless]] satisfy sufficiency if the sensitive characteristics <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] are [[wikipedia:Independence (probability theory)|statistically independent]] to the target value <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] given the prediction <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]], and we write <!-- <math display="inline"> Y \bot A | R </math> --> [[File: YbotAbarR.JPG|1000x1000px|frameless]].
+
Decimos que las [[wikipedia:es: variable aleatoria | variables aleatorias]] <!-- <math display="inline">(R,A,Y)</math> --> [[File: R,A,Y.JPG|1000x1000px|frameless]] satisface la '''suficiencia''' si las características protegidas <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] son [[wikipedia:es:independencia (probabilidad)|estadísticamente independientes]] al valor objetivo <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] dada la predicción <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]], y escribimos <!-- <math display="inline"> Y \bot A | R </math> --> [[File: YbotAbarR.JPG|1000x1000px|frameless]].
  
We can also express this notion with the following formula:
+
También podemos expresar esta noción con la siguiente fórmula:
 
<!-- <math display="block"> P(Y = q | R = r, A = a) = P(Y = q | R = r, A = b) \quad \forall q \in Y \quad r \in R \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(Y = q | R = r, A = a) = P(Y = q | R = r, A = b) \quad \forall q \in Y \quad r \in R \quad \forall a,b \in A </math> -->
 
[[File: SufficiencyDef.JPG|1000x1000px|frameless|center]]
 
[[File: SufficiencyDef.JPG|1000x1000px|frameless|center]]
This means that the [[wikipedia:probability theory | probability]] of actually being in each of the groups is equal for two individuals with different sensitive characteristics given that they were predicted to belong to the same group.
+
Esto significa que la [[wikipedia:es:teoría de la probabilidad | probabilidad]] de estar en realidad en cada uno de los grupos es la misma para dos individuos con características protegidas distintas dado que la predicción los englobe en el mismo grupo.
  
=== Relationships between definitions ===
+
=== Relaciones entre definiciones ===
  
Finally, we sum up some of the main results that relate the three definitions given above:
+
Por último, resumimos algunos de los principales resultados que relacionan las tres definiciones dadas arriba:
  
* If <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] and <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] are not [[wikipedia:Independence (probability theory)|statistically independent]], then sufficiency and independence cannot both hold.
+
* Si <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] y <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] no son [[wikipedia:es:Independencia (probabilidad)|estadísticamente independientes]], entonces la suficiencia y la independencia no pueden darse a la vez.
* Assumming <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] is binary, if <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] and <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] are not [[wikipedia:Independence (probability theory)|statistically independent]], and <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] and <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] are not [[wikipedia:Independence (probability theory)|statistically independent]] either, then independence and separation cannot both hold.
+
* Asumiendo que <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] es binaria, si <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] y <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] no son [[wikipedia:es:Independencia (probabilidad)|estadísticamente independientes]], y <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] y <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] tampoco son [[wikipedia:es:Independencia (probabilidad)|estadísticamente independientes]], entonces la independencia y la separación no pueden darse a la vez.
* If <!-- <math display="inline">(R,A,Y)</math> --> [[File: R,A,Y.JPG|1000x1000px|frameless]] as a [[wikipedia:joint distribution | joint distribution]] has positive [[wikipedia:probability | probability]] for all its possible values and <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] and <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] are not [[wikipedia:Independence (probability theory)|statistically independent]], then separation and sufficiency cannot both hold.
+
* Si <!-- <math display="inline">(R,A,Y)</math> --> [[File: R,A,Y.JPG|1000x1000px|frameless]] como [[wikipedia:es:distribución conjunta | distribución conjunta]] tiene [[wikipedia:es:teoría de la probabilidad | probabilidad]] positiva para todos sus posibles valores y <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] y <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] no son [[wikipedia:es:independencia (probabilidad)|estadísticamente independientes]], entonces la separación y la suficiencia no pueden darse a la vez.
  
==Métricas<ref name="metrics_paper">Sahil Verma; Julia Rubin, [https://fairware.cs.umass.edu/papers/Verma.pdf ''Fairness Definitions Explained'']. Consultado 15 December 2019</ref>==
+
== Métricas <ref name="metrics_paper">Sahil Verma; Julia Rubin, [https://fairware.cs.umass.edu/papers/Verma.pdf ''Fairness Definitions Explained'']. Consultado el 15 de diciembre de 2019</ref> ==
  
 
La mayoría de medidas de equidad dependen de diferentes métricas, de modo que comenzaremos por definirlas. Cuando trabajamos con un clasificador binario, tanto la clase predicha por el algoritmo como la real pueden tomar dos valores: positivo y negativo. Empecemos ahora explicando las posibles relaciones entre el resultado predicho y el real: [[File:Matriz_confusion_binaria.JPG|200x150px|frame|50px|Matriz de confusión]]
 
La mayoría de medidas de equidad dependen de diferentes métricas, de modo que comenzaremos por definirlas. Cuando trabajamos con un clasificador binario, tanto la clase predicha por el algoritmo como la real pueden tomar dos valores: positivo y negativo. Empecemos ahora explicando las posibles relaciones entre el resultado predicho y el real: [[File:Matriz_confusion_binaria.JPG|200x150px|frame|50px|Matriz de confusión]]
  
* Verdadero positivo (TP): Cuando el resultado predicho y el real pertenecen a la clase positiva.
+
* '''Verdadero positivo (TP)''': Cuando el resultado predicho y el real pertenecen a la clase positiva.
* Verdadero negativo (TN): Cuando el resultado predicho y el real pertenecen a la clase negativa.
+
* '''Verdadero negativo (TN)''': Cuando el resultado predicho y el real pertenecen a la clase negativa.
* Falso positivo (FP): Cuando el resultado predicho es positivo pero el real pertenece a la clase negativa.
+
* '''Falso positivo (FP)''': Cuando el resultado predicho es positivo pero el real pertenece a la clase negativa.
* Falso negativo (FN): Cuando el resultado predicho es negativo pero el real pertenece a la clase positiva.
+
* '''Falso negativo (FN)''': Cuando el resultado predicho es negativo pero el real pertenece a la clase positiva.
  
 
Estas relaciones pueden ser representadas fácilmente con una [[wikipedia:matriz de confusión | matriz de confusión]], una tabla que describe la precisión de un modelo de clasificación. En esta matriz, las columnas y las filas representan instancias de las clases predichas y reales, respectivamente.
 
Estas relaciones pueden ser representadas fácilmente con una [[wikipedia:matriz de confusión | matriz de confusión]], una tabla que describe la precisión de un modelo de clasificación. En esta matriz, las columnas y las filas representan instancias de las clases predichas y reales, respectivamente.
  
 
Utilizando estas relaciones, podemos definir múltiples métricas que podemos usar después para medir la equidad de un algoritmo:
 
Utilizando estas relaciones, podemos definir múltiples métricas que podemos usar después para medir la equidad de un algoritmo:
* Valor predicho positivo (PPV): la fracción de casos positivos que han sido predichos correctamente de entre todas las predicciones positivas. Con frecuencia, se denomina como precisión, y representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que una predicción positiva sea correcta. Viene dada por la siguiente fórmula:
+
* '''Valor predicho positivo (PPV)''': la fracción de casos positivos que han sido predichos correctamente de entre todas las predicciones positivas. Con frecuencia, se denomina como precisión, y representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que una predicción positiva sea correcta. Viene dada por la siguiente fórmula:
 
<!-- <math display="block"> PPV = P(actual=+|prediction=+) = \frac{TP}{TP+FP}</math> -->
 
<!-- <math display="block"> PPV = P(actual=+|prediction=+) = \frac{TP}{TP+FP}</math> -->
 
[[File:PPV.JPG|1000x1000px|frameless|center]]
 
[[File:PPV.JPG|1000x1000px|frameless|center]]
* Tasa de descubrimiento de falsos (FDR): la fracción de predicciones positivas que eran en realidad negativas de entre todas las predicciones positivas. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que una predicción positiva sea errónea, y viene dada por la siguiente fórmula:
+
* '''Tasa de descubrimiento de falsos (FDR)''': la fracción de predicciones positivas que eran en realidad negativas de entre todas las predicciones positivas. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que una predicción positiva sea errónea, y viene dada por la siguiente fórmula:
 
<!-- <math display="block"> FDR = P(actual=-|prediction=+) = \frac{FP}{TP+FP} </math> -->
 
<!-- <math display="block"> FDR = P(actual=-|prediction=+) = \frac{FP}{TP+FP} </math> -->
 
[[File:FDR.JPG|1000x1000px|frameless|center]]
 
[[File:FDR.JPG|1000x1000px|frameless|center]]
* Valor predicho negativo (NPV):  la fracción de casos negativos que han sido predichos correctamente de entre todas las predicciones negativas. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que una predicción negativa sea correcta, y viene dada por la siguiente fórmula:
+
* '''Valor predicho negativo (NPV)''':  la fracción de casos negativos que han sido predichos correctamente de entre todas las predicciones negativas. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que una predicción negativa sea correcta, y viene dada por la siguiente fórmula:
 
<!-- <math display="block"> NPV = P(actual=-|prediction=-) = \frac{TN}{TN+FN} </math> -->
 
<!-- <math display="block"> NPV = P(actual=-|prediction=-) = \frac{TN}{TN+FN} </math> -->
 
[[File:NPV.JPG|1000x1000px|frameless|center]]
 
[[File:NPV.JPG|1000x1000px|frameless|center]]
* Tasa de omisión de falsos (FOR): la fracción de predicciones negativas que eran en realidad positivas de entre todas las predicciones negativas. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que una predicción negativa sea errónea, y viene dada por la siguiente fórmula:
+
* '''Tasa de omisión de falsos (FOR)''': la fracción de predicciones negativas que eran en realidad positivas de entre todas las predicciones negativas. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que una predicción negativa sea errónea, y viene dada por la siguiente fórmula:
 
<!-- <math display="block"> FOR = P(actual=+|prediction=-) = \frac{FN}{TN+FN} </math> -->
 
<!-- <math display="block"> FOR = P(actual=+|prediction=-) = \frac{FN}{TN+FN} </math> -->
 
[[File:FOR.JPG|1000x1000px|frameless|center]]
 
[[File:FOR.JPG|1000x1000px|frameless|center]]
* Tasa de verdaderos positivos (TPR): la fracción de casos positivos que han sido predichos correctamente de entre todos los casos positivos. Con frecuencia, se denomina como exhaustividad, y representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que los sujetos positivos sean clasificados correctamente como tales. Viene dada por la fórmula:
+
* '''Tasa de verdaderos positivos (TPR)''': la fracción de casos positivos que han sido predichos correctamente de entre todos los casos positivos. Con frecuencia, se denomina como exhaustividad, y representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que los sujetos positivos sean clasificados correctamente como tales. Viene dada por la fórmula:
 
<!-- <math display="block"> TPR = P(prediction=+|actual=+) = \frac{TP}{TP+FN} </math> -->
 
<!-- <math display="block"> TPR = P(prediction=+|actual=+) = \frac{TP}{TP+FN} </math> -->
 
[[File:TPR.JPG|1000x1000px|frameless|center]]
 
[[File:TPR.JPG|1000x1000px|frameless|center]]
* Tasa de falsos negativos (FNR): la fracción de casos positivos que han sido predichos de forma errónea como negativos de entre todos los casos positivos. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que los sujetos positivos sean clasificados erróneamente como negativos, y viene dada por la fórmula:
+
* '''Tasa de falsos negativos (FNR)''': la fracción de casos positivos que han sido predichos de forma errónea como negativos de entre todos los casos positivos. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que los sujetos positivos sean clasificados erróneamente como negativos, y viene dada por la fórmula:
 
<!-- <math display="block"> FNR = P(prediction=-|actual=+) = \frac{FN}{TP+FN} </math> -->
 
<!-- <math display="block"> FNR = P(prediction=-|actual=+) = \frac{FN}{TP+FN} </math> -->
 
[[File:FNR.JPG|1000x1000px|frameless|center]]
 
[[File:FNR.JPG|1000x1000px|frameless|center]]
* Tasa de verdaderos negativos (TNR): la fracción de casos negativos que han sido predichos correctamente de entre todos los casos negativos. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que los sujetos negativos sean clasificados correctamente como tales, y viene dada por la fórmula:
+
* '''Tasa de verdaderos negativos (TNR)''': la fracción de casos negativos que han sido predichos correctamente de entre todos los casos negativos. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que los sujetos negativos sean clasificados correctamente como tales, y viene dada por la fórmula:
 
<!-- <math display="block"> TNR = P(prediction=-|actual=-) = \frac{TN}{TN+FP} </math> -->
 
<!-- <math display="block"> TNR = P(prediction=-|actual=-) = \frac{TN}{TN+FP} </math> -->
 
[[File:TNR.JPG|1000x1000px|frameless|center]]
 
[[File:TNR.JPG|1000x1000px|frameless|center]]
* Tasa de falsos positivos (FPR): la fracción de casos negativos que han sido predichos de forma errónea como positivos de entre todos los casos negativos. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que los sujetos negativos sean clasificados erróneamente como positivos, y viene dada por la fórmula:
+
* '''Tasa de falsos positivos (FPR)''': la fracción de casos negativos que han sido predichos de forma errónea como positivos de entre todos los casos negativos. Representa la [[wikipedia:teoría de la probabilidad | probabilidad]] de que los sujetos negativos sean clasificados erróneamente como positivos, y viene dada por la fórmula:
 
<!-- <math display="block"> FPR = P(prediction=+|actual=-) = \frac{FP}{TN+FP} </math> -->
 
<!-- <math display="block"> FPR = P(prediction=+|actual=-) = \frac{FP}{TN+FP} </math> -->
 
[[File:FPR.JPG|1000x1000px|frameless|center]]
 
[[File:FPR.JPG|1000x1000px|frameless|center]]
  
== Other fairness criteria ==
+
== Otros criterios de equidad ==
  
[[File: relacionesIngles.JPG|250x400px|frame|50px|Relationship between fairnes criteria as shown in Barocas et al.<ref name="Barocas"/>]]
+
[[File: relacionesEsp.JPG|250x400px|frame|50px|Relación entre los criterios de equidad como se muestra en Barocas y otros.<ref name="Barocas"/>]]
The following criteria can be understood as measures of the three definitions given on the first section, or a relaxation of them. In the table<ref name="Barocas"/> to the right we can see the relationships between them.
+
Los criterios siguientes se pueden entender como métricas de las tres definiciones dadas en la primera sección, o una relajación de las mismas. En la tabla <ref name="Barocas"/> de la derecha podemos ver cómo se relacionan.
  
To define this measures specifically, we will divide them into three big groups as done in Verma et al.<ref name="metrics_paper"/>: definitions based on predicted outcome, on predicted and actual outcomes, and definitions based on predicted probabilities and actual outcome.
+
Para definir estas métricas específicamente, se dividen en tres grandes grupos como en el trabajo de Verma y otros.<ref name="metrics_paper"/>: definiciones basadas en el resultado predicho, en el resultado predicho y el real, y definiciones basadas en las probabilidades predichas y el resultado real.
  
We will be working with a binary classifier and the folowing notation: <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]] refers to the score given by the classifier, which is the probability of a certain subject to be in the positive or the negative class.<!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] represents the final classification predicted by the algorithm, and its value is usually derived from <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]], for example will be positive when <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]] is above a certain threshold.<!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] represents the actual outcome, that is, the real classification of the individual and, finally, <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] denotes the sensitive attributes of the subjects.
+
En la siguiente sección se trbaja con un clasificador binario y la siguiente notación: <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]] se refiere a la puntuación dada por el clasificador, la cual es la probabilidad que cierto sujeto se encuentre en la clase positiva o negativa.<!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] representa la clasificación final predicha por el algoritmo, y su valor es comunmente derivado de <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]], por ejemplo será positivo cuando <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]] esté por encima de cierto valor.<!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] representa el resultado real, es decir, la clasificación real del sujeto y, finalmente, <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] denota las variables protegidas del sujeto.
  
=== Definitions based on predicted outcome ===
+
=== Definiciones basadas en el resultado predicho ===
  
The definitions in this section focus on a predicted outcome <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] for various distributions of subjects. They are the simplest and most intuitive notions of fairness.
+
Las definiciones en estas secciones se centran en el resultado predicho <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] para varias distribuciones de sujetos. Son las nociones más simples e intuitivas de equidad.
  
* '''Group fairness''', also referred to as '''statistical parity''', '''demographic parity''', '''acceptance rate''' and '''benchmarking'''. A classifier satisfies this definition if the subjects in the protected and unprotected groups have equal probability of being assigned to the positive predicted class. This is, if the following formula is satisfied:
+
* '''''Group fairness''''', también llamado '''''statistical parity''''', '''''demographic parity''''', '''''acceptance rate''''' y '''''benchmarking'''''. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen la misma probabilidad de ser asignados a la clase positiva. Es decir, si se satisface la siguiente fórmula:
 
<!-- <math display="block"> P(R = +|A = a) = P(R = +|A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(R = +|A = a) = P(R = +|A = b) \quad \forall a,b \in A </math> -->
 
[[File: group_fairness.JPG|1000x1000px|frameless|center]]
 
[[File: group_fairness.JPG|1000x1000px|frameless|center]]
  
* '''Conditional statistical parity'''. Basically consists in the definition above, but restricted only to a subset of the attributes. With mathematical notation this would be:
+
* '''''Conditional statistical parity'''''. Consiste básicamente en la definición anterior, pero restringida solo a un subconjunto de los atributos. En notación matemática:
 
<!-- <math display="block"> P(R = +|L = l, A = a) = P(R = +|L = l, A = b) \quad \forall a,b \in A \quad \forall l \in L </math> -->
 
<!-- <math display="block"> P(R = +|L = l, A = a) = P(R = +|L = l, A = b) \quad \forall a,b \in A \quad \forall l \in L </math> -->
 
[[File: definitions1.JPG|1000x1000px|frameless|center]]
 
[[File: definitions1.JPG|1000x1000px|frameless|center]]
  
=== Definitions based on predicted and actual outcomes ===
+
=== Definiciones basadas en el resultado predicho y el real ===
  
This definitions not only consider de predicted outcome <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] but also compare it to the actual outcome <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]].
+
Estas definiciones no sólo consideran el resultado predicho <!-- <math display="inline"> R </math> --> [[File: R.JPG|1000x1000px|frameless|text-bottom]] pero también lo comparan con el resultado real <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]].
  
* '''Predictive parity''', also referred to as '''outcome test'''. A classifier satisfies this definition if the subjects in the protected and unprotected groups have equal PPV. This is, if the following formula is satisfied:
+
* '''''Predictive parity''''', también llamado '''''outcome test'''''. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo PPV. Es decir, si se satisface la siguiente fórmula:
 
<!-- <math display="block"> P(Y = + | R = +, A = a) = P(Y = + | R = +, A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(Y = + | R = +, A = a) = P(Y = + | R = +, A = b) \quad \forall a,b \in A </math> -->
 
[[File: predictive_parity.JPG|1000x1000px|frameless|center]]
 
[[File: predictive_parity.JPG|1000x1000px|frameless|center]]
: Mathematically, if a classifier has equal PPV for both groups, it will also have equal FDR, satisfying the formula:
+
: Matemáticamente, si un clasificador tiene el mismo PPV para ambos grupos, también tiene el mismo FDR, satisfaciendo la fórmula:
 
<!-- <math display="block"> P(Y = - | R = +, A = a) = P(Y = - | R = +, A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(Y = - | R = +, A = a) = P(Y = - | R = +, A = b) \quad \forall a,b \in A </math> -->
 
[[File: predictive_parity2.JPG|1000x1000px|frameless|center]]
 
[[File: predictive_parity2.JPG|1000x1000px|frameless|center]]
  
* '''False positive error rate balance''', also referred to as '''predictive equality'''. A classifier satisfies this definition if the subjects in the protected and unprotected groups have aqual FPR. This is, if the following formula is satisfied:
+
* '''''False positive error rate balance''''', también llamado '''''predictive equality'''''. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo FPR. Es decir, si se satisface la siguiente fórmula:
 
<!-- <math display="block"> P(R = + | Y = -, A = a) = P(R = + | Y = -, A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(R = + | Y = -, A = a) = P(R = + | Y = -, A = b) \quad \forall a,b \in A </math> -->
 
[[File: predictive_equality.JPG|1000x1000px|frameless|center]]
 
[[File: predictive_equality.JPG|1000x1000px|frameless|center]]
: Mathematically, if a classifier has equal FPR for both groups, it will also have equal TNR, satisfying the formula:
+
: Matemáticamente, si un clasificador tiene el mismo FPR para ambos grupos, también tiene el mismo TNR, satisfaciendo la fórmula:
 
<!-- <math display="block"> P(R = - | Y = -, A = a) = P(R = - | Y = -, A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(R = - | Y = -, A = a) = P(R = - | Y = -, A = b) \quad \forall a,b \in A </math> -->
 
[[File: predictive_equality2.JPG|1000x1000px|frameless|center]]
 
[[File: predictive_equality2.JPG|1000x1000px|frameless|center]]
  
* '''False negative error rate balance''', also referred to as '''equal opportunity'''. A classifier satisfies this definition if the subjects in the protected and unprotected groups have equal FNR. This is, if the following formula is satisfied:
+
* '''''False negative error rate balance''''', también llamado '''''equal opportunity'''''. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo FNR. Es decir, si se satisface la siguiente fórmula:
 
<!-- <math display="block"> P(R = - | Y = +, A = a) = P(R = - | Y = +, A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(R = - | Y = +, A = a) = P(R = - | Y = +, A = b) \quad \forall a,b \in A </math> -->
 
[[File: equal_opportunity.JPG|1000x1000px|frameless|center]]
 
[[File: equal_opportunity.JPG|1000x1000px|frameless|center]]
: Mathematically, if a classifier has equal FNR for both groups, ti will also have equal TPR, satisfying the formula:
+
: Matemáticamente, si un clasificador tiene el mismo FNR para ambos grupos, también tiene el mismo TPR, satisfaciendo la fórmula:
 
<!-- <math display="block"> P(R = + | Y = +, A = a) = P(R = + | Y = +, A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(R = + | Y = +, A = a) = P(R = + | Y = +, A = b) \quad \forall a,b \in A </math> -->
 
[[File: equal_opportunity2.JPG|1000x1000px|frameless|center]]
 
[[File: equal_opportunity2.JPG|1000x1000px|frameless|center]]
  
* '''Equalized odds''', also referred to as '''conditional procedure accuracy equality''' and '''disparate mistreatment'''. A classifier satisfies this definition if the subjects in the protected and unprotected groups have equal TPR and equal FPR, satisfying the formula:
+
* '''''Equalized odds''''', también llamado '''''conditional procedure accuracy equality''''' and '''''disparate mistreatment'''''. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo TPR y el mismo FPR, satisfaciendo la fórmula:
 
<!-- <math display="block"> P(R = + | Y = y, A = a) = P(R = + | Y = y, A = b) \quad y \in \{+,-\} \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(R = + | Y = y, A = a) = P(R = + | Y = y, A = b) \quad y \in \{+,-\} \quad \forall a,b \in A </math> -->
 
[[File: equalized_odds.JPG|1000x1000px|frameless|center]]
 
[[File: equalized_odds.JPG|1000x1000px|frameless|center]]
  
* '''Conditional use accuracy equality'''. A classifier satisfies this definition if the subjects in the protected and unprotected groups have equal PPV and equal NPV, satisfying the formula:
+
* '''''Conditional use accuracy equality'''''. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo PPV y el mismo NPV, satisfaciendo la fórmula:
 
<!-- <math display="block"> P(Y = y | R = y, A = a) = P(Y = y | R = y, A = b) \quad y \in \{+,-\} \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(Y = y | R = y, A = a) = P(Y = y | R = y, A = b) \quad y \in \{+,-\} \quad \forall a,b \in A </math> -->
 
[[File: conditional.JPG|1000x1000px|frameless|center]]
 
[[File: conditional.JPG|1000x1000px|frameless|center]]
  
* '''Overall accuracy equality'''. A classifier satisfies this definition if the subject in the protected and unprotected groups have equal prediction accuracy, that is, the probability of a subject from one class to be assigned to it. This is, if it satisfies the following formula:
+
* '''''Overall accuracy equality'''''. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen la misma precisión de predicción, es decir, la probabilidad de predecir correctamente a qué clase pertenece un sujeto. Es decir, si se satisface la siguiente fórmula:
 
<!-- <math display="block"> P(R = Y , A = a) = P(R = Y | A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(R = Y , A = a) = P(R = Y | A = b) \quad \forall a,b \in A </math> -->
 
[[File: overall.JPG|1000x1000px|frameless|center]]
 
[[File: overall.JPG|1000x1000px|frameless|center]]
  
* '''Treatment equality'''. A classifier satisfies this definition if the subjects in the protected and unprotected groups have an equal ratio of FN and FP, satisfying the formula:  
+
* '''''Treatment equality'''''. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo ratio de FN y FP, satisfaciendo la fórmula:
 
<!-- <math display="block"> \frac{FN_{A=a}}{FP_{A=a}} = \frac{FN_{A=b}}{FP_{A=b}} </math> -->
 
<!-- <math display="block"> \frac{FN_{A=a}}{FP_{A=a}} = \frac{FN_{A=b}}{FP_{A=b}} </math> -->
 
[[File: treatment.JPG|1000x1000px|frameless|center]]
 
[[File: treatment.JPG|1000x1000px|frameless|center]]
  
=== Definitions based on predicted probabilities and actual outcome ===
+
=== Definiciones basadas en las probabilidades predichas y el resultado real ===
  
These definitions are based in the actual outcome <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] and the predicted probability score <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]].
+
Estas definiciones se basan en el resultado real <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] y en la probabilidad predicha (la puntuación) <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]].
  
* '''Test-fairness''', also known as '''calibration''' or '''matching conditional frequencies'''. A classifier satisfies this definition if individuals with the same predicted probability score <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]] have the same probability to be classified in the positive class when they belong to either the protected or the unprotected group:
+
* '''''Test-fairness''''', también conocido como '''''calibration''''' o '''''matching conditional frequencies'''''. Un clasificador satisface esta definición si individuos con la misma puntuación <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]] tienen la misma probabilidad de ser clasificados en la clase positiva independientemente de si pertenecen a los grupos protegidos o no:
 
<!-- <math display="block"> P(Y = +|S = s,A = a) = P(Y = +|S = s,A = b) \quad \forall s \in S \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(Y = +|S = s,A = a) = P(Y = +|S = s,A = b) \quad \forall s \in S \quad \forall a,b \in A </math> -->
 
[[File: definitions2.JPG|1000x1000px|frameless|center]]
 
[[File: definitions2.JPG|1000x1000px|frameless|center]]
  
* '''Well-calibration'''. It's an extension of the previous definition. It states that when individuals inside or outside the protected group have the same predicted probability score <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]] they must have the same probability of being classified in the positive class, and this probability must be equal to <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]]:
+
* '''''Well-calibration'''''. Es una extensión de la definición anterior. Añade que, cuando individuos dentro o fuera de los grupos protegidos tienen la misma puntuación <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]] deben tener la misma probabilidad de ser clasificados en la clase positiva, y esta probabilidad debe ser igual a <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]]:
 
<!-- <math display="block"> P(Y = +|S = s,A = a) = P(Y = +|S = s,A = b) = s \quad \forall s \in S \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> P(Y = +|S = s,A = a) = P(Y = +|S = s,A = b) = s \quad \forall s \in S \quad \forall a,b \in A </math> -->
 
[[File: definitions3.JPG|1000x1000px|frameless|center]]
 
[[File: definitions3.JPG|1000x1000px|frameless|center]]
  
* '''Balance for positive class'''. A classifier satisfies this definition if the subjects constituting the positive class from both protected and unprotected groups have equal average predicted probability score <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]]. This means that the expected value of probability score for the protected and unprotected groups with positive actual outcome <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] is the same, satisfying the formula:
+
* '''''Balance for positive class'''''. Un clasificador satisface esta definición si los individuos que constituyen la clase positiva pertenecientes tanto los grupos protegidos como de los no protegidos tienen la misma media de puntuación <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]]. Esto quiere decir que la [[wikipedia:es:Esperanza matemática | esperanza]] de la puntuación para los grupos protegidos y los no protegidos con clase real positiva <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] es la misma, satisfaciendo la fórmula:
 
<!-- <math display="block"> E(S|Y = +,A = a) = E(S|Y = +,A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> E(S|Y = +,A = a) = E(S|Y = +,A = b) \quad \forall a,b \in A </math> -->
 
[[File: balance_positive.JPG|1000x1000px|frameless|center]]
 
[[File: balance_positive.JPG|1000x1000px|frameless|center]]
  
* '''Balance for negative class'''. A classifier satisfies this definition if the subjects constituting the negative class from both protected and unprotected groups have equal average predicted probability score <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]]. This means that the expected value of probability score for the protected and unprotected groups with negative actual outcome <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] is the same, satisfying the formula:
+
* '''''Balance for negative class'''''. Un clasificador satisface esta definición si los individuos que constituyen la clase negativa pertenecientes tanto los grupos protegidos como de los no protegidos tienen la misma media de puntuación <!-- <math display="inline"> S </math> --> [[File: S.JPG|1000x1000px|frameless|text-bottom]].Esto quiere decir que la [[wikipedia:es:Esperanza matemática | esperanza]] de la puntuación para los grupos protegidos y los no protegidos con clase real negativa <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] es la misma, satisfaciendo la fórmula:
 
<!-- <math display="block"> E(S|Y = -,A = a) = E(S|Y = -,A = b) \quad \forall a,b \in A </math> -->
 
<!-- <math display="block"> E(S|Y = -,A = a) = E(S|Y = -,A = b) \quad \forall a,b \in A </math> -->
 
[[File: balance_negative.JPG|1000x1000px|frameless|center]]
 
[[File: balance_negative.JPG|1000x1000px|frameless|center]]
Línea 186: Línea 194:
  
 
===Preprocesamiento===
 
===Preprocesamiento===
 +
 +
Normalmente, el clasificador no es el único problema, el conjunto de datos también está sesgado. La discriminación de un conjunto de datos <!-- <math display="inline"> D </math> --> [[File: D.jpg|1000x1000px|frameless|text-bottom]] con respecto al grupo <!-- <math display="inline"> A = a </math> --> [[File: A_a.JPG|47x16px|framelesss|text-bottom]] se puede definir como sigue:
 +
<!-- <math display="block"> disc_{A=a}(D) = \frac{|\{X\in D| X(A) \neq a, X(Y) = +\}|}{|\{X \in D | X(A) \neq a \}|} - \frac{|\{X\in D| X(A) = a, X(Y) = +\}|}{|\{X \in D | X(A) = a \}|}</math> -->
 +
[[File: datasetDisc.JPG|1000x1000px|frameless|center]]
 +
 +
Esto es, una aproximación de la diferencia entre las probabilidades de pertenecer a la clase positiva dado que el sujeto tiene una característica protegida distinta de a <!-- <math display="inline"> a </math> --> [[File: Aminus.JPG|16x26px|framelesss|text-bottom]] e igual a <!-- <math display="inline"> a </math> --> [[File: Aminus.JPG|16x26px|framelesss|text-bottom]].
  
 
Los algoritmos que corrigen el sesgo mediante preprocesamiento intentan eliminar información sobre ciertos atributos de los datos que pueden provocar un comportamiento injusto de la IA, al mismo tiempo que tratan de alterar estos datos lo menos posible. Eliminar del conjunto de datos una variable protegida no es suficiente, ya que otras variables pueden estar correlacionadas con ella.
 
Los algoritmos que corrigen el sesgo mediante preprocesamiento intentan eliminar información sobre ciertos atributos de los datos que pueden provocar un comportamiento injusto de la IA, al mismo tiempo que tratan de alterar estos datos lo menos posible. Eliminar del conjunto de datos una variable protegida no es suficiente, ya que otras variables pueden estar correlacionadas con ella.
Línea 197: Línea 211:
 
Por un lado, este procedimiento tiene la ventaja de que los datos preprocesados se pueden utilizar para cualquier tarea de aprendizaje automático. Además, no hay que modificar el código del clasificador, ya que la corrección se aplica a los datos que se van a introducir en él. Por otro lado, los otros métodos obtienen mejores resultados tanto en acierto como en equidad. <ref name="datascience"> Ziyuan Zhong, [https://towardsdatascience.com/a-tutorial-on-fairness-in-machine-learning-3ff8ba1040cb ''Tutorial on Fairness in Machine Learning'']. Consultado el 1 de Diciembre de 2019</ref>
 
Por un lado, este procedimiento tiene la ventaja de que los datos preprocesados se pueden utilizar para cualquier tarea de aprendizaje automático. Además, no hay que modificar el código del clasificador, ya que la corrección se aplica a los datos que se van a introducir en él. Por otro lado, los otros métodos obtienen mejores resultados tanto en acierto como en equidad. <ref name="datascience"> Ziyuan Zhong, [https://towardsdatascience.com/a-tutorial-on-fairness-in-machine-learning-3ff8ba1040cb ''Tutorial on Fairness in Machine Learning'']. Consultado el 1 de Diciembre de 2019</ref>
  
==== Reasignación de pesos <ref name="reweighing"> Faisal Kamiran; Toon Calders, [https://link.springer.com/content/pdf/10.1007%2Fs10115-011-0463-8.pdf ''Data preprocessing techniques for classification without discrimination'']. Consultado el 17 de Diciembre de 2019</ref> ====
+
==== ''Reweighing'' <ref name="reweighing"> Faisal Kamiran; Toon Calders, [https://link.springer.com/content/pdf/10.1007%2Fs10115-011-0463-8.pdf ''Data preprocessing techniques for classification without discrimination'']. Consultado el 17 de Diciembre de 2019</ref> ====
 +
 
 +
La técnica del ''reweighing'', en español ''reasignación de pesos'', es un ejemplo de algoritmo de preprocesamiento. La idea consiste en asignar un peso a cada punto del conjunto de datos de tal manera que la discriminación ponderada es 0 respecto al grupo de interés. 
  
La reasignación de pesos, del inglés '''reweighing''', es una posible solución. La idea consiste en asignar un peso a cada punto del conjunto de datos de tal manera que la discriminación ponderada es 0 respecto al grupo de interés. 
+
Si el conjunto de datos <!-- <math display="inline"> D </math> --> [[File: D.jpg|1000x1000px|frameless|text-bottom]] fuera no sesgado, la variable protegida <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] y la variable objetivo <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] serían [[wikipedia:es:independencia (probabilidad) | estadísticamente independientes]] y la probabilidad de la [[wikipedia:es:distribución conjunta|distribución conjunta]] sería el producto de las probabilidades de la siguiente manera:
  
If the dataset <!-- <math display="inline"> D </math> --> [[File: D.jpg|1000x1000px|frameless|text-bottom]] was unbiased the sensitive variable <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]] and the target variable <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] would be statistically independent and the probability of the joint distribution would be the product of the probabilities as follows:
 
 
<!-- <math display="block"> P_{exp}(A = a \wedge Y = +) = P(A = a) \times P(Y = +) = \frac{|\{X \in D | X(A) = a\}|}{|D|} \times \frac{|\{X \in D| X(Y) = + \}|}{|D|}</math> -->
 
<!-- <math display="block"> P_{exp}(A = a \wedge Y = +) = P(A = a) \times P(Y = +) = \frac{|\{X \in D | X(A) = a\}|}{|D|} \times \frac{|\{X \in D| X(Y) = + \}|}{|D|}</math> -->
 
[[File: fairness_formula_1.JPG|1000x1000px|frameless|center]]
 
[[File: fairness_formula_1.JPG|1000x1000px|frameless|center]]
  
In reality, however, the dataset is not unbiased and the variables are not statistically independent so the observed probability is:
+
Sin embargo, en la vida real el conjunto de datos suele estar sesgado y las variables no son [[wikipedia:es:independencia (probabilidad) | estadísticamente independientes]] por lo que la probabilidad observada es:
 
<!-- <math display="block"> P_{obs}(A = a \wedge Y = +) = \frac{|\{X \in D | X(A) = a \wedge X(Y) = +\}|}{|D|} </math> -->
 
<!-- <math display="block"> P_{obs}(A = a \wedge Y = +) = \frac{|\{X \in D | X(A) = a \wedge X(Y) = +\}|}{|D|} </math> -->
 
[[File: fairness_formula_2.JPG|1000x1000px|frameless|center]]
 
[[File: fairness_formula_2.JPG|1000x1000px|frameless|center]]
  
To compensate for the bias, lower weights to favored objects and higher weights to unfavored objects will be assigned. For each <!-- <math display="inline"> X \in D </math> --> [[File: X_D.JPG|1000x1000px|frameless]] we get:
+
Para compensar el sesgo, se asignan mayores pesos a los puntos no favorecidos y menores a los favorecidos. Para cada <!-- <math display="inline"> X \in D </math> --> [[File: X_D.JPG|1000x1000px|frameless]] obtenemos:
 
<!-- <math display="block"> W(X) = \frac{P_{exp}(A = X(A) \wedge Y = X(Y))}{P_{obs}(A = X(A) \wedge Y = X(Y))} </math> -->
 
<!-- <math display="block"> W(X) = \frac{P_{exp}(A = X(A) \wedge Y = X(Y))}{P_{obs}(A = X(A) \wedge Y = X(Y))} </math> -->
 
[[File: fairness_formula_3.JPG|1000x1000px|frameless|center]]
 
[[File: fairness_formula_3.JPG|1000x1000px|frameless|center]]
  
When we have for each <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]] a weight associated <!-- <math display="inline"> W(X) </math> --> we compute the weighted discrimination with respect to group <!-- <math display="inline"> A = a </math> --> [[File: A_a.JPG|47x16px|framelesss|text-bottom]] as follows:
+
Una vez tenemos asignado a cada <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]] un peso asociado <!-- <math display="inline"> W(X) </math> --> calculamos la discriminación ponderada con respecto al grupo <!-- <math display="inline"> A = a </math> --> [[File: A_a.JPG|47x16px|framelesss|text-bottom]] de la siguiente manera:
 
<!-- <math display="block"> disc_{A = a}(D) = \frac{\sum W(X) X \in \{X\in D| X(A) \neq a, X(Y) = +\}}{\sum W(X) X \in \{X \in D | X(A) \neq a \}} - \frac{\sum W(X) X \in \{X\in D| X(A) = a, X(Y) = +\}}{\sum W(X) X \in \{X \in D | X(A) = a \}} </math> -->
 
<!-- <math display="block"> disc_{A = a}(D) = \frac{\sum W(X) X \in \{X\in D| X(A) \neq a, X(Y) = +\}}{\sum W(X) X \in \{X \in D | X(A) \neq a \}} - \frac{\sum W(X) X \in \{X\in D| X(A) = a, X(Y) = +\}}{\sum W(X) X \in \{X \in D | X(A) = a \}} </math> -->
 
[[File: fairness_formula_4.JPG|1000x1000px|frameless|center]]
 
[[File: fairness_formula_4.JPG|1000x1000px|frameless|center]]
  
It can be shown that after reweighting this weighted discrimination is 0.
+
Se puede demostrar que después de la asignación de los pesos la discriminación ponderada es 0.
  
 
===Optimización durante el entrenamiento===
 
===Optimización durante el entrenamiento===
Línea 227: Línea 242:
 
Esta técnica obtiene buenos resultados al mejorar la equidad, al mismo tiempo que mantiene una exactitud alta, y permite al programador elegir las métricas que mejor se ajusten a sus necesidades. Sin embargo, la técnica y las métricas utilizadas varían en función del problema y es necesario modificar el código del algoritmo, lo que no siempre es posible.<ref name="datascience"/>
 
Esta técnica obtiene buenos resultados al mejorar la equidad, al mismo tiempo que mantiene una exactitud alta, y permite al programador elegir las métricas que mejor se ajusten a sus necesidades. Sin embargo, la técnica y las métricas utilizadas varían en función del problema y es necesario modificar el código del algoritmo, lo que no siempre es posible.<ref name="datascience"/>
  
==== Adversarial debiasing <ref name="adversarial1"> Brian Hu Zhang; Blake Lemoine; Margaret Mitchell, [https://arxiv.org/pdf/1801.07593.pdf ''Mitigating Unwanted Biases with Adversarial Learning'']. Retrieved 17 December 2019</ref> <ref name="adversarial2"> Joyce Xu, [https://towardsdatascience.com/algorithmic-solutions-to-algorithmic-bias-aef59eaf6565 ''Algorithmic Solutions to Algorithmic Bias: A Technical Guide'']. Retrieved 17 December 2019</ref> ====
+
==== ''Adversarial debiasing'' <ref name="adversarial1"> Brian Hu Zhang; Blake Lemoine; Margaret Mitchell, [https://arxiv.org/pdf/1801.07593.pdf ''Mitigating Unwanted Biases with Adversarial Learning'']. Consultado el 17 de diciembre de 2019</ref> <ref name="adversarial2"> Joyce Xu, [https://towardsdatascience.com/algorithmic-solutions-to-algorithmic-bias-aef59eaf6565 ''Algorithmic Solutions to Algorithmic Bias: A Technical Guide'']. Consultado el 17 de diciembre de 2019</ref> ====
  
[[File:AdvFig1.JPG|200x150px|frame|50px|Interaction between "predictor" and "adversarial" as shown by Joyce Xu <ref name=adversarial2/>]]
+
[[File:AdvFig1.JPG|200x150px|frame|50px|Interacción entre ''predictor'' y ''adversario'' como se muestra en Joyce Xu<ref name=adversarial2/>]]
We train two classifiers at the same time through some gradient-based method (f.e.: gradient descent). The first one, the "predictor" tries to accomplish the task of predicting <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]], the target variable, given <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]], the input, by modifying its weights <!-- <math display="inline"> W </math> --> [[File: W.JPG|1000x1000px|frameless|text-bottom]] to minimize some loss function <!-- <math display="inline">L_{P}(\hat{y},y)</math> --> [[File: lpyy.JPG|1000x1000px|frameless]]. The second one, the "adversary" tries to accomplish the task of predicting <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]], the sensitive variable, given <!-- <math display="inline"> \hat{Y} </math> --> [[File: Ygorro.JPG|1000x1000px|frameless]] by modifying its weights <!-- <math display="inline"> U </math> --> [[File: U.JPG|20x20px|frameless]] to minimize some loss function <!-- <math display="inline">L_{P}(\hat{z},z) </math> --> [[File: lpzz.JPG|1000x1000px|frameless]].
+
Se entrenan dos [[wikipedia:es:clasificación estadística | clasificadores]] al mismo tiempo con algún método basado en el gradiente (p.e.: [[wikipedia:Gradient descent | descenso de gradiente]]). El primero (el ''predictor'') intenta resolver el problema de predecir la variable objetivo <!-- <math display="inline"> Y </math> --> [[File: Y.JPG|1000x1000px|frameless|text-bottom]] dada la entrada <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]], modificando sus pesos <!-- <math display="inline"> W </math> --> [[File: W.JPG|1000x1000px|frameless|text-bottom]] para minimizar una [[wikipedia:es:función de pérdida|función de pérdida]]  <!-- <math display="inline">L_{P}(\hat{y},y)</math> --> [[File: lpyy.JPG|1000x1000px|frameless]]. El segundo (el ''adversario'') intenta resolver el problema de predecir la variable sensible <!-- <math display="inline"> A </math> --> [[File: A.JPG|1000x1000px|frameless|text-bottom]], dado <!-- <math display="inline"> \hat{Y} </math> --> [[File: Ygorro.JPG|1000x1000px|frameless]] modificando sus pesos <!-- <math display="inline"> U </math> --> [[File: U.JPG|20x20px|frameless]] para minimizar otra función de pérdida <!-- <math display="inline">L_{A}(\hat{a},a) </math> --> [[File: lpzz.JPG|1000x1000px|frameless]].
  
An important point here is that, in order to propagate correctly, <!-- <math display="inline"> \hat{Y} </math> --> [[File: Ygorro.JPG|1000x1000px|frameless]] above must refer to the raw output of the classifier, not the discrete prediction; for example, with an artificial neural network and a classification problem, <!-- <math display="inline"> \hat{Y} </math> --> [[File: Ygorro.JPG|1000x1000px|frameless]] could refer to the output of the softmax layer.
+
Una puntualización importante es que, para que se propague correctamente, la variable <!-- <math display="inline"> \hat{Y} </math> --> [[File: Ygorro.JPG|1000x1000px|frameless]] de arriba debe referirse a la salida en bruto del clasificador y no a la salida discreta; por ejemplo, con una [[wikipedia:es:red neuronal artificial|red neuronal artificial]] y un problema de clasificación <!-- <math display="inline"> \hat{Y} </math> --> [[File: Ygorro.JPG|1000x1000px|frameless]], se podría referir a la salida de la capa ''softmax''.
  
Then we update <!-- <math display="inline"> U </math> --> [[File: U.JPG|20x20px|frameless]] to minimize <!-- <math display="inline"> L_{A} </math> --> [[File: LA.JPG|24x21px|frameless]] at each training step according to the gradient <!-- <math display="inline"> \nabla_{U}L_{A} </math> --> [[File: grad_ula.JPG|1000x1000px|frameless]] and we modify <!-- <math display="inline"> W </math> --> [[File: W.JPG|1000x1000px|frameless|text-bottom]] according to the expression:
+
A continuación, actualizamos <!-- <math display="inline"> U </math> --> [[File: U.JPG|20x20px|frameless]] para minimizar <!-- <math display="inline"> L_{A} </math> --> [[File: LA.JPG|24x21px|frameless]] en cada paso del entrenamiento según el [[wikipedia:es:gradiente|gradiente]] <!-- <math display="inline"> \nabla_{U}L_{A} </math> --> [[File: grad_ula.JPG|1000x1000px|frameless]] y modificamos <!-- <math display="inline"> W </math> --> [[File: W.JPG|1000x1000px|frameless|text-bottom]] conforme a la expresión:
 
<!-- <math display="block"> \nabla_{W}L_{P} - proj_{\nabla_{W}L_{A}}\nabla_{W}L_{P} - \alpha \nabla_{W}L_{A} </math> -->
 
<!-- <math display="block"> \nabla_{W}L_{P} - proj_{\nabla_{W}L_{A}}\nabla_{W}L_{P} - \alpha \nabla_{W}L_{A} </math> -->
 
[[File: fairness_formula_5.JPG|1000x1000px|frameless|center]]
 
[[File: fairness_formula_5.JPG|1000x1000px|frameless|center]]
where <!-- <math display="alpha"> \alpha </math> --> [[File: Alpha.JPG|1000x1000px|frameless|text-bottom]] is a tuneable hyperparameter that can vary at each time step.
+
donde <!-- <math display="alpha"> \alpha </math> --> [[File: Alpha.JPG|1000x1000px|frameless|text-bottom]] es un hiperparámetro a elegir que puede variar en cada paso.
 +
 
 +
[[File:AdvFig2.JPG|100x150px|frame|50px|Representación gráfica de los vectores usados en ''adversarial debiasing'' como se muestra en Zhan y otros.<ref name=adversarial1/>]]
  
[[File:AdvFig2.JPG|100x150px|frame|50px|Graphic representation of the vectors used in adversarial debiasing as shown in Zhan et al.<ref name=adversarial1/>]]
+
La idea intuitiva consiste en que el ''predictor'' intente minimizar <!-- <math display="inline"> L_{P} </math> --> [[File: LP.JPG|1000x1000px|frameless]] ((y de ahí el término <!-- <math display="inline"> \nabla_{W}L_{P} </math> --> [[File: grad_wlp.JPG|1000x1000px|frameless]]) mientras, al mismo tiempo, maximice <!-- <math display="inline"> L_{A} </math> --> [[File: LA.JPG|24x21px|frameless]] (y de ahí el término <!-- <math display="inline"> - \alpha \nabla_{W}L_{A} </math> --> [[File: alfa_grad_wla.JPG|1000x1000px|frameless]]), de tal manera que el ''adversario'' fracase al predecir la variable sensible a partir de <!-- <math display="inline"> \hat{Y} </math> --> [[File: Ygorro.JPG|1000x1000px|frameless|text-bottom]].  
The intuitive idea is that we want the "predictor" to try to minimize <!-- <math display="inline"> L_{P} </math> --> [[File: LP.JPG|1000x1000px|frameless]] (therefore the term <!-- <math display="inline"> \nabla_{W}L_{P} </math> --> [[File: grad_wlp.JPG|1000x1000px|frameless]]) while, at the same time, maximize <!-- <math display="inline"> L_{A} </math> --> [[File: LA.JPG|24x21px|frameless]] (therefore the term <!-- <math display="inline"> - \alpha \nabla_{W}L_{A} </math> --> [[File: alfa_grad_wla.JPG|1000x1000px|frameless]]), so that the "adversary" fails at predicting the sensitive variable from  <!-- <math display="inline"> \hat{Y} </math> --> [[File: Ygorro.JPG|1000x1000px|frameless|text-bottom]].  
+
  
The term <!-- <math display="inline"> -proj_{\nabla_{W}L_{A}}\nabla_{W}L_{P} </math> --> [[File: fairness_formula_6.JPG|1000x1000px|frameless]] prevents the "predictor" from moving in a direction that helps the "adversary" decrease its loss function.
+
El término <!-- <math display="inline"> -proj_{\nabla_{W}L_{A}}\nabla_{W}L_{P} </math> --> [[File: fairness_formula_6.JPG|1000x1000px|frameless]] evita que el ''predictor'' cambie de una forma que pueda ayudar al ''advesario'' disminuir su función de pérdida.
  
It can be shown that training a classification model "predictor" with this algorithm decreases [[#Definitions based on predicted outcome | demographic parity]] with respect to training it without the "adversary".
+
Se puede demostrar que entrenar un modelo de clasificación ''predictor'' con este algoritmo mejora la [[#Definiciones basadas en el resultado predicho | paridad demográfica]] con respecto a entrenarlo sin el ''adversario''.
  
 
===Post-procesamiento===
 
===Post-procesamiento===
Línea 250: Línea 266:
 
La última técnica trata de corregir las respuestas del clasificador para alcanzar la equidad. En éste método, necesitamos hacer una predicción binaria para los individuos y tenemos un clasificador que devuelve una puntuación asociada a cada uno de ellos. Los individuos con puntuaciones altas tenderán a obtener una respuesta positiva, mientras que aquellos con una puntuación baja tendrán una respuesta negativa, pero necesitamos determinar el umbral a partir del cual se responde positiva o negativamente. Nótese que variar el umbral afecta al compromiso entre la tasa de verdaderos positivos y la tasa de verdaderos negativos, y en función del problema nos puede interesar mejorar una a costa de la otra.
 
La última técnica trata de corregir las respuestas del clasificador para alcanzar la equidad. En éste método, necesitamos hacer una predicción binaria para los individuos y tenemos un clasificador que devuelve una puntuación asociada a cada uno de ellos. Los individuos con puntuaciones altas tenderán a obtener una respuesta positiva, mientras que aquellos con una puntuación baja tendrán una respuesta negativa, pero necesitamos determinar el umbral a partir del cual se responde positiva o negativamente. Nótese que variar el umbral afecta al compromiso entre la tasa de verdaderos positivos y la tasa de verdaderos negativos, y en función del problema nos puede interesar mejorar una a costa de la otra.
  
Si la función de puntuación es justa, en el sentido de que es independiente del atributo protegido, entonces cualquier elección del valor umbral será también justa, pero este tipo de clasificadores tienden a sesgarse con facilidad, por lo que puede que necesitemos especificar un umbral distinto para cada grupo protegido. Una forma de hacerlo es estudiar las gráficas de la tasa de verdaderos positivos frente a la de verdaderos negativos para distintos valores del umbral (a esto se le conoce como curva ROC) y comprobar para qué valor del umbral las tasas son iguales para el grupo protegido y para el resto de individuos.<ref name="hardt"> Moritz Hardt; Eric Price; Nathan Srebro, [https://arxiv.org/pdf/1610.02413.pdf ''Equality of Opportunity in Supervised Learning'']. Retrieved 1 December 2019</ref>
+
Si la función de puntuación es justa, en el sentido de que es independiente del atributo protegido, entonces cualquier elección del valor umbral será también justa, pero este tipo de clasificadores tienden a sesgarse con facilidad, por lo que puede que necesitemos especificar un umbral distinto para cada grupo protegido. Una forma de hacerlo es estudiar las gráficas de la tasa de verdaderos positivos frente a la de verdaderos negativos para distintos valores del umbral (a esto se le conoce como curva ROC) y comprobar para qué valor del umbral las tasas son iguales para el grupo protegido y para el resto de individuos.<ref name="hardt"> Moritz Hardt; Eric Price; Nathan Srebro, [https://arxiv.org/pdf/1610.02413.pdf ''Equality of Opportunity in Supervised Learning'']. Consultado el 1 de diciembre de 2019</ref>
  
 
Entre las ventajas del post-procesamiento están que la técnica se puede aplicar después de usar cualquier clasificador, sin necesidad de modificarlo, y obtiene buenos resultados mejorando métricas de equidad. Entre los inconvenientes, es necesario consultar el valor del atributo protegido durante el post-procesamiento y se restringe la libertad del programador para regular el compromiso entre equidad y exactitud.<ref name="datascience"/>
 
Entre las ventajas del post-procesamiento están que la técnica se puede aplicar después de usar cualquier clasificador, sin necesidad de modificarlo, y obtiene buenos resultados mejorando métricas de equidad. Entre los inconvenientes, es necesario consultar el valor del atributo protegido durante el post-procesamiento y se restringe la libertad del programador para regular el compromiso entre equidad y exactitud.<ref name="datascience"/>
  
==== Reject Option based Classification (ROC) <ref name="roc"> Faisal Kamiran; Asim Karim; Xiangliang Zhang, [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.722.3030&rep=rep1&type=pdf ''Decision Theory for Discrimination-aware Classification'']. Retrieved 17 December 2019</ref> ====
+
==== ''Reject Option based Classification'' <ref name="roc"> Faisal Kamiran; Asim Karim; Xiangliang Zhang, [http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.722.3030&rep=rep1&type=pdf ''Decision Theory for Discrimination-aware Classification'']. Consultado el 17 de Diciembre de 2019</ref> ====
  
Given a classifier let <!-- <math display="inline"> P(+|X) </math> --> [[File: roc_formula_1.JPG|1000x1000px|frameless]] be the probability computed by the classifiers as the probability that the instance <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]] belongs to the positive class +. When <!-- <math display="inline"> P(+|X) </math> --> [[File: roc_formula_1.JPG|1000x1000px|frameless]] is close to 1 or to 0, the instance <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]] is specified with high degree of certainty to belong to class + or - respectively. However, when <!-- <math display="inline"> P(+|X) </math> --> [[File: roc_formula_1.JPG|1000x1000px|frameless]] is closer to 0.5 the classification is more unclear.
+
Dado un [[wikipedia:es:clasificación estadística | clasificador]], sea <!-- <math display="inline"> P(+|X) </math> --> [[File: roc_formula_1.JPG|1000x1000px|frameless]] la probabilidad calculada por este de que el sujeto <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]] pertenezca a la clase positiva. Cuando <!-- <math display="inline"> P(+|X) </math> --> [[File: roc_formula_1.JPG|1000x1000px|frameless]] sea cercano a 1 o 0, el sujeto <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]] será clasificado, con un alto grado de seguridad, como perteneciente a la clase positiva o negativa respectivamente. Sin embargo, cuando <!-- <math display="inline"> P(+|X) </math> --> [[File: roc_formula_1.JPG|1000x1000px|frameless]] está más próximo a 0.5 la clasificación no está clara.
  
We say <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]] is a "rejected instance" if <!-- <math display="inline"> max(P(+|X), 1-P(+|X)) \leq \theta </math> --> [[File: roc_formula_2.JPG|1000x1000px|frameless]] with a certain <!-- <math display="inline"> \theta </math> --> [[File: Theta.JPG|1000x1000px|frameless|text-bottom]] such that <!-- <math display="inline"> 0.5 < \theta < 1 </math> --> [[File: roc_formula_3.JPG|1000x1000px|frameless|text-bottom]].
+
Decimos que <!-- <math display="inline"> X </math> --> [[File: X.JPG|1000x1000px|frameless|text-bottom]] es un ''sujeto rechazado'' si <!-- <math display="inline"> max(P(+|X), 1-P(+|X)) \leq \theta </math> --> [[File: roc_formula_2.JPG|1000x1000px|frameless]] con cierto <!-- <math display="inline"> \theta </math> --> [[File: Theta.JPG|1000x1000px|frameless|text-bottom]] tal que <!-- <math display="inline"> 0.5 < \theta < 1 </math> --> [[File: roc_formula_3.JPG|1000x1000px|frameless|text-bottom]].
  
The algorithm of "ROC" consists on classifying the non rejected instances following the rule above and the rejected instances as follows: if the instance is an example of a deprived group (<!-- <math>X(A) = a</math> --> [[File: roc_formula_3.JPG|1000x1000px|frameless|text-bottom]]) then label it as positive, otherwise label it as negative.
+
El algoritmo consiste en clasificar los sujetos no rechazados siguiendo la regla explicada al principio y los rechazados de la siguiente manera: si la instancia es un ejemplo de grupo desprivilegiado (<!-- <math>X(A) = a</math> --> [[File: roc_formula_3.JPG|1000x1000px|frameless|text-bottom]]) entonces clasificarla como positivo, en el otro caso, clasificarla como negativo.
  
We can optimize different measures of discrimination <!-- (link) --> as functions of <!-- <math display="inline"> \theta </math> --> [[File: Theta.JPG|1000x1000px|frameless|text-bottom]] to find the optimal <!-- <math display="inline"> \theta </math> --> [[File: Theta.JPG|1000x1000px|frameless|text-bottom]] for each problem and avoid becoming discriminatory against the privileged group.
+
Podemos optimizar diferentes medidas de discriminación como funciones de <!-- <math display="inline"> \theta </math> --> [[File: Theta.JPG|1000x1000px|frameless|text-bottom]] para encontrar el <!-- <math display="inline"> \theta </math> --> [[File: Theta.JPG|1000x1000px|frameless|text-bottom]] óptimo para cada problema y evitar volvernos discriminatorios contra el grupo privilegiado.
  
 
== References ==
 
== References ==
 
<references />
 
<references />

Última revisión de 23:19 18 dic 2019

Versión en inglés: Fairness and bias correction in Machine Learning

En aprendizaje automático, un algoritmo es justo, o tiene equidad si sus resultados son independientes de un cierto conjunto de variables que consideramos sensibles y no relacionadas con él (p.e.: género, etnia, orientación sexual, etc.).

Contexto

Las investigaciones sobre equidad en algoritmos de aprendizaje automático son bastante recientes. Sin ir más lejos la mayoría de los artículos publicados sobre este tema son de los últimos tres años [1]. Algunos de los hechos más destacados en este ámbito han sido los siguientes:

  • En 2018 IBM introduce AI Fairness 360, una librería de Python con diversos algoritmos para redurcir el sesgo algorítmico de un programa, aumentando así su equidad. [2]
  • Facebook afirmó en 2018 que hace uso de una herramienta, Fairness Flow, que detecta sesgos en su IA. Sin embargo, no se puede acceder al código de dicha herramienta ni se sabe si realmente corrige estos sesgos. [3]
  • En 2019, Google publica un conjunto de herramientas en Github para estudiar los efectos de la equidad a largo plazo. [4]

A pesar de que se siguen perfeccionando los algoritmos utilizados, los principales avances vienen de la concienciación por parte de algunas grandes empresas de la importancia que va a tener en la sociedad la reducción del sesgo en los algoritmos de aprendizaje automático en un futuro.

Criterios de equidad en problemas de clasificación[5]

En problemas de clasificación, un algoritmo aprende una función para predecir una característica discreta Y.JPG, la variable objetivo, a partir de unas características conocidas X.JPG. Modelizamos A.JPG como una variable aleatoria que codifica algunas características contenidas o implícitamente codificadas en X.JPG que consideramos características protegidas (género, etnia, orientación sexual, etc.). Por último, denotamos por R.JPG la predicción del clasificador. Ahora pasamos a definir tres criterios principales para evaluar si un clasificador es justo, es decir, si sus predicciones no están influenciadas por algunas de las variables protegidas.

Independencia

Decimos que las variables aleatorias R,A.JPG satisfacen la independencia si las características protegidas A.JPG son estadísticamente independientes a la predicción R.JPG, y escribimos RbotA.JPG.

También podemos expresar esta noción con la siguiente fórmula:

IndependenceDef.JPG

Esto significa que la probabilidad de ser clasificado por el algoritmo en cada uno de los grupos es la misma para dos individuos con características protegidas distintas.

Se puede dar otra noción equivalente de independencia utilizando el concepto de información mutua entre variables aleatorias, definida como

MutInf.JPG

En esta fórmula, H.JPG es la entropía de la variable estadística. Entonces R,A.JPG satisface independencia si I(R,A).JPG.

Una posible relajación de la definición de independencia pasa por la introducción de una variable positiva EpsMq0.JPG, y viene dada por la fórmula:

IndependenceRel1.JPG

Por último, otra posible relajación pasa por requerir IndependenceRel2.JPG.

Separación

Decimos que las variables aleatorias R,A,Y.JPG satisfacen la separación si las características protegidas A.JPG son estadísticamente independientes a la predicción R.JPG dado el valor objetivo Y.JPG, y escribimos RbotAbarY.JPG.

También podemos expresar esta noción con la siguiente fórmula:

SeparationDef.JPG

Esto significa que la probabilidad de ser clasificado por el algoritmo en cada uno de los grupos es la misma para dos individuos con características protegidas distintas dado que ambos pertenecen al mismo grupo (tienen la misma variable objetivo).

Otra expresión equivalente, en el caso de tener una variable objetivo binaria, es la que exige que la tasa de verdaderos positivos y la tasa de falsos positivos sean iguales (y por tanto la tasa de falsos negativos y la tasa de verdaderos negativos también lo sean) para cada valor de las características protegidas:

SeparationDef1.JPG
SeparationDef2.JPG

Por último, una posible relajación de las definiciones dadas es que la diferencia entre tasas sea un número positivo menor que una cierta variable EpsMq0.JPG, en lugar de igual a cero.

Suficiencia

Decimos que las variables aleatorias R,A,Y.JPG satisface la suficiencia si las características protegidas A.JPG son estadísticamente independientes al valor objetivo Y.JPG dada la predicción R.JPG, y escribimos YbotAbarR.JPG.

También podemos expresar esta noción con la siguiente fórmula:

SufficiencyDef.JPG

Esto significa que la probabilidad de estar en realidad en cada uno de los grupos es la misma para dos individuos con características protegidas distintas dado que la predicción los englobe en el mismo grupo.

Relaciones entre definiciones

Por último, resumimos algunos de los principales resultados que relacionan las tres definiciones dadas arriba:

Métricas [6]

La mayoría de medidas de equidad dependen de diferentes métricas, de modo que comenzaremos por definirlas. Cuando trabajamos con un clasificador binario, tanto la clase predicha por el algoritmo como la real pueden tomar dos valores: positivo y negativo. Empecemos ahora explicando las posibles relaciones entre el resultado predicho y el real:
Matriz de confusión
  • Verdadero positivo (TP): Cuando el resultado predicho y el real pertenecen a la clase positiva.
  • Verdadero negativo (TN): Cuando el resultado predicho y el real pertenecen a la clase negativa.
  • Falso positivo (FP): Cuando el resultado predicho es positivo pero el real pertenece a la clase negativa.
  • Falso negativo (FN): Cuando el resultado predicho es negativo pero el real pertenece a la clase positiva.

Estas relaciones pueden ser representadas fácilmente con una matriz de confusión, una tabla que describe la precisión de un modelo de clasificación. En esta matriz, las columnas y las filas representan instancias de las clases predichas y reales, respectivamente.

Utilizando estas relaciones, podemos definir múltiples métricas que podemos usar después para medir la equidad de un algoritmo:

  • Valor predicho positivo (PPV): la fracción de casos positivos que han sido predichos correctamente de entre todas las predicciones positivas. Con frecuencia, se denomina como precisión, y representa la probabilidad de que una predicción positiva sea correcta. Viene dada por la siguiente fórmula:
PPV.JPG
  • Tasa de descubrimiento de falsos (FDR): la fracción de predicciones positivas que eran en realidad negativas de entre todas las predicciones positivas. Representa la probabilidad de que una predicción positiva sea errónea, y viene dada por la siguiente fórmula:
FDR.JPG
  • Valor predicho negativo (NPV): la fracción de casos negativos que han sido predichos correctamente de entre todas las predicciones negativas. Representa la probabilidad de que una predicción negativa sea correcta, y viene dada por la siguiente fórmula:
NPV.JPG
  • Tasa de omisión de falsos (FOR): la fracción de predicciones negativas que eran en realidad positivas de entre todas las predicciones negativas. Representa la probabilidad de que una predicción negativa sea errónea, y viene dada por la siguiente fórmula:
FOR.JPG
  • Tasa de verdaderos positivos (TPR): la fracción de casos positivos que han sido predichos correctamente de entre todos los casos positivos. Con frecuencia, se denomina como exhaustividad, y representa la probabilidad de que los sujetos positivos sean clasificados correctamente como tales. Viene dada por la fórmula:
TPR.JPG
  • Tasa de falsos negativos (FNR): la fracción de casos positivos que han sido predichos de forma errónea como negativos de entre todos los casos positivos. Representa la probabilidad de que los sujetos positivos sean clasificados erróneamente como negativos, y viene dada por la fórmula:
FNR.JPG
  • Tasa de verdaderos negativos (TNR): la fracción de casos negativos que han sido predichos correctamente de entre todos los casos negativos. Representa la probabilidad de que los sujetos negativos sean clasificados correctamente como tales, y viene dada por la fórmula:
TNR.JPG
  • Tasa de falsos positivos (FPR): la fracción de casos negativos que han sido predichos de forma errónea como positivos de entre todos los casos negativos. Representa la probabilidad de que los sujetos negativos sean clasificados erróneamente como positivos, y viene dada por la fórmula:
FPR.JPG

Otros criterios de equidad

Relación entre los criterios de equidad como se muestra en Barocas y otros.[5]

Los criterios siguientes se pueden entender como métricas de las tres definiciones dadas en la primera sección, o una relajación de las mismas. En la tabla [5] de la derecha podemos ver cómo se relacionan.

Para definir estas métricas específicamente, se dividen en tres grandes grupos como en el trabajo de Verma y otros.[6]: definiciones basadas en el resultado predicho, en el resultado predicho y el real, y definiciones basadas en las probabilidades predichas y el resultado real.

En la siguiente sección se trbaja con un clasificador binario y la siguiente notación: S.JPG se refiere a la puntuación dada por el clasificador, la cual es la probabilidad que cierto sujeto se encuentre en la clase positiva o negativa. R.JPG representa la clasificación final predicha por el algoritmo, y su valor es comunmente derivado de S.JPG, por ejemplo será positivo cuando S.JPG esté por encima de cierto valor. Y.JPG representa el resultado real, es decir, la clasificación real del sujeto y, finalmente, A.JPG denota las variables protegidas del sujeto.

Definiciones basadas en el resultado predicho

Las definiciones en estas secciones se centran en el resultado predicho R.JPG para varias distribuciones de sujetos. Son las nociones más simples e intuitivas de equidad.

  • Group fairness, también llamado statistical parity, demographic parity, acceptance rate y benchmarking. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen la misma probabilidad de ser asignados a la clase positiva. Es decir, si se satisface la siguiente fórmula:
Group fairness.JPG
  • Conditional statistical parity. Consiste básicamente en la definición anterior, pero restringida solo a un subconjunto de los atributos. En notación matemática:
Definitions1.JPG

Definiciones basadas en el resultado predicho y el real

Estas definiciones no sólo consideran el resultado predicho R.JPG pero también lo comparan con el resultado real Y.JPG.

  • Predictive parity, también llamado outcome test. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo PPV. Es decir, si se satisface la siguiente fórmula:
Predictive parity.JPG
Matemáticamente, si un clasificador tiene el mismo PPV para ambos grupos, también tiene el mismo FDR, satisfaciendo la fórmula:
Predictive parity2.JPG
  • False positive error rate balance, también llamado predictive equality. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo FPR. Es decir, si se satisface la siguiente fórmula:
Predictive equality.JPG
Matemáticamente, si un clasificador tiene el mismo FPR para ambos grupos, también tiene el mismo TNR, satisfaciendo la fórmula:
Predictive equality2.JPG
  • False negative error rate balance, también llamado equal opportunity. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo FNR. Es decir, si se satisface la siguiente fórmula:
Equal opportunity.JPG
Matemáticamente, si un clasificador tiene el mismo FNR para ambos grupos, también tiene el mismo TPR, satisfaciendo la fórmula:
Equal opportunity2.JPG
  • Equalized odds, también llamado conditional procedure accuracy equality and disparate mistreatment. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo TPR y el mismo FPR, satisfaciendo la fórmula:
Equalized odds.JPG
  • Conditional use accuracy equality. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo PPV y el mismo NPV, satisfaciendo la fórmula:
Conditional.JPG
  • Overall accuracy equality. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen la misma precisión de predicción, es decir, la probabilidad de predecir correctamente a qué clase pertenece un sujeto. Es decir, si se satisface la siguiente fórmula:
Overall.JPG
  • Treatment equality. Un clasificador satisface esta definición si los sujetos en los grupos protegidos y en los no protegidos tienen el mismo ratio de FN y FP, satisfaciendo la fórmula:
Treatment.JPG

Definiciones basadas en las probabilidades predichas y el resultado real

Estas definiciones se basan en el resultado real Y.JPG y en la probabilidad predicha (la puntuación) S.JPG.

  • Test-fairness, también conocido como calibration o matching conditional frequencies. Un clasificador satisface esta definición si individuos con la misma puntuación S.JPG tienen la misma probabilidad de ser clasificados en la clase positiva independientemente de si pertenecen a los grupos protegidos o no:
Definitions2.JPG
  • Well-calibration. Es una extensión de la definición anterior. Añade que, cuando individuos dentro o fuera de los grupos protegidos tienen la misma puntuación S.JPG deben tener la misma probabilidad de ser clasificados en la clase positiva, y esta probabilidad debe ser igual a S.JPG:
Definitions3.JPG
  • Balance for positive class. Un clasificador satisface esta definición si los individuos que constituyen la clase positiva pertenecientes tanto los grupos protegidos como de los no protegidos tienen la misma media de puntuación S.JPG. Esto quiere decir que la esperanza de la puntuación para los grupos protegidos y los no protegidos con clase real positiva Y.JPG es la misma, satisfaciendo la fórmula:
Balance positive.JPG
  • Balance for negative class. Un clasificador satisface esta definición si los individuos que constituyen la clase negativa pertenecientes tanto los grupos protegidos como de los no protegidos tienen la misma media de puntuación S.JPG.Esto quiere decir que la esperanza de la puntuación para los grupos protegidos y los no protegidos con clase real negativa Y.JPG es la misma, satisfaciendo la fórmula:
Balance negative.JPG

Algoritmos

Se puede aplicar la equidad al aprendizaje automático desde tres perspectivas: pre-procesando los datos utilizados en el algoritmo, optimizando los objetivos durante el entrenamiento o procesando las respuestas tras la ejecución del algoritmo.

Preprocesamiento

Normalmente, el clasificador no es el único problema, el conjunto de datos también está sesgado. La discriminación de un conjunto de datos D.jpg con respecto al grupo framelesss se puede definir como sigue:

DatasetDisc.JPG

Esto es, una aproximación de la diferencia entre las probabilidades de pertenecer a la clase positiva dado que el sujeto tiene una característica protegida distinta de a framelesss e igual a framelesss.

Los algoritmos que corrigen el sesgo mediante preprocesamiento intentan eliminar información sobre ciertos atributos de los datos que pueden provocar un comportamiento injusto de la IA, al mismo tiempo que tratan de alterar estos datos lo menos posible. Eliminar del conjunto de datos una variable protegida no es suficiente, ya que otras variables pueden estar correlacionadas con ella.

Una posible forma de hacerlo consiste en asociar cada individuo del conjunto de datos a una representación intermedia en la que sea imposible determinar si pertenece o no a un grupo protegido, a la vez que se mantiene el resto de la información tanto como sea posible. Después, se ajusta la nueva representación del conjunto de datos para buscando el máximo acierto del algoritmo.

De este modo, los individuos se vinculan a una nueva representación en la que la probabilidad de que un miembro de un grupo protegido sea asociado a cierto valor de la nueva representación es la misma que la de un individuo no protegido. Así, es la nueva representación la que se utiliza para obtener la predicción para el individuo en vez de los datos originales. Como la representación intermedia se ha construido dando la misma probabilidad a cada individuo independientemente de si pertenecen al grupo protegido o no, esto queda oculto para el clasificador.

Se puede encontrar un ejemplo en Zemel y otros [7] en el que se utiliza una variable aleatoria multinomial como representación intermedia. En el proceso, se preserva toda la información excepto la que pueda conducir a decisiones sesgadas a la vez que se busca una predicción lo más correcta que sea posible.

Por un lado, este procedimiento tiene la ventaja de que los datos preprocesados se pueden utilizar para cualquier tarea de aprendizaje automático. Además, no hay que modificar el código del clasificador, ya que la corrección se aplica a los datos que se van a introducir en él. Por otro lado, los otros métodos obtienen mejores resultados tanto en acierto como en equidad. [8]

Reweighing [9]

La técnica del reweighing, en español reasignación de pesos, es un ejemplo de algoritmo de preprocesamiento. La idea consiste en asignar un peso a cada punto del conjunto de datos de tal manera que la discriminación ponderada es 0 respecto al grupo de interés.

Si el conjunto de datos D.jpg fuera no sesgado, la variable protegida A.JPG y la variable objetivo Y.JPG serían estadísticamente independientes y la probabilidad de la distribución conjunta sería el producto de las probabilidades de la siguiente manera:

Fairness formula 1.JPG

Sin embargo, en la vida real el conjunto de datos suele estar sesgado y las variables no son estadísticamente independientes por lo que la probabilidad observada es:

Fairness formula 2.JPG

Para compensar el sesgo, se asignan mayores pesos a los puntos no favorecidos y menores a los favorecidos. Para cada X D.JPG obtenemos:

Fairness formula 3.JPG

Una vez tenemos asignado a cada X.JPG un peso asociado calculamos la discriminación ponderada con respecto al grupo framelesss de la siguiente manera:

Fairness formula 4.JPG

Se puede demostrar que después de la asignación de los pesos la discriminación ponderada es 0.

Optimización durante el entrenamiento

Otra aproximación al problema es corregir el sesgo durante el entrenamiento. Esto puede hacerse añadiendo restricciones al objetivo del algoritmo.[10] Estas restricciones obligan al algoritmo a tener en cuenta la equidad, de forma que el máximo éxito no sea su único objetivo, sino también mantener ciertas métricas iguales tanto para el grupo protegido como para el resto de individuos. Por ejemplo, se puede añadir al algoritmo la condición de que la tasa de falsos positivos sea la misma para individuos del grupo protegido y para los que no lo son.

Las principales métricas que se utilizan en esta técnica son la tasa de falsos positivos, la tasa de falsos negativos y la tasa general de fallo. Es posible añadir sólo una o varias de estas restricciones al objetivo. Nótese que la igualdad de las tasas de falsos negativos implica la igualdad también de las tasas de verdaderos positivos, lo que significa igualdad de oportunidad. Tras añadir las restricciones al algoritmo, el problema puede volverse infactible y por tanto puede ser necesario relajarlas.

Esta técnica obtiene buenos resultados al mejorar la equidad, al mismo tiempo que mantiene una exactitud alta, y permite al programador elegir las métricas que mejor se ajusten a sus necesidades. Sin embargo, la técnica y las métricas utilizadas varían en función del problema y es necesario modificar el código del algoritmo, lo que no siempre es posible.[8]

Adversarial debiasing [11] [12]

Interacción entre predictor y adversario como se muestra en Joyce Xu[12]

Se entrenan dos clasificadores al mismo tiempo con algún método basado en el gradiente (p.e.: descenso de gradiente). El primero (el predictor) intenta resolver el problema de predecir la variable objetivo Y.JPG dada la entrada X.JPG, modificando sus pesos W.JPG para minimizar una función de pérdida Lpyy.JPG. El segundo (el adversario) intenta resolver el problema de predecir la variable sensible A.JPG, dado Ygorro.JPG modificando sus pesos U.JPG para minimizar otra función de pérdida Lpzz.JPG.

Una puntualización importante es que, para que se propague correctamente, la variable Ygorro.JPG de arriba debe referirse a la salida en bruto del clasificador y no a la salida discreta; por ejemplo, con una red neuronal artificial y un problema de clasificación Ygorro.JPG, se podría referir a la salida de la capa softmax.

A continuación, actualizamos U.JPG para minimizar LA.JPG en cada paso del entrenamiento según el gradiente Grad ula.JPG y modificamos W.JPG conforme a la expresión:

Fairness formula 5.JPG

donde Alpha.JPG es un hiperparámetro a elegir que puede variar en cada paso.

Representación gráfica de los vectores usados en adversarial debiasing como se muestra en Zhan y otros.[11]

La idea intuitiva consiste en que el predictor intente minimizar LP.JPG ((y de ahí el término Grad wlp.JPG) mientras, al mismo tiempo, maximice LA.JPG (y de ahí el término Alfa grad wla.JPG), de tal manera que el adversario fracase al predecir la variable sensible a partir de Ygorro.JPG.

El término Fairness formula 6.JPG evita que el predictor cambie de una forma que pueda ayudar al advesario disminuir su función de pérdida.

Se puede demostrar que entrenar un modelo de clasificación predictor con este algoritmo mejora la paridad demográfica con respecto a entrenarlo sin el adversario.

Post-procesamiento

La última técnica trata de corregir las respuestas del clasificador para alcanzar la equidad. En éste método, necesitamos hacer una predicción binaria para los individuos y tenemos un clasificador que devuelve una puntuación asociada a cada uno de ellos. Los individuos con puntuaciones altas tenderán a obtener una respuesta positiva, mientras que aquellos con una puntuación baja tendrán una respuesta negativa, pero necesitamos determinar el umbral a partir del cual se responde positiva o negativamente. Nótese que variar el umbral afecta al compromiso entre la tasa de verdaderos positivos y la tasa de verdaderos negativos, y en función del problema nos puede interesar mejorar una a costa de la otra.

Si la función de puntuación es justa, en el sentido de que es independiente del atributo protegido, entonces cualquier elección del valor umbral será también justa, pero este tipo de clasificadores tienden a sesgarse con facilidad, por lo que puede que necesitemos especificar un umbral distinto para cada grupo protegido. Una forma de hacerlo es estudiar las gráficas de la tasa de verdaderos positivos frente a la de verdaderos negativos para distintos valores del umbral (a esto se le conoce como curva ROC) y comprobar para qué valor del umbral las tasas son iguales para el grupo protegido y para el resto de individuos.[13]

Entre las ventajas del post-procesamiento están que la técnica se puede aplicar después de usar cualquier clasificador, sin necesidad de modificarlo, y obtiene buenos resultados mejorando métricas de equidad. Entre los inconvenientes, es necesario consultar el valor del atributo protegido durante el post-procesamiento y se restringe la libertad del programador para regular el compromiso entre equidad y exactitud.[8]

Reject Option based Classification [14]

Dado un clasificador, sea Roc formula 1.JPG la probabilidad calculada por este de que el sujeto X.JPG pertenezca a la clase positiva. Cuando Roc formula 1.JPG sea cercano a 1 o 0, el sujeto X.JPG será clasificado, con un alto grado de seguridad, como perteneciente a la clase positiva o negativa respectivamente. Sin embargo, cuando Roc formula 1.JPG está más próximo a 0.5 la clasificación no está clara.

Decimos que X.JPG es un sujeto rechazado si Roc formula 2.JPG con cierto Theta.JPG tal que Roc formula 3.JPG.

El algoritmo consiste en clasificar los sujetos no rechazados siguiendo la regla explicada al principio y los rechazados de la siguiente manera: si la instancia es un ejemplo de grupo desprivilegiado ( Roc formula 3.JPG) entonces clasificarla como positivo, en el otro caso, clasificarla como negativo.

Podemos optimizar diferentes medidas de discriminación como funciones de Theta.JPG para encontrar el Theta.JPG óptimo para cada problema y evitar volvernos discriminatorios contra el grupo privilegiado.

References

  1. Moritz Hardt, Berkeley. Consultado el 18 de diciembre de 2019
  2. IBM AI Fairness 360. Consultado el 18 de diciembre de 2019
  3. Fairness Flow el detector de sesgos de Facebook. Consultado el 18 de diciembre de 2019
  4. ML-Fairness gym. Consultado el 18 de diciembre de 2019
  5. 5,0 5,1 5,2 Solon Barocas; Moritz Hardt; Arvind Narayanan, Fairness and Machine Learning. Consultado el 15 de diciembre de 2019.
  6. 6,0 6,1 Sahil Verma; Julia Rubin, Fairness Definitions Explained. Consultado el 15 de diciembre de 2019
  7. Richard Zemel; Yu (Ledell) Wu; Kevin Swersky; Toniann Pitassi; Cyntia Dwork, Learning Fair Representations. Consultado el 1 de Diciembre de 2019
  8. 8,0 8,1 8,2 Ziyuan Zhong, Tutorial on Fairness in Machine Learning. Consultado el 1 de Diciembre de 2019
  9. Faisal Kamiran; Toon Calders, Data preprocessing techniques for classification without discrimination. Consultado el 17 de Diciembre de 2019
  10. Muhammad Bilal Zafar; Isabel Valera; Manuel Gómez Rodríguez; Krishna P. Gummadi, Fairness Beyond Disparate Treatment & Disparate Impact: Learning Classification without Disparate Mistreatment. Consultado el 1 de Diciembre de 2019
  11. 11,0 11,1 Brian Hu Zhang; Blake Lemoine; Margaret Mitchell, Mitigating Unwanted Biases with Adversarial Learning. Consultado el 17 de diciembre de 2019
  12. 12,0 12,1 Joyce Xu, Algorithmic Solutions to Algorithmic Bias: A Technical Guide. Consultado el 17 de diciembre de 2019
  13. Moritz Hardt; Eric Price; Nathan Srebro, Equality of Opportunity in Supervised Learning. Consultado el 1 de diciembre de 2019
  14. Faisal Kamiran; Asim Karim; Xiangliang Zhang, Decision Theory for Discrimination-aware Classification. Consultado el 17 de Diciembre de 2019