Skip to content

Latest commit

 

History

History
81 lines (70 loc) · 4.55 KB

federated_algorithms.md

File metadata and controls

81 lines (70 loc) · 4.55 KB

Federated Algorithms

FELES provides a number of federated algorithms ready to be used.

The algorithms implemented in FELES are the followings:

name reference details
fedavg McMahan, Brendan, et al. "Communication-efficient learning of deep networks from decentralized data." Artificial intelligence and statistics. PMLR, 2017. FedAvg
fedprox Li, Tian, et al. "Federated optimization in heterogeneous networks." Proceedings of Machine Learning and Systems 2 (2020): 429-450. FedAvg
fednova Wang, Jianyu, et al. "Tackling the objective inconsistency problem in heterogeneous federated optimization." arXiv preprint arXiv:2007.07481 (2020). FedNova
scaffold Karimireddy, Sai Praneeth, et al. "Scaffold: Stochastic controlled averaging for federated learning." International Conference on Machine Learning. PMLR, 2020. SCAFFOLD
feddyn Acar, Durmus Alp Emre, et al. "Federated learning based on dynamic regularization." arXiv preprint arXiv:2111.04263 (2021). FedDyn

Custom Federated Algorithms

The basic federated algorithm is FedAvg but each federated algorithm implements a personalized version for the worker, and the orchestrator by overriding functions.

Each federated worker can override functions:

  • handle_fit_job
  • handle_eval_job

Each federated orchestrator can override functions:

  • model_fit
  • model_eval
  • select_devs
  • put_client_job_fit
  • put_client_job_eval
  • get_fit_results
  • get_eval_results

FedAvg

Present a practical method for the federated learning of deep networks based on iterative model averaging

FedProx

Introduce a framework, FedProx, to tackle heterogeneity in federated networks

FedNova

FedNova, a normalized averaging method that eliminates objective inconsistency while preserving fast error convergence

SCAFFOLD

SCAFFOLD uses control variates (variance reduction) to correct for the ‘client-drift’ in its local updates

FedDyn

FedDyn is a dynamic regularizer for each device at each round, so that the the global and device solutions are aligned