SCAFFOLD: Stochastic Controlled Averaging for Federated Learning

Abstract

Federated learning is a key scenario in modern large-scale machine learning where the data remains distributed over a large number of clients and the task is to learn a centralized model without transmitting the client data. The standard optimization algorithm used in this setting is Federated Averaging (FedAvg) due to its low communication cost. We obtain a tight characterization of the convergence of FedAvg and prove that heterogeneity (non-iid-ness) in the client’s data results in a ‘drift’ in the local updates resulting in poor performance. As a solution, we propose a new algorithm (SCAFFOLD) which uses control variates (variance reduction) to correct for the ‘client drift’. We prove that SCAFFOLD requires significantly fewer communication rounds and is not affected by data heterogeneity or client sampling. Further, we show that (for quadratics) SCAFFOLD can take advantage of similarity in the client’s data yielding even faster convergence. The latter is the first result to quantify the usefulness of local-steps in distributed optimization.

Cite

Text

Karimireddy et al. "SCAFFOLD: Stochastic Controlled Averaging for Federated Learning." International Conference on Machine Learning, 2020.

Markdown

[Karimireddy et al. "SCAFFOLD: Stochastic Controlled Averaging for Federated Learning." International Conference on Machine Learning, 2020.](https://mlanthology.org/icml/2020/karimireddy2020icml-scaffold/)

BibTeX

@inproceedings{karimireddy2020icml-scaffold,
  title     = {{SCAFFOLD: Stochastic Controlled Averaging for Federated Learning}},
  author    = {Karimireddy, Sai Praneeth and Kale, Satyen and Mohri, Mehryar and Reddi, Sashank and Stich, Sebastian and Suresh, Ananda Theertha},
  booktitle = {International Conference on Machine Learning},
  year      = {2020},
  pages     = {5132-5143},
  volume    = {119},
  url       = {https://mlanthology.org/icml/2020/karimireddy2020icml-scaffold/}
}