Skip to content

SAP-archive/security-research-differentially-private-generative-models

Repository files navigation

Important Notice

This public repository is read-only and no longer maintained. For the latest sample code repositories, visit the SAP Samples organization.

Differentially Private Generative Models

REUSE status

Description:

This repository explains how generative models can be used in combination with differential privacy to synthetize feature-rich realistic categorical datasets in a privacy preserving manner. It brings two jupyter notebooks for dp-GANs (differentially-private Generative Adversarial Networks) and dp-VAE (Variational Autoencoder) to generate new data in a differetnial private mode. The code allows to quickly generate new dataset (incl. numerical features) in private or public mode. dp_SGD and dp_Adam optimizers from tensowflow/ privacy library (https://github.com/tensorflow/privacy) are used these models.

Requirements

  • Python
  • Jupyter
  • Tensorflow
  • Pandas, keras, and more see the notebooks import sections
  • H2O AutoML
  • Check further dependencies in the Jupyter notebooks Tutorial_dp-GAN.ipynb and Tutorial_dp-VAE.ipynb

Download the tensorflow privacy project

  1. Clone Tensorflow privacy into this project repository :
git clone https://github.com/tensorflow/privacy

cd privacy
pip install -e .
  1. Open the notebooks in Jupyter and run them

Authors / Contributors

  • Lyudmylla Dymytrova
  • Lorenzo Frigerio
  • Anderson Santana de Oliveira

Known Issues

No issues known

How to obtain support

This project is provided "as-is" and any bug reports are not guaranteed to be fixed.

Citations

If you use this code in your research, please cite:

@article{DBLP:journals/corr/abs-1901-02477,
  author    = {Lorenzo Frigerio and
               Anderson Santana de Oliveira and
               Laurent Gomez and
               Patrick Duverger},
  title     = {Differentially Private Generative Adversarial Networks for Time Series,
               Continuous, and Discrete Open Data},
  journal   = {CoRR},
  volume    = {abs/1901.02477},
  year      = {2019},
  url       = {http://arxiv.org/abs/1901.02477},
  archivePrefix = {arXiv},
  eprint    = {1901.02477},
  timestamp = {Fri, 01 Feb 2019 13:39:59 +0100},
  biburl    = {https://dblp.org/rec/bib/journals/corr/abs-1901-02477},
  bibsource = {dblp computer science bibliography, https://dblp.org}
}

References

  • [1] Lorenzo Frigerio, Anderson Santana de Oliveira, Laurent Gomez, Patrick Duverger: Differentially Private Generative Adversarial Networks for Time Series, Continuous, and Discrete Open Data. CoRR abs/1901.02477 (2019). https://arxiv.org/abs/1901.02477

License

Copyright (c) 2020 SAP SE or an SAP affiliate company. All rights reserved. This project is licensed under the Apache Software License, version 2.0 except as noted otherwise in the LICENSE file.

About

SAP Security research sample code and tutorials for generating differentially private synthetic datasets using generative deep learning models

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published