Option 1: Pre-processing

If we decide to mitigate bias at the pre-processing stage, we modify the training data in order to reduce or remove unwanted bias before training the model (e.g. re-sampling). The aim is to train the model on data that is free from unwanted bias. Pre-processing methods are agnostic, which means that the type of model does not matter.

aif360 proposes the following pre-processing mitigation techniques:

  • Reweighting, where the tuples in the training set are assigned weights. By modulating the weights, and using metrics based on frequency counts, it is possible to remove discrimination from the dataset (Kamiran and Calders, 2012)

  • Disparate Impact remover, which modifies the values of some features in order to reduce bias, while preserving the rank-order within each group (Feldman et al, 2015)

  • Optimized Pre-processing, which aims to learn a probabilistic transformation of the data that trades off discrimination control, data utility, and individual distortion (Calmon et al 2017)

  • Learning data representations, where the aim of the model is to get to a representation of the data that both encodes the data as well as possible, and also obfuscates any information about membership in the protected group. (Zemel et al 2013)

An example of how to do this in a binary classification problem in recruitment can be found on our notebook here, or downloading the following file:

Last updated