MinimaxFair is a Python package for training ML models for (relaxed) minimax group fairness as discussed in Minimax group fairness: Algorithms and experiments.
This repository contains python code for
- learning models that achieve minimax group fairness for both regression and classification tasks
- learning models that minimize error subject to relaxed group fairness constraints
- visualizing tradeoffs between fairness and overall error
We also include some examples of fairness sensitive datasets for experimentation, though our package supports any dataset formatted as a .csv whose columns are labeled
Our algorithms support the following training objectives (loss functions):
- Mean Squared Error
- 0/1 Loss
- Log Loss
- False Positive Rate
- False Negative Rate
Our algorithms support the following model classes:
- Linear Regression
- Logistic Regression
- Paired Regression Classifier from https://github.com/algowatchpenn/GerryFair
- Perceptron
- Multi-Layer Perceptron for Classification - Uses custom wrapper class to work with our algorithm