Ethicml

Latest version: v1.3.0

Safety actively analyzes 706267 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 7 of 8

0.2.0

Lots of great improvements have gone into EthicML to make it even greater.

0.1.0a10

All functions and classes are now imported into the top level of EthicML, allowing code like this:

python
import ethicml as em

results = em.evaluate_models(
datasets=[em.adult()],
inprocess_models=[em.SVM(), em.Kamiran()],
preprocess_models=[em.Upsampler()],
metrics=[em.Accuracy()],
per_sens_attribute=[em.ProbPos(), em.TPR()],
repeats=5,
)
em.plot_results(results, "Accuracy", "prob_pos_Male_0/Male_1")

0.1.0alpha.9

As with other frameworks, we only really worked well with binary sensitive attributes. However, thanks to the hard work of thomkeh we can now handle multiple sensitive attributes! This will make it possible to perform a new range of analysis, so we're very excited about this (see [issue-353](https://github.com/predictive-analytics-lab/EthicML/issues/353) for more detail).

In addition we've added new datasets, new models, squashed some bugs, and added more tests.

💯

0.1.0alpha.8

0.1.0alpha.7

Added the colourised MNIST dataset. In this dataset during training the colour of the digit is a shortcut to the class label, but at test time, this is not the case.

0.1.0alpha.6

Introducing EthicML Vision.

We've found that we're using image datasets more and more. Fitting in with the goals of EthicML, we wanted to abstract away all the boring stuff so that it's easy to get going with a dataset which accounts for a sensitive label in addition to the features and class label.

Separation of async

We've also made the decision to make some (rather than all) methods run in their own process. These typically are either long running, or can be accelerated with a gpu. "Quick Running" processes no longer happen asynchronously.

Page 7 of 8

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.