Is invariance all you need for algorithmic fairness? Removing demographic information can create new bias
Organizations: Technical University of Denmark, Kgs. Lyngby, Denmark · Fraunhofer Institute for Digital Medicine MEVIS, Bremen, Germany · CONICET – Universidad de Buenos Aires, ICC, Buenos Aires, Argentina · University of Copenhagen, Copenhagen, Denmark
Abstract
Encoded demographic information in internal model representations is a commonly assumed risk factor for algorithmic bias, with demographic representation invariance often being touted as the ideal state. However, while demographic shortcut learning is a genuine threat, some degree of encoding is necessary when demographics correlate with target labels. Here, we show, mathematically and empirically, that enforcing demographic invariance can actually hamper bias mitigation and even create new biases. We distinguish marginal from class-conditional representation invariance, and show that they imply the standard group fairness notions of demographic parity and equalized odds, respectively. We evaluate the effects on predictive performance and fairness of enforcing both invariance types, both theoretically and empirically across five tabular and two chest X-ray imaging datasets. Our findings support our mathematical argument that demographic representation invariance is neither desirable nor sufficient for fairness.
Figures & tables
| Utility | Decodability of | Indep. | Separation | Sufficiency | Group calibration | |||
|---|---|---|---|---|---|---|---|---|
| Method | AUROC | |||||||
| Adult | ERM | |||||||
| Dutch | ERM | |||||||
Appendix figures & tables24 assets
Supplementary material from the paper’s appendix.
Appendix
| Dataset | Cond. | Method | AUROC | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Adult | Eq | ERM | 0.00 | 0.87 0.00 | 0.92 0.00 | 0.98 0.00 | 0.13 0.01 | 0.14 0.01 | 0.14 0.01 | 0.01 0.00 | 0.42 0.02 |
| Eq | M | 0.00 | 0.72 0.01 | 0.56 0.00 | 0.88 0.02 | 0.03 0.00 | 0.22 0.05 | 0.06 0.03 | 0.01 0.00 | 0.57 0.06 | |
| Eq | C | 0.00 | 0.84 0.01 | 0.55 0.00 | 0.61 0.02 | 0.05 0.01 | 0.08 0.00 | 0.01 0.00 | 0.01 0.00 | 0.54 0.05 | |
| Nat | ERM | 0.19 | 0.88 0.00 | 0.93 0.00 | 0.99 0.00 | 0.32 0.01 | 0.22 0.01 | 0.06 0.01 | 0.00 0.00 | 0.38 0.01 | |
| Nat | M | 0.19 | 0.77 0.00 | 0.57 0.01 | 0.85 0.01 | 0.04 0.00 | 0.31 0.02 | 0.42 0.03 | 0.17 0.00 | 0.65 0.07 | |
| Nat | C | 0.19 | 0.85 0.00 | 0.60 0.00 | 0.59 0.01 | 0.15 0.01 | 0.09 0.02 | 0.28 0.00 | 0.10 0.00 | 0.49 0.04 |
| Probe AUC ( from ) | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|
| Dataset | Method | LR | GB | MLP-0 | MLP-1 | MLP-2 | LR | Adv BA | Bound | Max |
| Adult | ERM | 0.93 0.00 | 0.93 0.00 | 0.93 0.00 | 0.93 0.00 | 0.93 0.00 | 0.51 0.02 | 0.86 0.00 | – | 0.99 0.00 |
| M | 0.56 0.00 | 0.57 0.01 | 0.57 0.01 | 0.57 0.01 | 0.58 0.01 | 0.51 0.01 | 0.55 0.01 | 0.55 0.00 | 0.85 0.02 | |
| C | 0.61 0.01 | 0.62 0.00 | 0.62 0.01 | 0.62 0.00 | 0.62 0.00 | 0.51 0.01 | 0.58 0.01 | 0.53 0.00 | 0.56 0.00 | |
| Dutch census | ERM | 0.75 0.00 | 0.77 0.00 | 0.77 0.00 | 0.77 0.00 | 0.77 0.00 | 0.51 0.04 | 0.68 0.00 | – | 0.77 0.00 |
| M | 0.51 0.00 | 0.51 0.00 | 0.51 0.01 | 0.51 0.00 | 0.51 0.00 | 0.49 0.00 | 0.50 0.00 | 0.51 0.00 | 0.79 0.01 | |
| Dataset | Feature set | MADE | n fits | AUROC | exact TV | ||||
|---|---|---|---|---|---|---|---|---|---|
| Adult | paper6 | 50 | 3 | 0.79 0.00 | 0.58 0.01 | 0.89 0.01 | 0.08 0.00 | 0.38 0.03 | 0.103 0.003 |
| Adult | paper6 | 100 | 3 | 0.79 0.00 | 0.59 0.01 | 0.87 0.02 | 0.09 0.01 | 0.36 0.04 | 0.102 0.005 |
| Adult | paper6_age (selected) | 50 | 3 | 0.79 0.00 | 0.58 0.01 | 0.85 0.02 | 0.04 0.00 | 0.40 0.03 | 0.096 0.007 |
| Adult | paper6_age | 100 | 3 | 0.80 0.00 | 0.58 0.00 | 0.84 0.02 | 0.05 0.01 | 0.38 0.02 | 0.093 0.024 |
| Dutch census | core6 | 50 | 3 | 0.72 0.00 | 0.52 0.01 | 0.81 0.01 | 0.01 0.01 | 0.27 0.02 | 0.022 0.003 |
| Dutch census | core6 | 100 | 3 | 0.72 0.01 | 0.52 0.00 | 0.81 0.00 | 0.01 0.01 | 0.30 0.01 | 0.022 0.003 |
| Dataset | Method | Youden | Acc ( ) | ( ) | ( ) | Acc (0.5) | (0.5) | (0.5) |
|---|---|---|---|---|---|---|---|---|
| Adult | ERM | 0.22 0.02 | 0.78 0.02 | 0.40 0.03 | 0.28 0.02 | 0.84 0.00 | 0.24 0.01 | 0.39 0.03 |
| Adult | 0.17 0.02 | 0.69 0.02 | 0.04 0.00 | 0.40 0.03 | 0.78 0.00 | 0.01 0.01 | 0.06 0.03 | |
| Adult | 0.17 0.00 | 0.75 0.02 | 0.17 0.01 | 0.08 0.04 | 0.82 0.00 | 0.11 0.01 | 0.06 0.01 | |
| Dutch census | ERM | 0.43 0.02 | 0.82 0.00 | 0.30 0.00 | 0.05 0.00 | 0.83 0.00 | 0.29 0.00 | 0.06 0.00 |
| Dutch census | 0.40 0.04 | 0.64 0.00 | 0.01 0.01 | 0.31 0.03 | 0.65 0.01 | 0.01 0.01 | 0.22 0.03 | |
| Dutch census | 0.41 0.04 | 0.81 0.00 | 0.27 0.01 | 0.03 0.01 | 0.81 0.00 | 0.28 0.01 | 0.02 0.01 |
| Training Prevalences ( / ) | ||||||
|---|---|---|---|---|---|---|
| Dataset | Samples | Natural | Equalized | Natural | Shift-50 | Shift-75 |
| Adult income | 48,842 | 0.11 / 0.30 | 0.11 / 0.11 | 0.11 / 0.31 | 0.06 / 0.31 | 0.03 / 0.31 |
| (29,312 / 4,880 / 4,885 / 9,765) | ||||||
| Dutch census | 60,420 | 0.33 / 0.63 | 0.33 / 0.33 | 0.33 / 0.62 | 0.20 / 0.62 | 0.11 / 0.62 |
| (36,252 / 6,042 / 6,042 / 12,084) | ||||||
| Comm. & Crime | 1,994 | 0.27 / 0.71 | 0.26 / 0.26 | 0.26 / 0.69 | 0.15 / 0.69 | 0.08 / 0.69 |
| Dataset | Method | Seed | AUROC | ||||||
|---|---|---|---|---|---|---|---|---|---|
| Adult | ERM | 42 | 0.89 | 0.93 | 0.99 | 0.42 | 0.30 | 0.17 | 0.00 |
| Adult | ERM | 123 | 0.89 | 0.93 | 0.99 | 0.36 | 0.27 | 0.19 | 0.02 |
| Adult | ERM | 456 | 0.89 | 0.93 | 0.99 | 0.40 | 0.27 | 0.18 | 0.02 |
| Adult | M-FNF ( ) | 42 | 0.79 | 0.58 | 0.86 | 0.04 | 0.37 | 0.48 | 0.23 |
| Adult | M-FNF ( ) | 123 | 0.79 | 0.57 | 0.86 | 0.05 | 0.43 | 0.47 | 0.23 |
| Adult | M-FNF ( ) | 456 | 0.79 | 0.58 | 0.83 | 0.04 | 0.41 | 0.51 | 0.23 |
| Dataset | Method | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Adult | ERM | 0.02 0.00 | 0.02 0.00 | 0.96 0.03 | 0.85 0.01 | 0.08 | 0.03 0.12 | 0.004 | 0.004 0.016 | 0.02 0.01 | 0.32 0.06 |
| M | 0.13 0.01 | 0.11 0.01 | 0.06 0.04 | 1.34 0.05 | 0.06 | 0.75 0.06 | 0.007 | 0.112 0.009 | 0.23 0.00 | 2.12 0.01 | |
| C | 0.08 0.01 | 0.08 0.01 | 0.79 0.03 | 0.88 0.02 | 0.14 | 0.60 0.09 | 0.013 | 0.075 0.010 | 0.15 0.00 | 1.80 0.07 | |
| Dutch | ERM | 0.12 0.00 | 0.10 0.00 | 1.01 0.02 | 0.90 0.01 | 0.05 | 0.75 0.02 | 0.004 | 0.095 0.003 | 0.22 0.00 | 2.00 0.03 |
| M | 0.23 0.00 | 0.22 0.01 | 0.51 0.08 | 1.65 0.06 | 0.01 | 1.07 0.04 | 0.003 | 0.219 0.007 | 0.44 0.00 | 2.32 0.03 | |
| C | 0.12 0.01 | 0.11 0.00 | 0.98 0.03 | 0.91 0.02 | 0.05 | 0.89 0.04 | 0.006 | 0.114 0.005 | 0.23 0.01 | 2.05 0.07 |
| Method | AUROC | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| ERM | 0.896 | 0.70 | 0.64 | 0.296 | 0.055 | 0.27 | 0.28 | 0.22 | 2.00 |
| Score | 0.813 | 0.54 | 0.77 | 0.006 | 0.258 | 0.55 | 0.35 | 0.44 | 3.68 |
| Score (within-class map) | 0.881 | 0.67 | 0.59 | 0.257 | 0.024 | 0.36 | 0.28 | 0.24 | 2.11 |
| Mean matching, | 0.896 | 0.70 | 0.63 | 0.291 | 0.051 | 0.29 | 0.28 | 0.22 | 1.95 |
| Mean matching, | 0.889 | 0.69 | 0.66 | 0.270 | 0.082 | 0.27 | 0.30 | 0.28 | 1.79 |
| Mean matching, | 0.883 | 0.69 | 0.66 | 0.266 | 0.081 | 0.30 | 0.30 | 0.41 | 1.87 |
| Task | Partition | Images | Patients | ||
|---|---|---|---|---|---|
| Edema | Train | 107,688 | 37,580 | 0.198 | 0.313 |
| Checkpoint | 9,050 | 3,134 | 0.195 | 0.325 | |
| Development | 8,872 | 3,138 | 0.202 | 0.333 | |
| Probe val. | 17,186 | 6,271 | 0.206 | 0.310 | |
| Test | 35,078 | 12,551 | 0.205 | 0.309 | |
| Cardiomegaly | Train | 111,980 | 38,082 | 0.081 | 0.159 |
| Task | Method | Max ECE | ||||
|---|---|---|---|---|---|---|
| Edema | ERM | |||||
| M .05 | ||||||
| M .50 | ||||||
| M .95 | ||||||
| C .05 | ||||||
| C .50 |
| Task | Method | AUROC | AUPRC | |||
|---|---|---|---|---|---|---|
| Edema | ERM | |||||
| M .05 | ||||||
| M .50 | ||||||
| M .95 | ||||||
| C .05 | ||||||
| C .50 |
| Task | Seed | Test | Test upper | Dev. upper | Test pass |
|---|---|---|---|---|---|
| Edema | 42 | 0.515 | 0.540 | 0.591 | Yes |
| 123 | 0.510 | 0.541 | 0.563 | Yes | |
| 456 | 0.514 | 0.545 | 0.572 | Yes | |
| Cardiomegaly | 42 | 0.514 | 0.557 | 0.637 | No |
| 123 | 0.516 | 0.559 | 0.618 | No | |
| 456 | 0.515 | 0.558 | 0.606 | No |
| Task | Method | ECE | Slope | Intercept | ||
|---|---|---|---|---|---|---|
| Edema | ERM | 0 | ||||
| 1 | ||||||
| M .95 | 0 | |||||
| 1 | ||||||
| C .95 | 0 | |||||
| 1 |
| Sex Probe AUROC | Fairness Gaps | ||||||
|---|---|---|---|---|---|---|---|
| Pathology | Method | Task AUROC | Marginal | DP Gap | EO Gap | ||
| Edema | DANN | 0.842 0.003 | 0.950 0.005 | 0.950 0.006 | 0.938 0.008 | 0.069 0.023 | 0.033 0.025 |
| CDANN | 0.845 0.003 | 0.952 0.006 | 0.955 0.007 | 0.940 0.012 | 0.111 0.015 | 0.074 0.025 | |
| Cardiomegaly | DANN | 0.842 0.004 | 0.947 0.006 | 0.951 0.006 | 0.928 0.018 | 0.054 0.031 | 0.037 0.015 |
| CDANN | 0.843 0.006 | 0.944 0.030 | 0.957 0.008 | 0.924 0.027 | 0.105 0.028 | 0.078 0.042 | |
| Method | Configs. | Task AUROC | Probe AUROC | Pass | Main Finding / Limitation |
| Baselines and Controls | |||||
| ERM | 1 | 0.840 | 0.961 | 0/1 | Strong demographic leakage. |
| ERM adapters | 3 | 0.833 | 0.554–0.803 | 0/3 | Compression reduced leakage but did not meet the criterion. |
| PCA + ERM | 2 | 0.838 | 0.813–0.886 | 0/2 | Substantial residual leakage. |
| Constant output | 1 | 0.500 | 0.502 | 1/1 | Trivial removal through complete task collapse. |
| Learned Representations | |||||
Algorithmic Fairness
Algorithmic fairness studies how automated decisions distribute errors, opportunities, and harms across groups, and how to measure and reduce disparities.
See all 420 papers