Correcting Before Adapting: Gradient Correction for Federated Adaptive Optimization
Organizations: Elmore Family School of Electrical and Computer Engineering, Purdue University, West Lafayette, IN · IBM T. J. Watson Research Center, Yorktown Heights, NY, USA · Department of Computer Science and Engineering, Yonsei University, Seoul, Korea
Abstract
Client-drift compensation methods mitigate the impact of data heterogeneity in federated learning (FL). While drift correction is well studied for stochastic gradient descent (SGD)-based FL, its interaction with adaptive client optimizers remains less understood. Adaptive optimizers such as Adam build each update from running averages of past gradients, so correcting only the final update direction leaves those averages, and the drift they contain, unchanged. We propose Federated Adaptive Gradient Correction ({\tt FA-GC}), which corrects each gradient before it enters these running averages, and compare it with Federated Adaptive Naive Tracking ({\tt FA-NT}), which adds the correction to the final direction. We show that, in an idealized setting without gradient noise, the direction FA-GC follows vanishes only at stationary points of the global objective, whereas the direction FA-NT follows can vanish elsewhere when the optimizer is nonlinear. We also prove convergence of FA-GC for Adam-family methods, gradient normalization, and Muon, which orthogonalizes matrix updates. Unlike our bound for FA-NT, these bounds contain no term for client heterogeneity. On seven image and language tasks, FA-GC with Adam needs the fewest rounds on average to reach the target accuracy, and on the three image tasks it also uses less total communication than uncorrected local Adam and FA-NT. On the QNLI question-entailment task with SOAP, which applies Adam in a rotated basis, and Muon under strong heterogeneity, FA-GC gives the highest accuracy, while FA-NT falls below the uncorrected optimizers.
Figures & tables
| Method | |||||
| Adam, AMSGrad, SOAP † | |||||
| Normalization | |||||
| Exact Muon | |||||
| Finite-step Muon | |||||
| Adam family, reference | |||||
| † SOAP uses the Frobenius norm. | |||||
| Settings | Task Type | Dataset | FedAvg-M [ 14 ] | SCAFFOLD-M [ 14 ] | FedAdam [ 15 ] | FedAMS [ 16 ] | LocalAdam | PAdaMFed [ 17 ] | FA-NT (Adam) | FA-GC (Adam) |
| Communication Rounds | Image Tasks | CIFAR-10 | 1014.5 250.3 | 544.3 59.9 | 2532.5 343.3 | 2388.8 286.6 | 589.5 74.0 | 360.3 20.8 | 394.8 31.3 | 310.0 16.8 |
| CIFAR-100 | 998.5 88.5 | 621.8 55.4 | 1854.0 185.3 | 1654 156.4 | 678.3 40.6 | 511.0 15.2 | 530.3 17.6 | 323.8 16.3 | ||
| TinyImageNet | 215.5 10.4 | 242.2 15.4 | 543.2 45.2 | 463.5 35.7 | 177.3 8.3 | 87.5 6.4 | 157.0 6.4 | 66.3 4.4 | ||
| Language Tasks | 20NewsGroups | 245.5 27.6 | 214.0 17.7 | 247.0 8.1 | 224.5 5.4 | 156.8 7.8 | 149.3 3.4 | 155.0 7.0 | 143.3 4.1 | |
| QNLI | 171.3 41.2 | 162.5 37.4 | 137.5 10.2 | 145.0 9.8 | 117.0 10.4 | 87.3 13.2 | 99.8 11.2 | 55.5 16.3 | ||
| QQP | 316.5 64.3 | 299.0 70.3 | 245.3 20.5 | 267.8 22.1 | 213.0 53.8 | 84.7 4.3 | 196.3 5.1 | 63.0 4.6 |
| Dataset | LocalAdam | FA-NT | FA-GC |
| CIFAR-10 | |||
| CIFAR-100 | |||
| TinyImageNet |
| Dataset | ||||
| CIFAR-10 | ||||
| CIFAR-100 | ||||
| TinyImageNet | ||||
Appendix figures & tables14 assets
Supplementary material from the paper’s appendix.
Appendix
| Group | Notation | Description |
| System | Client count, training and refresh counts, and participation fractions and . | |
| Communication rounds, local steps, and their indices. | ||
| Training and tracker-refresh client sets in round . | ||
| Global objective, client objective, and finite lower bound. | ||
| Client data distribution and a stochastic sample. | ||
| Number of scalar parameters; smoothness constants of and of each (Assumption V.1 ). |
| Optimizer / | Local | FA-NT | FA-GC |
| SOAP / 0.1 | |||
| Muon / 0.1 | |||
| Muon / 0.3 | |||
| Muon / 1.0 |
| Dirichlet | Method | Local LR | Server LR |
| 0.1 | Local | 0.9 | |
| 0.1 | FA-NT | 0.9 | |
| 0.1 | FA-GC | 0.3 | |
| 0.3 | Local | 0.9 | |
| 0.3 | FA-NT | 0.9 | |
| 0.3 | FA-GC | 0.3 |
| Settings | Dataset | LocalAdam | FA-NT ( ) | FA-GC ( ) | FA-GC ( ) | FA-GC ( ) | FA-NT | FA-GC |
| Communication Rounds | CIFAR-10 | 589.5 74.0 | 401.5 33.9 | 358.8 21.4 | 334.3 20.2 | 318.8 15.3 | 394.8 31.3 | 310.0 16.8 |
| CIFAR-100 | 678.3 40.6 | 867.5 25.3 | 527.0 16.5 | 413.3 15.5 | 370.5 14.7 | 530.3 17.6 | 323.8 16.3 | |
| TinyImageNet | 177.3 8.3 | 164.3 6.7 | 85.5 5.7 | 75.3 5.7 | 74.0 6.6 | 157.0 6.4 | 66.3 4.4 |
| Learning Rate | Dataset | FedAvg-M | SCAFFOLD-M | FedAdam | FedAMS | LocalAdam | PAdaMFed | FA-NT (Adam) | FA-GC (Adam) |
| CIFAR-10 | 1 | 1 | 1 | 1 | 1 | 1 | |||
| CIFAR-100 | 1 | 1 | 1 | 1 | 1 | 1 | |||
| TinyImageNet | |||||||||
| CIFAR-10 | |||||||||
| CIFAR-100 | |||||||||
| TinyImageNet |
| Learning Rate | Dataset | FedAvg-M | SCAFFOLD-M | FedAdam | FedAMS | LocalAdam | PAdaMFed | FA-NT (Adam) | FA-GC (Adam) |
| 20NEWSGROUPS | |||||||||
| QQP | |||||||||
| QNLI | |||||||||
| SST-2 | |||||||||
| 20NEWSGROUPS | |||||||||
| QQP |
| Task | FedAvg-M | SCAFFOLD-M | FedAdam | FedAMS | LocalAdam | FA-GC (Adam) |
| Image task (ResNet-18) | 35.1M ( 0.14 GB) | 46.8M ( 0.18 GB) | 23.4M ( 0.09 GB) | 23.4M ( 0.09 GB) | 46.8M ( 0.18 GB) | 58.5M ( 0.23 GB) |
| Language task | 125.48M ( 0.50 GB) | 126.22M ( 0.50 GB) | 124.74M ( 0.49 GB) | 124.74M ( 0.49 GB) | 126.22M ( 0.50 GB) | 126.96M ( 0.51 GB) |
| Dataset | FedAvg-M | SCAFFOLD-M | FedAdam | FedAMS | LocalAdam | PAdaMFed | FA-NT (Adam) | FA-GC (Adam) |
| Vectors/round | 30 | 40 | 20 | 20 | 20 | 60 | 35 | 35 |
| CIFAR-10 | 1424.36 351.42 | 1018.93 112.13 | 2370.42 321.33 | 2235.92 268.26 | 551.77 69.26 | 1011.72 58.41 | 646.68 51.27 | 507.78 27.52 |
| CIFAR-100 | 1401.89 124.25 | 1164.01 103.71 | 1735.34 173.44 | 1548.14 146.39 | 634.89 38.00 | 1434.89 42.68 | 868.63 28.83 | 530.38 26.70 |
| TinyImageNet | 302.56 14.60 | 453.40 28.83 | 508.44 42.31 | 433.84 33.42 | 165.95 7.77 | 245.70 17.97 | 257.17 10.48 | 108.60 7.21 |
Federated Learning
Federated learning trains shared models across data holders without requiring them to pool their raw data.
See all 951 papers