This repository contains experiments on improving data utility of DECAF using alternating graph during synthesization.
The method is introduced in the paper DECAF: Generating Fair Synthetic Data Using Causally-Aware Generative networks. The original code of DECAF paper is here.
As the official implementation is imcomplete, the implementation in this repo is adapted from this work Replication Study of DECAF: Generating Fair Synthetic Data Using Causally-Aware Generative, whose code can be found here.
python -m venv env
source env/bin/activate
pip install -r requirements.txt
The experiments results are precomputed and can be shown using
python results.py
model precision recall f1-score auroc ftu dp ftu-f1 ftu-auroc dp-f1 dp-auroc
0 original 0.877±0.005 0.930±0.007 0.903±0.001 0.764±0.008 0.030±0.009 0.175±0.012 0.935±0.004 0.855±0.006 0.862±0.007 0.793±0.002
1 decaf_nd 0.887±0.021 0.758±0.038 0.816±0.015 0.729±0.023 0.089±0.043 0.347±0.061 0.861±0.023 0.809±0.017 0.724±0.041 0.686±0.024
2 decaf_ftu 0.888±0.016 0.759±0.031 0.818±0.013 0.732±0.018 0.028±0.020 0.297±0.039 0.888±0.011 0.835±0.013 0.756±0.027 0.716±0.016
3 decaf_cf 0.777±0.013 0.879±0.042 0.824±0.015 0.551±0.028 0.036±0.022 0.041±0.029 0.889±0.013 0.701±0.026 0.886±0.018 0.699±0.018
4 decaf_dp 0.762±0.009 0.914±0.034 0.831±0.015 0.518±0.021 0.021±0.021 0.016±0.012 0.899±0.010 0.677±0.014 0.901±0.010 0.679±0.017
5 decaf_cf-y 0.758±0.009 0.970±0.025 0.851±0.006 0.509±0.021 0.012±0.011 0.021±0.021 0.914±0.007 0.672±0.016 0.910±0.011 0.669±0.014
6 decaf_dp-y 0.756±0.005 0.976±0.020 0.852±0.007 0.504±0.012 0.014±0.010 0.020±0.019 0.914±0.008 0.667±0.010 0.911±0.011 0.665±0.013
The experiments are implemented in the experiment.py
script
python experiment.py