You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Summary:
This extends the README file to include more details about the library as a whole.
This also adds a changelog with an initial 0.0.1 version of the library.
{F1982241561}
{F1982241562}
Differential Revision: D83179386
PrivacyGuard is a library that allows you to perform a privacy analysis (e.g., Membership Inference, Text Inclusion) of models in PyTorch or LLM models. This repo implements various privacy attacks, alongside analysis nodes to interpet the attack results. With PrivacyGuard, you can:
10
+
11
+
- Run an off-the-shelf analysis to approximately assess privacy leakage and data memorization in an already trained model.
12
+
- Run deeper analysis to better grasp the privacy issues (for instance, SOTA shadow models attack).
13
+
- Provide useful primitives for analysis such as grouped or balanced attacks and various metrics such as AUC/ROC or empirical epsilon.
14
+
- Execute LLM text generation attacks and probabilistic decoding methods.
15
+
16
+
## Why PrivacyGuard?
17
+
18
+
-**Extensible API**: PrivacyGuard has an extensible API that allows for easy creation
19
+
of new analyses and attacks. This makes it easy for researchers to extend the library
20
+
and build off of existing Privacy attacks, reproduce the results of existing attacks on new
21
+
models and datasets, and develop new attacks.
22
+
23
+
-**End to End Privacy Attacks out of the box**: PrivacyGuard abstracts away analysis details
24
+
allowing for quick set up and execution of pragmatic and SOTA privacy attacks.
25
+
26
+
-**State-of-the-art methods**: PrivacyGuard implements and maintains state of the art attacks, such as
27
+
LiRA Likelihood Ratio Attack and probabilistic decoding methods
28
+
29
+
-**Flexible:** PrivacyGuard is highly configurable, allowing researchers to plug in novel
30
+
privacy attacks, models, datasets, and analyses.
31
+
32
+
-**Production ready:** PrivacyGuard is a reliable and well supported library with comprehensive testing
33
+
and CI, ensuring the library remains in a easy to use state.
34
+
35
+
## Getting Started
36
+
37
+
To work with PrivacyGuard, we recomemend cloning the repository and installing all dependencies.
PrivacyGuard requires Python 3.10 or newer. A full list of PrivacyGuard's direct dependencies can be
50
+
found in [setup.py](https://github.com/facebookresearch/PrivacyGuard/blob/main/pyproject.toml).
51
+
52
+
53
+
## Join the PrivacyGuard Community
54
+
55
+
### Getting help
56
+
57
+
Please open an issue on our [issues page](https://github.com/facebookresearch/PrivacyGuard/issues)
58
+
with any questions, feature requests or bug reports! If posting a bug report,
59
+
please include a minimal reproducible example (as a code snippet) that we can
60
+
use to reproduce and debug the problem you encountered.
61
+
62
+
63
+
### Contributing
2
64
3
65
See the CONTRIBUTING file for how to help out.
4
66
When contributing to PrivacyGuard, we recommend cloning the repository and installing all optional dependencies:
@@ -10,6 +72,6 @@ pip install -e .[tutorial]
10
72
The above example limits the cloned directory size via the --depth argument to git clone. If you require the entire commit history you may remove this argument.
11
73
12
74
13
-
# License
75
+
##License
14
76
15
-
PrivacyGuard is licensed under the MIT license.
77
+
PrivacyGuard is licensed under the [MIT license](./LICENSE).
0 commit comments