  Machine learning has become more important in real-life decision-making but
people are concerned about the ethical problems it may bring when used
improperly. Recent work brings the discussion of machine learning fairness into
the causal framework and elaborates on the concept of Counterfactual Fairness.
In this paper, we develop the Fair Learning through dAta Preprocessing (FLAP)
algorithm to learn counterfactually fair decisions from biased training data
and formalize the conditions where different data preprocessing procedures
should be used to guarantee counterfactual fairness. We also show that
Counterfactual Fairness is equivalent to the conditional independence of the
decisions and the sensitive attributes given the processed non-sensitive
attributes, which enables us to detect discrimination in the original decision
using the processed data. The performance of our algorithm is illustrated using
simulated data and real-world applications.
