Responsibly
Toolkit for Auditing and Mitigating Bias and Fairness of Machine Learning Systems 🔎🤖🧰
Responsibly is developed for practitioners and researchers in mind, but also for learners. Therefore, it is compatible with data science and machine learning tools of trade in Python, such as Numpy, Pandas, and especially scikit-learn.
The primary goal is to be one-shop-stop for auditing bias and fairness of machine learning systems, and the secondary one is to mitigate bias and adjust fairness through algorithmic interventions. Besides, there is a particular focus on NLP models.
Responsibly consists of three sub-packages:
- responsibly.dataset
Collection of common benchmark datasets from fairness research.
- responsibly.fairness
Demographic fairness in binary classification, including metrics and algorithmic interventions.
- responsibly.we
Metrics and debiasing methods for bias (such as gender and race) in word embedding.
For fairness, Responsibly’s functionality is aligned with the book Fairness and Machine Learning - Limitations and Opportunities by Solon Barocas, Moritz Hardt and Arvind Narayanan.
If you would like to ask for a feature or report a bug, please open a new issue or write us in Gitter.
Requirements
Python 3.6+
Installation
Install responsibly with pip:
$ pip install responsibly
or directly from the source code:
$ git clone https://github.com/ResponsiblyAI/responsibly.git
$ cd responsibly
$ python setup.py install
Citation
If you have used Responsibly in a scientific publication, we would appreciate citations to the following:
@Misc{,
author = {Shlomi Hod},
title = {{Responsibly}: Toolkit for Auditing and Mitigating Bias and Fairness of Machine Learning Systems},
year = {2018--},
url = "http://docs.responsibly.ai/",
note = {[Online; accessed <today>]}
}
Revision History
0.1.3 (2021/04/02)
Fix new pagacke dependencies
Switch from Travis CI to Github Actions
0.1.2 (2020/09/15)
Fix Travis CI issues with pipenv
Fix bugs with word embedding bias
0.1.1 (2019/08/04)
Fix a dependencies issue with smart_open
Change URLs to https
0.1.0 (2019/07/31)
Rename the project to responsibly from ethically
Word embedding bias
Improve functionality of BiasWordEmbedding
Threshold fairness interventions
Fix bugs with ROCs handling
Improve API and add functionality (plot_thresholds)
0.0.5 (2019/06/14)
Word embedding bias
Fix bug in computing WEAT
Computing and plotting factual property association to projections on a bias direction, similar to WEFAT
0.0.4 (2019/06/03)
Word embedding bias
Unrestricted most_similar
Unrestricted generate_analogies
Running specific experiments with calc_all_weat
Plotting clustering by classification of biased neutral words
0.0.3 (2019/04/10)
Fairness in Classification
Three demographic fairness criteria
Independence
Separation
Sufficiency
Equalized odds post-processing algorithmic interventions
Complete two notebook demos (FICO and COMPAS)
Word embedding bias
Measuring bias with WEAT method
Documentation improvements
Fixing security issues with dependencies
0.0.2 (2018/09/01)
Word embedding bias
Generating analogies along the bias direction
Standard evaluations of word embedding (word pairs and analogies)
Plotting indirect bias
Scatter plot of bias direction projections between two word embedding
Improved verbose mode
0.0.1 (2018/08/17)
Gender debiasing for word embedding based on Bolukbasi et al.
Metadata
Release files for responsibly 0.1.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 | Provenance | Actions |
|---|---|---|---|---|
| responsibly-0.1.3.tar.gz | 28.1 MB | Without provenance | Details for responsibly-0.1.3.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| responsibly-0.1.3-py3-none-any.whl | Python 3 | none | any | Details for responsibly-0.1.3-py3-none-any.whl |
Total release size: 56.3 MB
Release files / responsibly-0.1.3.tar.gz
| Download URL | responsibly-0.1.3.tar.gz |
|---|---|
| Size | 28.1 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
826e52ab6f93d6309be27bb52f504c8a7a36ef75e7491bab99dbce1ca45d47b1
|
|
BLAKE2b-256 checksum How to use checksums |
b18790fd2d7195f60c19b34fa84b556d397f96275a5eb29190ba60bea8784641
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.7.5
|
Release files / responsibly-0.1.3-py3-none-any.whl
| Download URL | responsibly-0.1.3-py3-none-any.whl |
|---|---|
| Size | 28.2 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
9959a3271fda897f0962fad4a7bcbd1146b3f60eb854e4890542ba9cb232b285
|
|
BLAKE2b-256 checksum How to use checksums |
5aa51cbc6653d0fbdba238934112eeada26219e4aebec69632d15555c2546dd5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.4.1 importlib_metadata/3.10.0 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.59.0 CPython/3.7.5
|
Security for responsibly 0.1.3
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.