This evaluation probes an AutoML framework's ability to jointly optimize predictive performance and fairness constraints during pipeline search. It measures how well a multi-criteria genetic algorithm balances accuracy metrics against demographic parity, equalised odds, and ABROCA while simultaneously selecting data and features. Use when the user wants to benchmark on adult, credit-card, portuguese-bank-marketing, or asks about evaluating this task. Reports DP.
Installs into .claude/skills of the current project.
Are you the author of Fairness Aware Automl Eval?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/qhjqhj00-fairness-aware-automl-eval)
---
name: fairness-aware-automl-eval
description: This evaluation probes an AutoML framework's ability to jointly optimize predictive performance and fairness constraints during pipeline search. It measures how well a multi-criteria genetic algorithm balances accuracy metrics against demographic parity, equalised odds, and ABROCA while simultaneously selecting data and features. Use when the user wants to benchmark on adult, credit-card, portuguese-bank-marketing, or asks about evaluating this task. Reports DP.
metadata:
skill_kind: dataset_eval
source_arxiv: 2604.10224
bibtex_key: [REDACTED]
confidence: high
---
# fairness-aware-automl-eval
> Exploring the impact of fairness-aware criteria in AutoML — Simões and Correia (2026) (arXiv:2604.10224, 2026)
## What this evaluates
This evaluation probes an AutoML framework's ability to jointly optimize predictive performance and fairness constraints during pipeline search. It measures how well a multi-criteria genetic algorithm balances accuracy metrics against demographic parity, equalised odds, and ABROCA while simultaneously selecting data and features.
## Datasets
- **adult** — total 48842; splits: test (-1)
- **credit-card** — total 30000; splits: test (-1)
- **portuguese-bank-marketing** — total 45211; splits: test (-1)
## Metrics
- `DP` **(primary)** — range: [0, 1]
- Demographic Parity measures the statistical parity of positive prediction rates across sensitive groups. All metrics are transformed and scaled to [0, 1] for the optimization objective, where 0 represents the optimal value (minimisation of unfairness).
- `EO` — range: [0, 1]
- Equalised Odds measures the equality of true positive and false positive rates across sensitive groups. Scaled to [0, 1] where 0 is optimal.
- `ABROCA` — range: [0, 1]
- Area Between ROC Curves evaluates fairness via ROC curve area differences across sensitive slices. Scaled to [0, 1] where 0 is optimal.
- `MCC` — range: [0, 1]
- Matthews Correlation Coefficient measures predictive performance. Scaled to [0, 1] where 0 is optimal after transformation.
- `TPR` — range: [0, 1]
- True Positive Rate measures predictive performance. Scaled to [0, 1] where 0 is optimal after transformation.
## Input / output format
**Input**: Binary classification datasets containing sensitive attributes. The AutoML framework receives stratified training folds and optimizes a pipeline (data selection + model tuning) under a 30-minute time budget.
**Output**: The best-performing pipeline configuration and its corresponding performance/fairness scores evaluated on the held-out test set.
## Scoring recipe
```python
# Normalize to [0,1] where 0 is optimal (minimization)
def scale(val, higher_better=True):
return 1.0 - val if higher_better else val
# Compute on test set
dp = compute_demographic_parity(y_true, y_pred, sensitive)
eo = compute_equalised_odds(y_true, y_pred, sensitive)
abroca = compute_abroca(y_true, y_pred, sensitive)
mcc = compute_mcc(y_true, y_pred)
tpr = compute_tpr(y_true, y_pred)
# Scaled values for optimization
dp_s, eo_s, abroca_s = scale(dp), scale(eo), scale(abroca)
mcc_s, tpr_s = scale(mcc, higher_better=True), scale(tpr, higher_better=True)
# Fitness function (alpha=0.8)
alpha = 0.8
fitness = alpha * (dp_s + eo_s + abroca_s) / 3 + (1 - alpha) * (mcc_s + tpr_s) / 2
return fitness
```
## Common pitfalls
- All reported metrics are transformed and scaled to [0, 1] for the optimization objective, where 0 represents the optimal value (minimisation). Readers must account for this inversion when comparing to standard metric conventions.
- Results are averaged across 30 independent runs with 5-fold cross-validation, yielding 150 solutions per dataset. Statistical significance is assessed using t-tests or Wilcoxon signed-rank tests with Bonferroni correction.
- The framework optimizes both data selection (instance/feature) and model tuning simultaneously, meaning reported performance includes the effects of data reduction, not just model accuracy.
## Evidence (verbatim from paper)
> All the metrics are normalised and scaled to [0, 1], where 0 represents the optimal value for our minimisation objective of reducing both predictive error and unfairness. Appropriate transformations were applied to convert all metrics to this scale, specially Equation [3] which originally uses a different range of values. DP and EO fairness metrics were calculated using the Fairlearn framework, while ABROCA was implemented based on Mangal et al. work.
## Citation
```bibtex
@misc{simoes2026fairnessawareautoml,
title={Exploring the impact of fairness-aware criteria in AutoML},
author={Simões and Correia (2026)},
year={2026},
note={arXiv:2604.10224}
}
```
- arXiv: 2604.10224