Measure bias from data and machine learning models.
Project description
Parity
This repository contains codes that demonstrate the use of fairness metrics, bias mitigations and explainability tool.
Installation
Install using:
foo@bar:~$ pip install parity-fairness
Bias Measurement Usage
Setup the data such that the target column is a binary string target. Then find out which features are the privileged categories
and which values are privileged values
. Afterwards, feed them into the function called show_bias
like:
from parity.fairness_metrics import show_bias
priv_category = 'Race-White'
priv_value = 'True'
target_label = 'high pay'
unencoded_target_label = 'True'
cols_to_drop = ''
show_bias(data, priv_category, priv_value, target_label, unencoded_target_label, cols_to_drop)
Bias and Fairness
A common problem with most machine learning models is bias from data. This notebook shows how to measure those biases and perform bias mitigation. A python package called aif360 can give us metrics and algorithms for bias measurement and mitigation
Metrics
- Statistical Parity Difference
- Equal Opportunity Difference
- Average Absolute Odds Difference
- Disparate Impact
- Theil Index
Some metrics need predictions while others just the original dataset. This is why we will use 2 classes of the aif360 package : ClassificationMetric
and BinaryLabelDatasetMetric
.
For metrics that require predictions:
- Equal Opportunity Difference:
equal_opportunity_difference()
- Average Absolute Odds Difference:
average_abs_odds_difference()
- Theil Index :
theil_index()
For metrics that don't require predictions:
- Statistical Parity Difference:
statistical_parity_difference()
- Disparate Impact:
disparate_impact()
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.