/Resources_for_private_and_secure_AI

Resources for private and secure Machine Learning and Artificial Intelligence

Compilation of learning ressources and libraries for private and secure AI

We provide here a first non-exhaustive list of learning ressources and libraries for private and secure IA applications. Differential privacy, federated learning and fully homomorphic encryption are covered. We will be populating it in the next months with regular updates. You may follow us in Twitter for further news: https://twitter.com/AntonioRausell

================================

Introductory reviews

Introductory blogs to private and secure AI:

Itroductory videos to private and secure AI:

Udacity course

Differential Privacy, Federated Learning and Encrypted Computation (Based on PyTorch and PySyft): https://www.udacity.com/course/secure-and-private-ai--ud185

Privacy Preserving Machine Learning - Course by Aurélien Bellet

Slides and Jupyter notebooks (in Python) from the course taught by Aurélien Bellet, Master 2 Data Science, University of Lille http://researchers.lille.inria.fr/abellet/teaching/private_machine_learning_course.html

============================================

State-of-the-art machine learning libraries for private AI from two main programing ecosystems:

PySyft-based ecosystem for private AI:

TensorFlow-based ecosystem for private AI:

  • TensorFlow Privacy: https://github.com/tensorflow/privacy Python library that includes implementations of TensorFlow optimizers for training machine learning models with differential privacy. The library comes with tutorials and analysis tools for computing the privacy guarantees provided.

  • TensorFlow Federated (Machine Learning on Decentralized Data):https://www.tensorflow.org/federated

-- Tutorials on federated learning using TensorFlow : https://www.tensorflow.org/federated/tutorials/federated_learning_for_image_classification

-- Federated Learning Workshop using TensorFlow Federated: https://events.withgoogle.com/demostutorials-workshop-on-federated-learning-and-analytics-2020/

-- YouTube Live recording: https://www.youtube.com/watch?v=fNrVh2RWVTc&feature=youtu.be

-- Colab notebooks available at:https://events.withgoogle.com/demostutorials-workshop-on-federated-learning-and-analytics-2020/

  • TF Encrypted: https://github.com/tf-encrypted/tf-encrypted is a framework for encrypted machine learning in TensorFlow. It looks and feels like TensorFlow, taking advantage of the ease-of-use of the Keras API while enabling training and prediction over encrypted data via secure multi-party computation and homomorphic encryption. TF Encrypted aims to make privacy-preserving machine learning readily available, without requiring expertise in cryptography, distributed systems, or high performance computing.

Flower ecosystem for private AI:

  • Flower: https://github.com/adap/flower friendly Python library for federated learning, analytics and evaluation. It supports both Pytorch and Tensorflow.

-- Tutorials on federated learning using Flower: https://flower.dev/docs/

-- Recording of Flower Summit 2021: https://www.youtube.com/channel/UC-6quleTjPNZdsH6uRtkMkQ

============================================

About Differential Privacy: Introduction and libraries

  • Opacus: https://github.com/pytorch/opacus is a Python library that enables to train neural networks models with differential privacy. It only support Pytorch models.

  • PyDP: https://github.com/OpenMined/PyDP is a Python library featuring differentially private algorithms to produce aggregate statistics over private information.

  • OpenDP: https://github.com/opendp/opendp is a library implemented in Rust, with biding for easy use in Python. It contains a set of statistical algorithms for building privacy-preserving applications.

============================================

About homomorphic encryption: Introduction and libraries

============================================

Reference sites and communities

============================================

A deeper dive into differential privacy:

  • Books and publications:

Differential Privacy: A Primer for a Non-technical Audience (2018) https://salil.seas.harvard.edu/files/salil/files/differential_privacy_primer_nontechnical_audience.pdf

The Algorithmic Foundations of Differential Privacy. 2014. C. Dwork and A. Roth.: https://www.cis.upenn.edu/~aaroth/privacybook.html

The Complexity of Differential Privacy. 2017. S. Vadhan. https://salil.seas.harvard.edu/files/salil/files/manuscript_2017.pdf

The 7th BIU Winter School on Cryptography. Differential Privacy: From Theory to Practice: February 2017: http://cyber.biu.ac.il/event/the-7th-biu-winter-school/

============================================

Additional reviews and interesting papers

Advances and Open Problems in Federated Learning, 2019. Kairouz et al. https://arxiv.org/pdf/1912.04977.pdf

Private federated learning on vertically partitioned data via entity resolution and additively homomorphic encryption https://arxiv.org/pdf/1711.10677.pdf

Group privacy for personalized federated learning, 2022. Galli et al. https://arxiv.org/pdf/2206.03396.pdf