Fairical
Fairical is a Python library for rigorously evaluating and comparing demographically fair machine-learning systems through the lens of multi-objective optimization. Rather than treating fairness as a single constraint, Fairical recognizes that real-world deployments must balance multiple, often conflicting fairness metrics (e.g., demographic parity, equalized odds across race, gender, age) alongside traditional utility measures like accuracy. It implements a model-agnostic evaluation framework that approximates Pareto fronts of utility-fairness trade-offs, then distills each system's performance into a compact measurement table and radar chart. By calculating convergence (how close models get to optimal trade-offs), diversity (uniform distribution and spread of solutions), capacity (number of non-dominated points), and a unified convergence-diversity score via hypervolume, Fairical delivers both quantitative rigor and qualitative clarity.
For installation and usage instructions, check-out our documentation.
If you use this library in published material, we kindly ask you to cite this work:
@article{ozbulak_multi-objective_2025,
title={A Multi-Objective Evaluation Framework for Analyzing Utility-Fairness Trade-Offs in Machine Learning Systems},
author={Özbulak, Gökhan and Jimenez-del-Toro, Oscar and Fatoretto, Maíra and Berton, Lilian and Anjos, André},
journal={Machine Learning for Biomedical Imaging},
volume={3},
number={Special issue on FAIMI},
pages={938--957},
doi={10.59275/j.melba.2025-ab9a},
year={2025}
}
Metadata
Release files for fairical 2.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| fairical-2.0.3.tar.gz | 59.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| fairical-2.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 95.1 kB
Release files / fairical-2.0.3.tar.gz
| Download URL | fairical-2.0.3.tar.gz |
|---|---|
| Size | 59.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f5d200065bb588374e01249bedc3aee8777601fdca0e6123aa37042b0ba9cd63
|
|
BLAKE2b-256 checksum How to use checksums |
410cf0f922fa14170e50c6c652f1a8e8b04fe34229f9c0f9b1b4f7de4ee15274
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|
Release files / fairical-2.0.3-py3-none-any.whl
| Download URL | fairical-2.0.3-py3-none-any.whl |
|---|---|
| Size | 35.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d83edd550421465cac4fef052676247113b7bbf9f65423646480dbce345a300b
|
|
BLAKE2b-256 checksum How to use checksums |
cd16962526d74296a1ea4f39dce7b5712a497a25a5d91d9f35ecbdb16bd44082
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.13.12
|