Flower: A Friendly Federated Learning Research Framework
This provides a critical new tool for researchers and developers in federated learning, enabling more realistic and scalable studies, though it is incremental as it builds on existing FL frameworks.
The paper tackles the difficulty of implementing realistic federated learning (FL) at scale and with systems heterogeneity by introducing Flower, a comprehensive FL framework that supports large-scale experiments and heterogeneous device scenarios, achieving FL experiments with up to 15 million clients using only a pair of high-end GPUs.
Federated Learning (FL) has emerged as a promising technique for edge devices to collaboratively learn a shared prediction model, while keeping their training data on the device, thereby decoupling the ability to do machine learning from the need to store the data in the cloud. However, FL is difficult to implement realistically, both in terms of scale and systems heterogeneity. Although there are a number of research frameworks available to simulate FL algorithms, they do not support the study of scalable FL workloads on heterogeneous edge devices. In this paper, we present Flower -- a comprehensive FL framework that distinguishes itself from existing platforms by offering new facilities to execute large-scale FL experiments and consider richly heterogeneous FL device scenarios. Our experiments show Flower can perform FL experiments up to 15M in client size using only a pair of high-end GPUs. Researchers can then seamlessly migrate experiments to real devices to examine other parts of the design space. We believe Flower provides the community with a critical new tool for FL study and development.