This library allow to compute global sensitivity indices in the context of fairness measurements.
Project description
FairSense
This library allow to compute global sensitivity indices in the context of fairness measurements.
The paper Fairness seen as Global Sensitivity Analysis
bridges the gap between
global sensitivity analysis (GSA) and fairness. It states that for each sensitivity
analysis, there is a fairness measure, and vice-versa.
@misc{https://doi.org/10.48550/arxiv.2103.04613,
doi = {10.48550/ARXIV.2103.04613},
url = {https://arxiv.org/abs/2103.04613},
author = {Bénesse, Clément and Gamboa, Fabrice and Loubes, Jean-Michel and Boissin, Thibaut},
keywords = {Statistics Theory (math.ST), Methodology (stat.ME), FOS: Mathematics, FOS: Mathematics, FOS: Computer and information sciences, FOS: Computer and information sciences},
title = {Fairness seen as Global Sensitivity Analysis},
This library is a toolbox which ease the computation of fairness and GSA indices.
The problem
Each index has it's characteristics: some can be applied on continuous variables and some cannot. Some can handle regression problems and some handle classification problems. Some can handle variable groups and some cannot. Finally some can only be applied on the predictions of a model while some can be applied on the error made by the model.
The objective is then to provide a tool to investigate the fairness of an ML problem by computing the GSA indices while avoiding the aforementioned issues.
The strategy
The library allows to formulate a fairness problem which is stated as following:
- a dataset describing the training distribution
- a model which can be a function or a machine learning model
- a fairness objective which indicate what should be studied : one can study the intrinsic bias of a dataset, or the bias of the model or the bias of the model's errors
These elements are encapsulated in an object called IndicesInput
.
Then it becomes possible to compute GSA indices (in a interchangeable way) using the
functions provided in fairsense.indices
.
These functions output IndicesOutput
objects that encapsulate the values of the
indices. These results can finally be visualized with the functions available in the
fairsense.visualization
module.
install fairsense
for users
pip install fairsense
for developpers
After cloning the repository
pip install -e .[dev]
to clean code, at the root of the lib:
black .
for docs
pip install -e .[docs]
build rst files, in the docs folder:
sphinx-apidoc ..\libfairness -o source
the generate html docs:
make html
Warning: the library must be installed to generate the doc.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file fairsense-0.0.1-py2.py3-none-any.whl
.
File metadata
- Download URL: fairsense-0.0.1-py2.py3-none-any.whl
- Upload date:
- Size: 17.9 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.28.2 setuptools/50.3.0.post20201006 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.7.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 20162960c28cb42d1287b77baa9b8a53297454163101114bdd7ea21b99458a80 |
|
MD5 | 9839da06fd846c1b78b01f8965827b2d |
|
BLAKE2b-256 | 5c534f37bea6ba428937245a502f7e6f79aa4e850a6a4d3d74bf48ff365006ce |