Skip to content

aiim-research/ERASURE

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

308 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

ERASURE

Redefining Privacy Through Selective Machine Unlearning

ERASURE Logo

Star us on GitHub

ERASURE: Open-source framework for selective machine unlearning

License Last Commit

πŸ“ Citation

ERASURE was accepted as IJCAI demo and CIKM resource!

If you use this Machine Unlearning framework, please cite us:

@inproceedings{ijcai2025p1255, title = {How to Make Reproducible Research in Machine Unlearning with ERASURE}, author = {D'Angelo, Andrea and Savelli, Claudio and Tagliente, Gabriele and Giobergia, Flavio and Baralis, Elena and Stilo, Giovanni}, booktitle = {Proceedings of the Thirty-Fourth International Joint Conference on Artificial Intelligence, {IJCAI-25}}, publisher = {International Joint Conferences on Artificial Intelligence Organization}, editor = {James Kwok}, pages = {11025--11029}, year = {2025}, month = {8}, note = {Demo Track}, doi = {10.24963/ijcai.2025/1255}, url = {https://doi.org/10.24963/ijcai.2025/1255}, }

@inproceedings{10.1145/3746252.3761627, author = {D'Angelo, Andrea and Savelli, Claudio and Tagliente, Gabriele and Giobergia, Flavio and Baralis, Elena and Stilo, Giovanni}, title = {ERASURE: A Modular and Extensible Framework for Machine Unlearning}, year = {2025}, isbn = {9798400720406}, publisher = {Association for Computing Machinery}, address = {New York, NY, USA}, url = {https://doi.org/10.1145/3746252.3761627}, doi = {10.1145/3746252.3761627}, booktitle = {Proceedings of the 34th ACM International Conference on Information and Knowledge Management}, pages = {6346–6350}, numpages = {5}, keywords = {benchmark, evaluation framework, machine unlearning}, location = {Seoul, Republic of Korea}, series = {CIKM '25} }

πŸ“œ Table of Contents

πŸ“˜ General Information

ERASURE offers fully extensible built-in components, allowing users to define custom unlearning techniques, integrate custom and synthetic datasets, implement tailored evaluation metrics, and meld seamlessly with state-of-the-art machine learning models. Additionally, it provides a flexible environment for defining and running unlearning experiments, enabling researchers to evaluate the effectiveness and efficiency of various unlearning methods systematically.

The framework is inside the erasure folder. A JSON configuration file is everything ERASURE needs to run.

You can find examples of configurations in the config folder. Specifically, example.jsonc and proof_of_concept.jsonc are simple configurations designed as a starting point.

🧭 Guide

You can find a step-by-step guide on how to use ERASURE in our IJCAI demo paper: https://www.ijcai.org/proceedings/2025/1255

You may also find the presentation in the guide folder useful to implement your methods in the ERASURE framework.

βš™οΈ Installation

git clone https://github.com/aiim-research/ERASURE.git
cd ERASURE
pip install -r requirements.txt

πŸ§ͺ Example Workflow

worfklow

To run an experiment, you just have to run:

foo@bar:~$ python main.py configs/example.jsonc

in your terminal, given that you have dependencies installed.

πŸ“Š Resources Provided with the Framework

πŸ—‚οΈ Datasets

You can quickly implement any Dataset you like in ERASURE. At the moment, ERASURE has built-in DataSource classes for the following sources:

Static Badge

Static Badge

Static Badge

Static Badge

🧩 Built-in Unlearners

Developing your own custom Unlearner in ERASURE is easy.

However, benchmarking your Unlearner in an unified environment is just as important. Right now, ERASURE comes built-in with the following Unlearners:

Static Badge Static Badge Static Badge
Static Badge Static Badge Static Badge
Static Badge Static Badge Static Badge
Static Badge Static Badge Static Badge
Static Badge

Team Information:

  • Prof. Giovanni Stilo, PhD. [project leader/research advisor]

  • Flavio Giobergia, PhD. [research advisor]

  • Andrea D'Angelo [investigator]

  • Claudio Savelli [investigator]

  • Gabriele Tagliente [pivotal contributor]

  • https://aiimlab.org/


Keywords: ERASURE, Machine Unlearning, Privacy, Unlearning, IJCAI, CIKM

Releases

No releases published

Packages

 
 
 

Contributors

Languages