Algorithmic fairness

by Oliver Thomas and Thomas Kehrenberg

Machine Learning

...using statistical techniques to give computer systems the ability to "learn" (e.g., progressively improve performance on a specific task) from data, without being explicitly programmed.

 

 

 

But there are problems:

 

 

Biased training data

 

Bias introduced by the ML algorithm

 

Let's have all the fairness!

If we are fair with regards to all notions of fair, then we're fair... right?

Independence based fairness (i.e. Statistical Parity)

$$ \hat{Y} \perp S $$

Separation based fairness (i.e. Equalised Odds/Opportunity)

$$ \hat{Y} \perp S | Y $$

For both to hold, then either $S \perp Y$, our data is fair, or $\hat{Y} \perp Y$, we have a random predictor.

Similarly, Sufficiency cannot hold with either notion of fairness.

So which fairness criteria should we use?

Consider a university, and we are in charge of administration!

We can only accept 50% of all applicants.

10,000 applicants are female and 10,000 of applicants are male.

We have been tasked with being fair with regard to gender.

We have an acceptance criteria that is highly predictive of success.

80% of those who meet the acceptance criteria will successfully graduate.

Only 10% of those who don't meet the acceptance criteria will successfully graduate.

As we're a good university we have a lot of applications from people who don't meet the acceptance criteria.

60% of female applicants meet the acceptance criteria.

40% of male applicants meet the acceptance criteria.

Remember, we can only accept 50% of all applicants

What should we do?

Truth Tables

Female Applicants

Accepted Not
Actually Graduate
Don't Graduate

Male Applicants

Accepted Not
Actually Graduate
Don't Graduate

How would we solve this problem being fair using Statistical Parity as our measure?

???
Select 50% of applicants of both female and male applicants

Female Applicants

Accepted Not
Actually Graduate 4000 1200
Don't Graduate 1000 3800

Male Applicants

Accepted Not
Actually Graduate 3300 500
Don't Graduate 1700 4500
10% of qualified female applicants are being rejected whilst an additional 10% of unqualified males are being accepted.

How would we solve this problem being fair using Equal Opportunity as our measure?

???
Select 55.5% of female applicants and 44.5% of male applicants, giving a TPR of 85.4% for both groups.

Female Applicants

Accepted Not
Actually Graduate 4440 760
Don't Graduate 1110 3690

Male Applicants

Accepted Not
Actually Graduate 3245 555
Don't Graduate 1205 4995
Similar situation to Statistical Parity

How would we solve this problem being fair using Calibration by Group as our measure?

???
Select only the applicants who meet the acceptance criteria.

Female Applicants

Accepted Not
Actually Graduate 4800 400
Don't Graduate 1200 3600

Male Applicants

Accepted Not
Actually Graduate 3200 600
Don't Graduate 800 5400
Could lead to systemic reinforcement of bias.

Which fairness criteria should we use?

There's no right answer, all the above are "fair". It's important to consult domain experts to find which is the best fit for each problem. There is no one-size fits all.

Problems with doing this?

Any Ideas?

Problems with doing this?

What does this representation mean?

The learned representation is uninterpretable by default. Recently Quadrianto et al constrained the representation to be in the same same as the input so that we could look at what changed

Problems with doing this?

What if the vendor data user decides to be fair as well?

Referred to as "fair pipelines". Work has only just begun exploring these. Current research shows that these don't work (at the moment!)