Skip to content

google-research/federated

Repository files navigation

Federated Research

Federated Research is a collection of research projects related to Federated Learning and Federated Analytics. Federated learning is an approach to machine learning where a shared global model is trained across many participating clients that keep their training data locally. Federated analytics is the practice of applying data science methods to the analysis of raw data that is stored locally on users’ devices.

Many of the projects contained in this repository use TensorFlow Federated (TFF), an open-source framework for machine learning and other computations on decentralized data. For an overview and introduction to TFF, please see the list of tutorials. For information on using TFF for research, see TFF for research.

Recommended Usage

The main purpose of this repository is for reproducing experimental results in related papers. None of the projects (or subfolders) here is intended to be a resusable framework or package.

  • The recommended usage for this repository is to git clone and follow the instruction in each independent project to run the code, usually with bazel.

There is a special module utils/ that is widely used as a dependency for projects in this repository. Some of the functions in utils/ are in the process of upstreaming to the TFF package. However, utils/ is not promised to be a stable API and the code may change in any time.

  • The recommended usage for utils/ is to fork the necessary piece of code for your own research projects.
  • If you find utils/ and maybe other projects helpful as a module that your projects want to depend on (and you accept the risk of depending on potentially unstable and unsupported code), you can use git submodule and add the module to your python path.

Contributing

This repository contains Google-affiliated research projects related to federated learning and analytics. If you are working with Google collaborators and would like to feature your research project here, please review the contribution guidelines for coding style, best practices, etc.

Pull Requests

We currently do not accept pull requests for this repository. If you have feature requests or encounter a bug, please file an issue to the project owners.

Issues

Please use GitHub issues to communicate with project owners for requests and bugs. Add [project/folder name] in the issue title so that we can easily find the best person to respond.

Questions

If you have questions related to TensorFlow Federated, please direct your questions to Stack Overflow using the tensorflow-federated tag.

If you would like more information on federated learning, please see the following introduction to federated learning. For a more in-depth discussion, see the following manuscripts

About

A collection of Google research projects related to Federated Learning and Federated Analytics.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published