FLGo: A Fully Customizable Federated Learning Platform
Zheng Wang Xiaoliang Fan Zhaopeng Peng Xueheng Li Ziqi Yang Mingkuan Feng Zhicheng Yang Xiao Liu Cheng Wang
Federated learning (FL) has found numerous applications in healthcare,
finance, and IoT scenarios. Many existing FL frameworks offer a range of
benchmarks to evaluate the performance of FL under realistic conditions.
However, the process of customizing simulations to accommodate
application-specific settings, data heterogeneity, and system heterogeneity
typically remains unnecessarily complicated. This creates significant hurdles
for traditional ML researchers in exploring the usage of FL, while also
compromising the shareability of codes across FL frameworks. To address this
issue, we propose a novel lightweight FL platform called FLGo, to facilitate
cross-application FL studies with a high degree of shareability. Our platform
offers 40+ benchmarks, 20+ algorithms, and 2 system simulators as
out-of-the-box plugins. We also provide user-friendly APIs for quickly
customizing new plugins that can be readily shared and reused for improved
reproducibility. Finally, we develop a range of experimental tools, including
parallel acceleration, experiment tracker and analyzer, and parameters
auto-tuning. FLGo is maintained at \url{flgo-xmu.github.io}.