This repository contains Jupyter notebooks for the ESTP course on Differential Privacy, with a focus on practical tools and hands-on exercises.
The material introduces how to apply differential privacy using open-source libraries.
- Clone this repository:
git clone https://github.com/dscc-admin-ch/ESTP_DP_Course.git cd ESTP_DP_Course - Install global dependencies
pip install -r requirements.txt
- Launch Jupyter: Open a notebook and follow the instructions!
The repository is organized around three main libraries for differential privacy:
- SmartNoise SQL
- Apply differential privacy to SQL queries.
- Diffprivlib
- IBM’s library for differentially private machine learning and statistics.
- OpenDP
- The OpenDP project’s core library for building custom DP transformations and working with polars tables.
For each library, you will find:
- Exercise notebook – practical problems to solve.
- Correction notebook – worked-out solutions.
ESTP_DP_Course/
│
├── smartnoise-sql/
│ ├── Smartnoise-SQL-Exercises.ipynb
│ └── Smartnoise-SQL-Corrections.ipynb
│
├── diffprivlib/
│ ├── DiffPrivLib-Exercises.ipynb
│ └── DiffPrivLib-Corrections.ipynb
│
├── opendp_polars/
│ ├── OpenDP_Polars_Exercises.ipynb
│ └── OpenDP_Polars_Corrections.ipynb
│
└── README.md
- Exercises are designed for practice during the course.
- Corrections provide detailed solutions — use them for self-study or after attempting the exercises.
- Make sure you install the correct version of each library.
Happy learning! 🚀