TabFairGAN: Fair Tabular Data Generation with Generative Adversarial Networks
About
With the increasing reliance on automated decision making, the issue of algorithmic fairness has gained increasing importance. In this paper, we propose a Generative Adversarial Network for tabular data generation. The model includes two phases of training. In the first phase, the model is trained to accurately generate synthetic data similar to the reference dataset. In the second phase we modify the value function to add fairness constraint, and continue training the network to generate data that is both accurate and fair. We test our results in both cases of unconstrained, and constrained fair data generation. In the unconstrained case, i.e. when the model is only trained in the first phase and is only meant to generate accurate data following the same joint probability distribution of the real data, the results show that the model beats state-of-the-art GANs proposed in the literature to produce synthetic tabular data. Also, in the constrained case in which the first phase of training is followed by the second phase, we train the network and test it on four datasets studied in the fairness literature and compare our results with another state-of-the-art pre-processing method, and present the promising results that it achieves. Comparing to other studies utilizing GANs for fair data generation, our model is comparably more stable by using only one critic, and also by avoiding major problems of original GAN model, such as mode-dropping and non-convergence, by implementing a Wasserstein GAN.
Related benchmarks
| Task | Dataset | Result | Rank | |
|---|---|---|---|---|
| Fairness-aware Classification | Adult-Race (test) | Accuracy77.3 | 25 | |
| Binary Classification | Credit card Protected attribute: Age (test) | Accuracy80.78 | 20 | |
| Predictive Modeling | Credit card Protected attribute: Sex (test) | Accuracy80.85 | 20 | |
| Predictive Modeling | German Credit | Accuracy (Acc)74.2 | 20 | |
| Credit Scoring | Credit scoring dataset | Accuracy (Acc)93.09 | 20 | |
| Credit Scoring | Credit scoring (Protected attribute: Age) | Accuracy93.99 | 20 | |
| Classification | Dutch census | Accuracy79.06 | 20 | |
| Fairness evaluation | Credit card Sex | Statistical Parity-0.0577 | 15 | |
| Fairness evaluation | Credit card Age | Statistical Parity-0.0966 | 10 | |
| Fairness evaluation | Adult Dataset (test) | -- | 6 |