Adaptive Federated Optimization
  Federated learning is a distributed machine learning paradigm in which a
large number of clients coordinate with a central server to learn a model
without sharing their own training data. Standard federated optimization
methods such as Federated Averaging (FedAvg) are often difficult to tune and
exhibit unfavorable convergence behavior. In non-federated settings, adaptive
optimization methods have had notable success in combating such issues. In this
work, we propose federated versions of adaptive optimizers, including Adagrad,
Adam, and Yogi, and analyze their convergence in the presence of heterogeneous
data for general non-convex settings. Our results highlight the interplay
between client heterogeneity and communication efficiency. We also perform
extensive experiments on these methods and show that the use of adaptive
optimizers can significantly improve the performance of federated learning.
