A community curated and contributed list of helpful resources and materials about Federated Learning and PETs as part of the #30DaysOfFLCode
Challenge by OpenMined.
Two main rules:
- Study Federated Learning (and/or any other PETs) for at least 1 hour/day for 30 days
- Share Your Progress Daily by posting on social media using
#30DaysOfFLCode
and engage with other participants.
Publicly commit to the challenge: Hold yourself accountable by making a public statement saying you intend to participate in the program
Discover more on www.30DaysOfFLCode.com.
We welcome contributions! Please follow these steps to contribute:
- Fork this repository
- Add your resource(s)
- Submit a pull request
Find all the information and instructions on how to contribute in CONTRIBUTING.md.
Please find below all the contributed resources, organised by category
-
SyftBox | #30DaysOfFLCode - The new project by OpenMined that aims to make privacy-enhancing technologies more accessible and user-friendly for developers.
- SyftBox Computational Model - How computation works on SyftBox, in a nutshell
- Federated CPU Tracker Member (part1) - An example of SyftBox API that monitors local CPU usage and shares a private/sanitized version of the data within the SyftBox federated network.
- Federated CPU Tracker Leader (part 2) - A SyftBox API that aggregates CPU data from all members contributing to the computation, and creates a live visualization dashboard.
-
From Centralised to Decentralised Training: An Intro to Federated Learning - A Jupyter Notebook tutorial aimed to provide a practical overview with code examples to all the the foundational concepts tackled in federated learning. This tutorial was written by Andrej Jovanović, Sree Harsha Nelaturu and Luca Powell and presented at the 2024 iteration of the Deep Learning Indaba.
-
Beyond Privacy Trade-offs with Structured Transparency - Structured Transparency: a five-part framework to combine multiple PETs, such as secure computation and federated learning, to maximise their value, and to reduce lingering use-misuse trade-offs in multiple domains.
-
Federated Learning: Challenges, Methods, and Future Directions - Federated learning involves training statistical models over remote devices or siloed data centers, such as mobile phones or hospitals, while keeping data localized. In this article, we discuss the unique characteristics and challenges of federated learning, provide a broad overview of current approaches, and outline several directions of future work that are relevant to a wide range of research communities.
-
Advances and Open Problems in Federated Learning - Federated learning (FL) is a machine learning setting where many clients collaboratively train a model under the orchestration of a central server, while keeping the training data decentralized. Motivated by the explosive growth in FL research, this paper discusses recent advances and presents an extensive collection of open problems and challenges.
-
The Private AI Series - Learn how privacy technology is changing our world and how you can lead the charge.
-
Federated Learning @ DeepLearning.AI - An introductory course on federated learning delivered by DeepLearning.AI in collaboration with Flower.
-
Federated Learning Tutorial @ NeurIPS 2020 - Federated Learning Tutorial @ NeurIPS 2020
-
Secure and Private AI - Learn skills to build AI systems that prioritize security and privacy using cutting-edge techniques. The course introduces tools and methods for securely handling sensitive data in AI applications, including Federated Learning, Differential Privacy, and Encrypted Computation.
-
Tutorial on Differential Privacy - Katrina Ligett, California Institute of Technology - Big Data and Differential Privacy
-
Privacy Preserving AI (Andrew Trask) | MIT Deep Learning Series - Lecture by Andrew Trask in January 2020, part of the MIT Deep Learning Lecture Series.
-
Tutorial: Differential Privacy and Learning: The Tools, The Results, and The Frontier - Katrina Ligett, California Institute of Technology - NeurIPS tutorial 2014
- SyftBox - Discover SyftBox, an exciting new project by OpenMined that puts Privacy-Enhancing Technologies at its core.
- Programming Differential Privacy - An open source book about differential privacy, for programmers.