Federated Learning Algorithms
The implementation of federated learning algorithms in Fed2Tier consists of two components: the training part on the client side and the aggregation part on the server and node side. The training functions are coded in the net_lib.py file located in the node/src directory, while the aggregation functions are located in various files within the algorithms folder at the server/src and node/src directory.
The algorithms currently implemented in Fed2Tier are:
Algorithm |
Paper |
Server |
Node |
|---|---|---|---|
FedAvg |
Communication-Efficient Learning of Deep Networks from Decentralized Data |
✅ |
✅ |
FedDyn |
✅ |
||
Scaffold |
SCAFFOLD: Stochastic Controlled Averaging for Federated Learning |
✅ |
|
FedAdagrad |
✅ |
✅ |
|
FedAdam |
✅ |
✅ |
|
FedYogi |
✅ |
✅ |
|
FedProx |
✅ |
—