Skip to content

guopengf/NVFlare

 
 

Repository files navigation

NVIDIA Federated Learning Application Runtime Environment

NVIDIA FLARE is a domain-agnostic, open-source, extensible SDK that allows researchers and data scientists to adapt existing ML/DL workflows(PyTorch, TensorFlow, Scikit-learn, XGBoost etc.) to a federated paradigm. It enables platform developers to build a secure, privacy-preserving offering for a distributed multi-party collaboration.

NVIDIA FLARE is built on a componentized architecture that allows you to take federated learning workloads from research and simulation to real-world production deployment. Key components include:

  • Support both deep learning and traditional machine algorithms
  • Support horizontal and vertical federated learning
  • Built-in FL algorithms (e.g., FedAvg, FedProx, FedOpt, Scaffold, Ditto )
  • Support multiple training workflows (e.g., scatter & gather, cyclic) and validation workflows (global model evaluation, cross-site validation)
  • Support both data analytics (federated statistics) and machine learning lifecycle management
  • Privacy preservation with differential privacy, homomorphic encryption
  • Security enforcement through federated authorization and privacy policy
  • Easily customizable and extensible
  • Deployment on cloud and on premise
  • Simulator for rapid development and prototyping
  • Dashboard UI for simplified project management and deployment
  • Built-in support for system resiliency and fault tolerance

Installation

To install the current release, you can simply run:

$ python3 -m pip install nvflare

Getting started

You can quickly get started using the FL simulator.

A detailed getting started guide is available in the documentation.

Examples and notebook tutorials are located here.

Related talks and publications

For a list of talks, blogs, and publications related to NVIDIA FLARE, see here.

License

NVIDIA FLARE has Apache 2.0 license, as found in LICENSE file.

About

NVIDIA Federated Learning Application Runtime Environment

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 88.3%
  • Jupyter Notebook 10.8%
  • Other 0.9%