google-parfait/tensorflow-federated
An open-source framework for machine learning and other computations on decentralized data.
What it solves
It addresses the challenge of training machine learning models on decentralized data without requiring that sensitive data be uploaded to a central server. This allows for collaborative model training while keeping user data local and private.
How it works
TFF uses a federated learning approach where a shared global model is trained across many participating clients. It provides two primary layers of interfaces:
- Federated Learning (FL) API: A high-level layer (
tff.learning) that allows developers to apply existing federated training and evaluation implementations to TensorFlow models. - Federated Core (FC) API: A low-level, strongly-typed functional programming environment that combines TensorFlow with distributed communication operators to express novel federated algorithms.
Who it’s for
It is designed for researchers and developers who want to experiment with federated learning algorithms, implement non-learning computations like aggregated analytics over decentralized data, or deploy federated computations to various runtime environments.
Highlights
- Supports both high-level training/evaluation APIs and low-level algorithm design tools.
- Enables training of models (e.g., mobile keyboard prediction) without uploading sensitive data.
- Includes a single-machine simulation runtime for rapid experimentation.
- Declaratively expresses computations for deployment across diverse environments.
Related
- Project
- Dispatch
- Project
- Project
- Project