Ethically Join the chat at

Toolkit for Auditing and Mitigating Bias and Fairness of Machine Learning Systems 🔎🤖🧰

Ethically 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.

Ethically consists of three sub-packages:

  1. ethically.dataset

    Collection of common benchmark datasets from fairness research.

  2. ethically.fairness

    Demographic fairness in binary classification, including metrics and algorithmic interventions.

  3. ethically.we

    Metrics and debiasing methods for bias (such as gender and race) in word embedding.

For fairness, Ethically’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.


  • Python 3.5+


Install ethically with pip:

$ pip install ethically

or directly from the source code:

$ git clone
$ cd ethically
$ python install


If you have used Ethically in a scientific publication, we would appreciate citations to the following:

  author =    {Shlomi Hod},
  title =     {{Ethically}: Toolkit for Auditing and Mitigating Bias and Fairness of Machine Learning Systems},
  year =      {2018--},
  url = "",
  note = {[Online; accessed <today>]}

Indices and tables