A Open Source Federated Learning Simulation Framework for Everyone
This is a simulation framework for federated learning, based on TensorFlow. The framework allows for the simulation of various federated learning scenarios and the evaluation of different algorithms and models under those scenarios.
Federated learning is a machine learning paradigm that allows for the training of models across multiple devices, without the need for centralized data storage. Instead, the models are trained locally on each device and only the model updates are sent to a central server. This approach has significant advantages in terms of data privacy and efficiency.
The framework simulates a federated learning scenario by creating a set of virtual devices, each with its own local dataset. The devices communicate with a central server, exchanging model updates and receiving instructions on how to update their local models. The framework includes various algorithms and models for the devices to use, as well as metrics for evaluating their performance.
tensorflow >= 2.8.0 numpy == 1.24.2 scikit-learn == 1.2.1
multi-center-fed-learning leaf
Datasets(in datasets folder) used in this project is from LEAF
Contributions to the framework are welcome! If you would like to contribute, please fork the repository and submit a pull request.
This project is licensed under the Apache License 2.0 - see the LICENSE file for details.