Fair and Optimal Classification via Post-Processing

Authors: Ruicheng Xian, Lang Yin, Han Zhao

ICML 2023 | Conference PDF | Archive PDF | Plain Text | LLM Run Details

Reproducibility Variable Result LLM Response
Research Type Experimental On the practical side, our findings lead to a simple post-processing algorithm that derives fair classifiers from score functions, which yields the optimal fair classifier when the score is Bayes optimal. We provide suboptimality analysis and sample complexity for our algorithm, and demonstrate its effectiveness on benchmark datasets.
Researcher Affiliation Academia 1University of Illinois Urbana-Champaign, Urbana, Illinois, USA.
Pseudocode Yes Algorithm 1 Post-Process for α-DP... Algorithm 2 Post-Process for α-DP (Finite Samples, Continuous Case)
Open Source Code Yes Our code is available at https://github.com/rxian/fair-classification.
Open Datasets Yes the UCI Adult dataset for income prediction (Kohavi, 1996)... the ACSIncome dataset (Ding et al., 2021)... the Communities & Crime dataset (Redmond & Baveja, 2002)... the Bias Bios dataset (De-Arteaga et al., 2019)
Dataset Splits Yes On each dataset, we split the data into pre-training, post-processing, and testing. ...Adult... which we split for pre-training/post-processing/testing by 0.35/0.35/0.3. ...ACSIncome... which we split for pre-training/post-processing/testing by 0.63/0.07/0.3. ...Bias Bios... which we split for pre-training/post-processing/testing by 0.35/0.35/0.3. ...Communities & Crime... which we split for pre-training/post-processing/testing by 0.35/0.35/0.3.
Hardware Specification Yes Our algorithm is run on a single core of an Intel Xeon Silver 4314 CPU, and Fair Projection is run on an NVIDIA RTX A6000 GPU.
Software Dependencies No The paper mentions software like 'cvxpy', 'COIN-OR Cbc solver', 'scikit-learn', and 'Hugging Face Transformers library' but does not provide specific version numbers for these dependencies.
Experiment Setup Yes Hyperparameters. The tradeoff curves in Figure 4 and Example A.5 are generated with the following fairness tolerance/strictness settings. For our method, α is set to: ACSIncome (binary). 0.2, 0.18, 0.16, 0.14, 0.12, 0.1, 0.08, 0.06, 0.04, 0.02, 0.01, 0.005, 0.001, 0.0. ... (and similar lists for other datasets)