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.3.2.tar.gz (122.9 kB view details)

Uploaded Source

Built Distribution

fluke_fl-0.3.2-py3-none-any.whl (137.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fluke_fl-0.3.2.tar.gz
  • Upload date:
  • Size: 122.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.12

File hashes

Hashes for fluke_fl-0.3.2.tar.gz
Algorithm Hash digest
SHA256 696392e3189277fc5511ad8a5806ff610bf977530a11851c34a71439938c308e
MD5 29249e2bf37bc2eba5160635aa1d8da2
BLAKE2b-256 a289349e9c06a317c9ae666d1bc431e784ddfad6e9dfde551485914716703e44

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fluke_fl-0.3.2-py3-none-any.whl
  • Upload date:
  • Size: 137.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.9.12

File hashes

Hashes for fluke_fl-0.3.2-py3-none-any.whl
Algorithm Hash digest
SHA256 47836cdd586f5159cb95d074f691d677ef5f8ef3b57424d6fe8b09009d71c295
MD5 b69cd0630ce93aa6649a93c02c4393c8
BLAKE2b-256 0e1ac6ea3688358c0d9f7e18e89a104959c6aa8abd361ee71abd3b415959b5cf

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