fluke#

v 0.8.1

Federated Learning Utility frameworK for Experimentation and research.

Made by researchers for researchers!

fluke is a benchmarking tool for Federated Learning (FL). It is designed to be flexible, easy to use, and easy to extend, and can be used to benchmark a wide variety of federated learning algorithms. fluke is meant for researchers and practitioners who want to quickly develop their own federated algorithm and test its performance against state-of-the-art algorithms on a variety of datasets and conditions. In fluke the federation is simulated.

Philosophy#

fluke is designed to minimize the development overhead of adding new algorithms and performing experiments. It is built on the following principles:

  • Easy to use: fluke is designed to be easy to use. It is easy to install, to run, and to configure. Running a federated learning experiment is as simple as running a single command.

  • Easy to extend: fluke is designed to be easy to extend minimazing the overhead of adding new algorithms. Adding a new method is as simple as adding the definition of the client and the server.

  • Up-to-date: fluke implements state-of-the-art federated learning algorithms and datasets and is regularly updated to include the latest affirmed techniques.

  • Simulated: in fluke the federation is simulated. This means that the communication between the clients and the server is happens in a simulated channel and the data is not actually sent over the network. The simulated environment frees the user from aspects not related to the algorithm itself.

Explore fluke#

Getting Started

Is it your first time using fluke? Start here.

./getting_started.html
API Reference

Explore the fluke API.

./api_reference.html
Tutorials

Check out the tutorials to get acquainted with fluke.

./tutorials.html