خلاصه
معرفی
طراحی PTB-FLA
اعتبار سنجی PTB-FLA
نتیجه
منابع
Abstract
Introduction
PTB-FLA Design
PTB-FLA Validation
Conclusion
References
چکیده
امروزه بسیاری از محققان در حال توسعه چارچوب های توزیع شده و غیرمتمرکز مختلف برای الگوریتم های یادگیری فدرال هستند. با این حال، توسعه چنین چارچوبی با هدف قرار دادن اینترنت هوشمند اشیاء در سیستمهای لبهای هنوز یک چالش باز است. در این مقاله، ما راه حل خود را برای آن چالش به نام Python Testbed for Federated Learning Algorithms ارائه می کنیم. راه حل در پایتون خالص نوشته شده است و از الگوریتم های متمرکز و غیرمتمرکز پشتیبانی می کند. استفاده از راه حل ارائه شده با سه مثال الگوریتم ساده تایید شده و نشان داده شده است.
Abstract
Nowadays many researchers are developing various distributed and decentralized frameworks for federated learning algorithms. However, development of such a framework targeting smart Internet of Things in edge systems is still an open challenge. In this paper, we present our solution to that challenge called Python Testbed for Federated Learning Algorithms. The solution is written in pure Python, and it supports both centralized and decentralized algorithms. The usage of the presented solution is both validated and illustrated by three simple algorithm examples.
Introduction
Federated learning was introduced by McMahan et al. [1] as a decentralized approach to model learning that leaves the training data distributed on the mobile devices and learns a shared model by aggregating locally computed updates. They presented FedAvg, a practical method for the federated learning of deep networks based on iterative model averaging, see Algorithm 1 FederatedAveraging in [1] on page 5. The main advantages of federated learning are: (i) it preserves local data privacy, (ii) it is robust to the unbalanced and nonindependent and identically distributed (non-IID) data distributions, and (iii) it reduces required communication rounds by 10–100x as compared to synchronized stochastic gradient descent (FedSgd).
McMahan’s seminal paper [1] inspired many researchers’ papers and in this limited space we mention just few of them. Immediately after [1], Bonawitz et al. [2] introduced an efficient secure aggregation protocol for federated learning, and Konecny et al. [3] presented algorithms for further decreasing communication costs. More recent papers are focused on data privacy [4, 5].
Conclusion
In this paper, we developed the federated learning framework targeting smart IoTs in edge systems called Python Testbed for Federated Learning Algorithms (PTB-FLA), with the primary intention to be used as a framework for developing FLAs on a single computer. The solution is written in pure Python, and it supports both centralized and decentralized algorithms. The PTB-FLA usage is both validated and illustrated by three simple algorithm examples.
The main PTB-FLA advantages are the following: (i) it keeps the application footprint small so to fit to smart IoTs and (ii) it keeps the installation as simple as possible (with no external dependencies).