Asynchronous Federated Stochastic Optimization for Heterogeneous Objectives Under Arbitrary Delays
<|reference_start|>Asynchronous Federated Stochastic Optimization for Heterogeneous Objectives Under Arbitrary Delays: Federated learning (FL) was recently proposed to securely train models with data held over multiple locations ("clients") under the coordination of a central server. Two major challenges hindering the performance of FL algorithms are long training times caused by straggling clients, and a decline in model accuracy under non-iid local data distributions ("client drift"). In this work, we propose and analyze Asynchronous Exact Averaging (AREA), a new stochastic (sub)gradient algorithm that utilizes asynchronous communication to speed up convergence and enhance scalability, and employs client memory to correct the client drift caused by variations in client update frequencies. Moreover, AREA is, to the best of our knowledge, the first method that is guaranteed to converge under arbitrarily long delays, without the use of delay-adaptive stepsizes, and (i) for strongly convex, smooth functions, asymptotically converges to an error neighborhood whose size depends only on the variance of the stochastic gradients used with respect to the number of iterations, and (ii) for convex, non-smooth functions, matches the convergence rate of the centralized stochastic subgradient method up to a constant factor, which depends on the average of the individual client update frequencies instead of their minimum (or maximum). Our numerical results validate our theoretical analysis and indicate AREA outperforms state-of-the-art methods when local data are highly non-iid, especially as the number of clients grows.<|reference_end|>
@article{iakovidou2024asynchronous,
    title={Asynchronous Federated Stochastic Optimization for Heterogeneous
  Objectives Under Arbitrary Delays},
    author={Charikleia Iakovidou, Kibaek Kim},
    journal={arXiv preprint arXiv:2405.10123},
    year={2024},
    archivePrefix={arXiv},
    eprint={2405.10123},
    primaryClass={cs.LG cs.DC}
}