Skip to main content

Federated Learning Utility framework for Experimentation and research.

Project description

Coveralls PyPI - Python Version GitHub License

fluke: federated learning utility framework for experimentation and research

fluke is a Python package that provides a framework for federated learning research. It is designed to be modular and extensible, allowing researchers to easily implement and test new federated learning algorithms. fluke provides a set of pre-implemented state-of-the-art federated learning algorithms that can be used as a starting point for research or as a benchmark for comparison.

Installation

fluke is a Python package that can be installed via pip. To install it, you can run the following command:

pip install fluke-fl

Run a federated algorithm

To run an algorithm in fluke you need to create two configuration files:

  • EXP_CONFIG: the experiment configuration file (independent from the algorithm);
  • ALG_CONFIG: the algorithm configuration file;

Then, you can run the following command:

fluke --config=EXP_CONFIG federation ALG_CONFIG

You can find some examples of these files in the configs folder of the repository.

Example

Let say you want to run the classic FedAvg algorithm on the MNIST dataset. Then, using the configuration files exp.yaml and fedavg.yaml, you can run the following command:

fluke --config=path_to_folder/exp.yaml federation path_to_folder/fedavg.yaml

where path_to_folder is the path to the folder containing the configuration files.

Documentation

The documentation for fluke can be found here. It contains detailed information about the package, including how to install it, how to run an experiment, and how to implement new algorithms.

Tutorials

Tutorials on how to use fluke can be found here. In the following, you can find some quick tutorials to get started with fluke:

  • Getting started with fluke API Open in Colab
  • Run your algorithm in fluke Open in Colab
  • Use your own model with fluke Open in Colab
  • Add your dataset and use it with fluke Open in Colab

Contributing

If you have suggestions for how fluke could be improved, or want to report a bug, open an issue! We'd love all and any contributions.

For more, check out the Contributing Guide.

Authors

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fluke_fl-0.1.0.tar.gz (108.2 kB view details)

Uploaded Source

Built Distribution

fluke_fl-0.1.0-py3-none-any.whl (117.4 kB view details)

Uploaded Python 3

File details

Details for the file fluke_fl-0.1.0.tar.gz.

File metadata

  • Download URL: fluke_fl-0.1.0.tar.gz
  • Upload date:
  • Size: 108.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for fluke_fl-0.1.0.tar.gz
Algorithm Hash digest
SHA256 298278e8808571855093e214ff5915a78bb2de8e8aa76e4039ff44a83dc1b7a6
MD5 6b52485cd72728d0214cc5ce484140a1
BLAKE2b-256 c1ad9f632f5cb709b83355299d2c6e7ad1ef4766d7617cef817d4ae5f32a00ae

See more details on using hashes here.

File details

Details for the file fluke_fl-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: fluke_fl-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 117.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for fluke_fl-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2a53afd0eec5703c1521ea8b1f57ddb762ab54d9d153bcda374410edff74d0c2
MD5 90a7e56d4f9cbb24f7bc746212425634
BLAKE2b-256 f1d8b2e52b23c6d2a1739af01af6240ee45b6f4cf17ff6bd76357471f5f0e32f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page