Privacy preserving deep learning for PyTorch
Project description
PyVacy: Privacy Algorithms for PyTorch
PyVacy provides custom PyTorch opimizers for conducting deep learning in a differentially private manner. Basically TensorFlow Privacy, but for PyTorch.
Getting Started
pip install pyvacy
Example Usage
import torch
from pyvacy import optim, analysis
model = torch.nn.Sequential(...)
optimizer = optim.DPSGD(
l2_norm_clip=...,
noise_multiplier=...,
batch_size=...,
lr=...,
momentum=...,
)
epsilon = analysis.moments_accountant(
N=...,
batch_size=...
noise_multiplier=...,
epochs=...,
delta=...,
)
for epoch in range(epochs):
# do training as usual...
Tutorials
python tutorials/mnist.py
Training procedure achieves (3.0, 0.00001)-DP
[Epoch 1/60] [Batch 0/235] [Loss: 2.321049]
[Epoch 1/60] [Batch 10/235] [Loss: 0.952795]
[Epoch 1/60] [Batch 20/235] [Loss: 1.040896]
...
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pyvacy-0.0.32.tar.gz
(10.3 kB
view details)
File details
Details for the file pyvacy-0.0.32.tar.gz
.
File metadata
- Download URL: pyvacy-0.0.32.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.6
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 50e5242b720cc5ae075041107702231c3447716c39e0b364ee5490300cd87949 |
|
MD5 | dcd2c0682be7c78fa4316da4a92ae149 |
|
BLAKE2b-256 | ae1d8dd9852f225d471c4f7248cfd8c01f943c0f968299dd010245b28743ea54 |