Beyond Procedure: Substantive Fairness in Conformal Prediction
Organizations: McGill University, Montreal, Canada · TD Insurance, Montreal, Canada · UQAM, Montreal, Canada · Layer 6 AI, Toronto, Canada
Abstract
Conformal prediction (CP) offers distribution-free uncertainty quantification for machine learning models, yet its interplay with fairness in downstream decision-making remains underexplored. Moving beyond CP as a standalone operation (procedural fairness), we analyze the holistic decision-making pipeline to evaluate substantive fairness-the equity of downstream outcomes. Theoretically, we derive an upper bound that decomposes prediction-set size disparity into interpretable components, clarifying how label-clustered CP helps control method-driven contributions to unfairness. To facilitate scalable empirical analysis, we introduce an LLM-in-the-loop evaluator that approximates human assessment of substantive fairness across diverse modalities. Our experiments show that label-clustered CP often provides a favorable balance between utility and substantive fairness, while reducing set-size disparities in line with our theory. Finally, we empirically show that equalized set sizes, rather than coverage, strongly correlate with improved substantive fairness, enabling practitioners to design more fair CP systems. Our code is available at https://github.com/layer6ai-labs/llm-in-the-loop-conformal-fairness.
Figures & tables
| Task | Acc | CP Method | Cvg | Size | |
|---|---|---|---|---|---|
| FACET | 70.0 | 22.2 | Marginal | 89.9 | 2.62 |
| Mondrian | 89.9 | 2.66 | |||
| Label-Clustered | 89.1 | 2.92 | |||
| Group-Clustered | 89.3 | 2.51 | |||
| Backward | 90.1 | 3.50 | |||
| BiosBias | 78.9 | 2.70 | Marginal | 89.5 | 1.68 |
| Human-in-the-loop | LLM-in-the-loop | |||
| Dataset | Marginal | Mondrian | Marginal | Mondrian |
| FACET | 26 | 51 | 9.0 | 38 |
| BiosBias | 12 | 33 | 6.9 | 8.1 |
| RAVDESS | 1.0 | 28 | 11 | 79 |
Appendix figures & tables35 assets
Supplementary material from the paper’s appendix.
Appendix
| Group | |||
|---|---|---|---|
| White | 6655 | 13487 | 6637 |
| Black or African American | 842 | 1560 | 819 |
| Asian | 662 | 1362 | 663 |
| Two or More Races | 1134 | 2164 | 1117 |
| All Other Races | 707 | 1427 | 764 |
| Total | 10000 | 20000 | 10000 |
| Dataset | Score Function | Marginal | Mondrian | Label-Clustered | Group-Clustered | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| FACET | RAPS | 0.53 | 0.07 | 4 | 0.30 | 0.16 | 4 | 0.51 | 1.38 | 4 | 0.30 | 0.16 | 4 |
| BiosBias | SAPS | 0.56 | 0.20 | – | 0.40 | 0.20 | – | 0.74 | 0.28 | – | 0.47 | 0.19 | – |
| RAVDESS | RAPS | 0.16 | 1.61 | 3 | 0.15 | 0.69 | 3 | 0.17 | 0.35 | 3 | 0.16 | 0.51 | 3 |
| ACSIncome | RAPS | 0.09 | 0.05 | 4 | 0.10 | 0.05 | 4 | 0.09 | 0.05 | 4 | 0.09 | 0.05 | 4 |
| Dataset | LLM-in-the-loop | Total predictions | Cost/wall-clock time | |
|---|---|---|---|---|
| FACET | Qwen2.5-VL-7B-Instruct | 8 | 67200 | 30 h 56 min |
| BiosBias | GPT-4o-mini | 5 | 60000 | $0.82 |
| BiosBias | Llama-3.2-3B | 8 | 96000 | 1 h 52 min |
| RAVDESS | GPT-4o-audio-preview | 5 | 10800 | $16 |
| ACSIncome | Qwen2.5-7B | 4 | 240000 | 22 h 50 min |
| Treatment | Group | Human adoption% | LLM adoption% |
|---|---|---|---|
| Marginal | Middle | 92.82 | 96.52 |
| Older | 91.66 | 90.66 | |
| Unknown | 96.76 | 99.01 | |
| Younger | 94.79 | 98.23 | |
| Mondrian | Middle | 93.22 | 96.42 |
| Older | 92.91 | 92.17 |
| Treatment | Group | Human adoption% | LLM adoption% |
|---|---|---|---|
| Marginal | Female | 92.31 | 95.22 |
| Male | 93.87 | 98.20 | |
| Mondrian | Female | 92.30 | 92.07 |
| Male | 94.48 | 97.36 |
| Treatment | Group | Human adoption% | LLM adoption% |
|---|---|---|---|
| Marginal | Female | 90.67 | 91.89 |
| Male | 87.97 | 92.44 | |
| Mondrian | Female | 91.95 | 90.00 |
| Male | 92.20 | 94.11 |
| FACET | BiosBias | RAVDESS | |
|---|---|---|---|
| 78.40% | 80.64% | 46.58% | |
| 37.99% | 76.74% | 0.00% | |
| 25.14% | 9.30% | 41.75% |
| Group | ||||
|---|---|---|---|---|
| Female | 1.026 | 1.219 | 27.4 | 9.9 |
| Male | 1.308 | 1.110 |
| Dataset | Interaction term | -value |
| FACET | adoption Older | .896 |
| adoption Unknown | .454 | |
| adoption Younger | .812 | |
| BiosBias | adoption Male | .425 |
| ACSIncome | adoption Asian alone | .128 |
| adoption Black or African American alone | .824 † |
| Dataset | Treatment | Model 1 maxROR (%) | Model 2 maxROR (%) |
|---|---|---|---|
| FACET | Marginal | 9.0 | 9.1 |
| Mondrian | 37.7 | 37.4 | |
| Label-Clustered | 13.5 | 14.0 | |
| Group-Clustered | 14.5 | 14.3 | |
| Backward | 8.5 | 8.4 | |
| BiosBias | Marginal | 6.9 | 6.9 |
| Treatment | Cvg (Gap)% | Size (Gap) | Accuracy (Gap)% | maxROR% |
|---|---|---|---|---|
| Control | 78.96 (2.86) | |||
| Marginal | 89.5 (2.75) | 1.68 (.050) | 80.71 (3.75) | 6.9 |
| Mondrian | 90.0 (.220) | 1.80 (.474) | 80.96 (3.90) | 8.1 |
| Label-Clustered | 90.2 (2.80) | 1.81 (.033) | 79.72 ( 2.55 ) | 1.6 |
| Group-Clustered | 90.2 (.193) | 1.75 (.419) | 81.05 (4.53) | 12.5 |
| Backward | 91.5 (1.87) | 2.50 (.025) | 79.41 ( 2.87 ) | 0.3 |
| Treatment | Cvg (Gap)% | Size (Gap) | Accuracy (Gap)% | maxROR% |
|---|---|---|---|---|
| Control | 67.54 (4.97) | |||
| Marginal | 89.7 (2.76) | 1.69 (.027) | 76.03 (3.28) | 50.0 |
| Mondrian | 89.1 (0.00) | 1.70 (.435) | 75.98 (5.03) | 66.3 |
| Label-Clustered | 90.1 (.019) | 1.78 (.067) | 74.83 ( 1.55 ) | 36.0 |
| Group-Clustered | 90.3 (.010) | 1.74 (.343) | 75.74 (4.30) | 59.3 |
| Backward | 91.5 (.018) | 2.49 (.016) | 71.19 ( 1.38 ) | 36.2 |
| Treatment | Cvg (Gap)% | Size (Gap) | Accuracy (Gap)% | maxROR% |
|---|---|---|---|---|
| Control | 21.11 (0.67) | |||
| Marginal | 88.33 (5.56) | 1.89 (.039) | 44.28 ( 1.00 ) | 10.5 |
| Mondrian | 87.50 (.556) | 1.86 (.578) | 44.56 (12.0) | 79.2 |
| Label-Clustered | 87.78 (2.22) | 1.92 (.011) | 46.22 ( 1.33 ) | 12.1 |
| Group-Clustered | 87.50 (.556) | 1.90 (.594) | 42.94 (15.44) | 110.3 |
| Backward | 91.94 (8.33) | 2.48 (.011) | 39.22 (2.22) | 17.0 |
| Treatment | Cvg (Gap)% | Size (Gap) | Accuracy (Gap)% | maxROR% |
|---|---|---|---|---|
| Control | 74.04 (18.00) | |||
| Marginal | 89.9 (10.7) | 2.62 (.738) | 76.91 ( 16.27 ) | 9.0 |
| Mondrian | 89.9 (3.02) | 2.69 (2.68) | 77.06 (21.71) | 37.7 |
| Label-Clustered | 89.1 (7.46) | 2.92 (.356) | 78.81 ( 14.47 ) | 13.5 |
| Group-Clustered | 89.1 (8.14) | 2.50 (1.28) | 77.22 (18.05) | 14.5 |
| Backward | 90.3 (8.85) | 3.50 (.053) | 75.54 (18.39) | 8.5 |
| Treatment | Cvg (Gap)% | Size (Gap) | Accuracy (Gap)% | maxROR% |
|---|---|---|---|---|
| Control | 14.70 (2.22) | |||
| Marginal | 89.8 (3.18) | 5.35 (.256) | 20.41 (3.15) | 19.4 |
| Mondrian | 89.5 (3.87) | 7.16 (1.08) | 14.91 ( 1.59 ) | 17.5 |
| Label-Clustered | 89.9 (3.67) | 5.33 (.270) | 18.68 ( 2.88 ) | 7.2 |
| Group-Clustered | 89.8 (2.88) | 5.37 (.410) | 19.02 (5.05) | 23.1 |
| Backward | 92.3 (3.03) | 6.50 (.010) | 15.02 (4.37) | 19.7 |
| Treatment | Accuracy (Gap)% | maxROR% |
|---|---|---|
| Control | 79.01 (2.84) | |
| Marginal | 80.79 (3.69) | 9.0 .22 |
| Mondrian | 81.06 (3.87) | 9.7 .22 |
| Label-Clustered | 79.78 ( 2.54 ) | 6.1 .16 |
| Group-Clustered | 81.15 (4.49) | 13.1 .26 |
| Backward | 79.49 ( 2.82 ) | 6.5 .16 |
| Treatment | Accuracy (Gap)% | maxROR% |
|---|---|---|
| Control | 21.07 (.840) | |
| Marginal | 44.26 ( .820 ) | 24.6 1.1 |
| Mondrian | 44.56 (11.79) | 70.0 1.2 |
| Label-Clustered | 46.09 ( 1.29 ) | 23.4 .78 |
| Group-Clustered | 42.89 (15.25) | 92.5 1.5 |
| Backward | 39.28 (2.17) | 18.4 .49 |
| Treatment | Accuracy (Gap)% | maxROR% |
|---|---|---|
| Control | 73.64 (18.17) | |
| Marginal | 76.69 ( 16.33 ) | 23.4 .38 |
| Mondrian | 76.26 (21.76) | 42.3 .60 |
| Label-Clustered | 78.86 ( 14.64 ) | 28.5 .44 |
| Group-Clustered | 77.04 (18.07) | 30.8 .47 |
| Backward | 75.07 (18.43) | 21.6 .35 |
| Treatment | Accuracy (Gap)% | maxROR% |
|---|---|---|
| Control | 14.55 (2.27) | |
| Marginal | 20.29 (3.22) | 32.6 .45 |
| Mondrian | 14.67 ( 1.55 ) | 30.9 .45 |
| Label-Clustered | 18.38 ( 2.90 ) | 23.4 .34 |
| Group-Clustered | 18.19 (5.06) | 32.2 .43 |
| Backward | 15.10 (4.35) | 33.2 .45 |
| Treatment | Group | Cvg% | Size | Singleton% | Accuracy% |
|---|---|---|---|---|---|
| Control | Female | 80.43 | |||
| Male | 77.58 | ||||
| Marginal | Female | 90.92 | 1.65 | 62.33 | 82.64 |
| Male | 88.17 | 1.70 | 60.14 | 78.89 | |
| Mondrian | Female | 89.89 | 1.56 | 65.33 | 82.97 |
| Male | 90.11 | 2.03 | 29.00 | 79.07 |
| Treatment | Group | Cvg% | Size | Singleton% | Accuracy% |
|---|---|---|---|---|---|
| Control | Female | 20.78 | |||
| Male | 21.44 | ||||
| Marginal | Female | 91.11 | 1.91 | 37.78 | 44.78 |
| Male | 85.56 | 1.87 | 40.56 | 43.78 | |
| Mondrian | Female | 87.78 | 1.57 | 57.78 | 50.56 |
| Male | 87.22 | 2.15 | 22.22 | 38.56 |
| Treatment | Group | Cvg% | Size | Singleton% | Accuracy% |
|---|---|---|---|---|---|
| Control | Middle | 71.40 | |||
| Older | 65.25 | ||||
| Unknown | 74.63 | ||||
| Younger | 83.24 | ||||
| Marginal | Middle | 88.61 | 2.72 | 29.22 | 74.49 |
| Older | 84.62 | 2.91 | 18.68 | 69.51 |
| Treatment | Group | Cvg% | Size | Singleton% | Accuracy% |
|---|---|---|---|---|---|
| Control | All Other Races | 15.12 | |||
| Asian | 12.90 | ||||
| Black or African American | 15.08 | ||||
| Two or More Races | 15.02 | ||||
| White | 14.72 | ||||
| Marginal | All Other Races | 87.83 | 5.44 | .654 | 19.08 |
| Set-size gap | .050 | .024 | .033 | .045 | .027 | .034 | .053 | .054 | .055 | .057 |
|---|---|---|---|---|---|---|---|---|---|---|
| maxROR (%) | 6.9 | 4.4 | 1.6 | 2.7 | 2.0 | 0.5 | 1.1 | 1.8 | 2.7 | 3.1 |