]> git.armaanb.net Git - python_dp.git/blob - README
Initial commit
[python_dp.git] / README
1    ___       _   _                 
2   / _ \_   _| |_| |__   ___  _ __  
3  / /_)/ | | | __| '_ \ / _ \| '_ \ 
4 / ___/| |_| | |_| | | | (_) | | | |
5 \/     \__, |\__|_| |_|\___/|_| |_|
6        |___/  ___ _  __  __                     _   _       _ 
7              /   (_)/ _|/ _| ___ _ __ ___ _ __ | |_(_) __ _| |
8             / /\ / | |_| |_ / _ \ '__/ _ \ '_ \| __| |/ _` | |
9            / /_//| |  _|  _|  __/ | |  __/ | | | |_| | (_| | |
10           /___,' |_|_| |_|  \___|_|  \___|_| |_|\__|_|\__,_|_|
11                        ___      _                       
12                       / _ \_ __(_)_   ____ _  ___ _   _ 
13                      / /_)/ '__| \ \ / / _` |/ __| | | |
14                     / ___/| |  | |\ V / (_| | (__| |_| |
15                     \/    |_|  |_| \_/ \__,_|\___|\__, |
16                                                   |___/ 
17 --------------------------------------------------------------------------------
18
19 This repository shows some example implementations of differential privacy[1]
20 in Python via Jupyter Notebooks. Each notebook contains further references and
21 information. This work may contain blunders, and it's accuracy has not been
22 verified, however it should still be able to give you a good starting point
23 for work with differential privacy.
24
25 You can use nbviewer[2] or GitHub[3] to view the notebooks online.
26
27 This work was completed under the guidance of Praneeth Vepakomma [4]
28
29 1: https://en.wikipedia.org/wiki/Differential_privacy
30 2: https://nbviewer.org
31 3: https://github.com/acheam0/python_dp
32 4: https://praneeth.mit.edu/
33
34 --------------------------------------------------------------------------------
35
36 +-------+
37 | INDEX |
38 +-------+
39
40 - Approximate differential privacy (epsilon-delta):
41     - gaussian_mechanism.ipynb
42         
43 - Bayes rule:
44     - bayesian_attacker.ipynb
45
46 - Choice query:
47     - exponential_mechanism.ipynb
48
49 - Clipping:
50     - laplace_example_class_height.ipynb
51
52 - Compositions:
53     - gaussian_mechanism.ipynb
54  
55 - Exponential mechanism:
56     - exponential_mechanism.ipynb
57
58 - Histogram query:
59     - laplace_mechanism.ipynb
60
61 - Helper functions:
62     - common.py
63
64 - Privacy loss distributions:
65     - gaussian_mechanism.ipynb
66
67 - Privacy loss random variable:
68     - gaussian_mechanism.ipynb
69
70 - Pure differential privacy (epsilon):
71     - laplace_example_class_height.ipynb
72     - laplace_mechanism.ipynb
73
74 - Sum, count, mean queries:
75     - laplace_example_class_height.ipynb
76     - laplace_mechanism.ipynb
77
78 In addition to these, there are some incomplete notebooks in the "Incomplete/"
79 subdirectory.
80
81 --------------------------------------------------------------------------------
82 Copyright (c) 2023 Armaan Bhojwani <me@armaanb.net>, MIT License