Taming Preconditioner Drift: Unlocking the Potential of Second-Order Optimizers for Federated Learning on Non-IID Data
Organizations: College of Intelligence and Computing, Tianjin University, Tianjin, China · Medical School, Tianjin University, Tianjin, China · Peng Cheng Lab, Shenzhen, China · School of Cyber Engineering, Xidian University, Xi’an, China ·
Abstract
Second-order optimizers can significantly accelerate large-scale training, yet their naive federated variants are often unstable or even diverge on non-IID data. We show that a key culprit is preconditioner drift: client-side second-order training induces heterogeneous curvature-defined geometries (i.e., preconditioner coordinate systems), and server-side model averaging updates computed under incompatible metrics, corrupting the global descent direction. To address this geometric mismatch, we propose FedPAC, a preconditioner alignment and correction framework for reliable federated second-order optimization. FedPAC explicitly decouples parameter aggregation from geometry synchronization by: (i) Alignment (i.e.,aggregating local preconditioners into a global reference and warm-starting clients via global preconditioner); and (ii) Correction (i.e., steering local preconditioned updates using a global preconditioned direction to suppress long-term drift). We provide drift-coupled non-convex convergence guarantees with linear speedup under partial participation. Empirically, FedPAC consistently improves stability and accuracy across vision and language tasks, achieving up to absolute accuracy gain on CIFAR-100 with ViTs. Code is available at https://anonymous.4open.science/r/FedPAC-8B24.
Figures & tables
| Method | ResNet-18 | ViT-Tiny | ||||||
| CIFAR-100 | Tiny-Imagenet | CIFAR-100 | Tiny-Imagenet | |||||
| Dir-0.1 | Dir-0.05 | Dir-0.1 | Dir-0.05 | Dir-0.1 | Dir-0.05 | Dir-0.1 | Dir-0.05 | |
| FedAvg | 60.17 | 56.75 | 47.48 | 43.80 | 27.24 | 23.42 | 15.68 | 14.05 |
| SCAFFOLD | 60.69 | 56.43 | 47.76 | 43.92 | 26.86 | 23.23 | 15.70 | 14.21 |
| FedCM | 66.61 | 62.65 | 41.16 | 36.00 | 16.95 | 14.74 | 8.88 | 8.15 |
| Local AdamW | 59.23 | 55.24 | 44.01 | 40.00 | 37.57 | 36.06 | 24.31 | 21.35 |
| Method | CIFAR-100 | Tiny-ImageNet | ||
|---|---|---|---|---|
| Test Acc | Loss | Test Acc | Loss | |
| FedAvg | 0.332 | 0.421 | ||
| SCAFFOLD | 0.328 | 0.432 | ||
| FedCM | 0.592 | 0.708 | ||
| Local AdamW | 0.281 | 0.252 | ||
| Local Sophia | 0.275 | 0.188 | ||
| Method | C4 (Train Loss) | ||
|---|---|---|---|
| LLaMA 60M | LLaMA 130M | LLaMA 350M | |
| FedAvg | 4.156 | 4.258 | 4.354 |
| SCAFFOLD | 4.028 | 4.238 | 4.365 |
| FedCM | 4.231 | 4.356 | 4.426 |
| Local AdamW | 3.213 | 3.418 | 3.519 |
| Local Sophia | 3.201 | 3.389 | 3.521 |
| Model, Dataset, | 0.0 | 0.1 | 0.2 | 0.3 | 0.4 | 0.5 | 0.6 | 0.7 | 0.8 | 0.9 |
|---|---|---|---|---|---|---|---|---|---|---|
| ResNet-18, CIFAR-100 | 62.05 | 62.35 | 63.10 | 63.57 | 63.75 | 64.16 | 63.75 | 61.75 | 61.70 | 58.86 |
| ViT-Tiny, CIFAR-100 | 44.56 | 45.28 | 45.63 | 46.22 | 46.84 | 47.55 | 46.86 | 46.59 | 46.05 | 45.66 |
| Variant | ResNet-18 | ViT-Tiny |
|---|---|---|
| Local SOAP | ||
| w/o preconditioner alignment ( ) | ||
| w/o preconditioner correction ( ) | ||
| FedPAC_SOAP (full) |
| Aggregation | Acc | CommCost | CompCost |
|---|---|---|---|
| Local SOAP | 41.68 | 22.8 MB (1 ) | 5.56 s |
| FedPAC_SOAP | 47.55 | 68.4 MB (3 ) | 5.85 s |
| FedPAC_SOAP_light | 46.75 | 25.1 MB (1.1 ) | 5.91s |
Appendix figures & tables8 assets
Supplementary material from the paper’s appendix.
Appendix
| Dataset | #Classes | Image Size | Train | Val | Test | Total | Train / class |
|---|---|---|---|---|---|---|---|
| CIFAR-100 | 100 | 50,000 | — | 10,000 | 60,000 | 500 | |
| Tiny ImageNet | 200 | 100,000 | 10,000 | 10,000 | 120,000 | 500 |
| Method | Local Optimizer | Local LR | Weight Decay | |||
|---|---|---|---|---|---|---|
| FedAvg (Local SGD) | SGD | 0.1 | — | — | — | 0.001 |
| SCAFFOLD | SGD | 0.1 | — | — | — | 0.001 |
| FedCM | SGD | 0.1 | 0.9 | — | — | 0.001 |
| Local AdamW | AdamW | 3e-4 | — | 0.9 | 0.999 | 0.01 |
| Local Sophia | Sophia | 3e-4 | — | 0.9 | 0.99 | 0.01 |
| Local Muon | Muon | 3e-2 | — | 0.9 | 0.95 | 0.01 |
| Method | Local Optimizer | Local LR | Weight Decay | |||
|---|---|---|---|---|---|---|
| FedAvg (Local SGD) | SGD | 0.1 | — | — | — | 0.001 |
| SCAFFOLD | SGD | 0.1 | — | — | — | 0.001 |
| FedCM | SGD | 0.1 | 0.9 | — | — | 0.001 |
| Local AdamW | AdamW | 1e-4 | — | 0.9 | 0.999 | 0.01 |
| Local Sophia | Sophia | 1e-4 | — | 0.9 | 0.99 | 0.01 |
| Local Muon | Muon | 1e-2 | — | 0.9 | 0.95 | 0.01 |
| Method | Local Optimizer | Local LR | Weight Decay | |||
|---|---|---|---|---|---|---|
| FedAvg (Local SGD) | SGD | 0.1 | — | — | — | 0.001 |
| SCAFFOLD | SGD | 0.1 | — | — | — | 0.001 |
| FedCM | SGD | 0.1 | 0.9 | — | — | 0.001 |
| Local AdamW | AdamW | 3e-4 | — | 0.9 | 0.999 | 0.01 |
| Local Sophia | Sophia | 3e-4 | — | 0.9 | 0.99 | 0.01 |
| Local Muon | Muon | 3e-2 | — | 0.9 | 0.95 | 0.01 |
| Method / Strategy | Communication | CommCost | Compute-Cost (s) | Acc(%) |
|---|---|---|---|---|
| FedAvg | 22.8 MB | 4.56 s | 27.24 | |
| SCAFFOLD | 45.6 MB | 5.22 s | 26.86 | |
| FedCM | 22.8 MB | 4.68 s | 16.95 | |
| Local AdamW | 22.8 MB | 4.89 s | 37.57 | |
| Local Sophia | 22.8 MB | 4.92 s | 34.05 | |
| Local Muon | 22.8 MB | 5.14 s | 44.00 |
| Method | CIFAR-100 (ResNet-18) | Tiny-Imagenet (ResNet-18) | ||||||
| iid | Dir-0.5 | Dir-0.1 | Dir-0.05 | iid | Dir-0.5 | Dir-0.1 | Dir-0.05 | |
| FedAvg | 65.04 | 65.07 | 60.17 | 56.75 | 53.88 | 52.55 | 47.48 | 43.80 |
| SCAFFOLD | 66.04 | 65.51 | 60.69 | 56.43 | 54.49 | 53.36 | 47.76 | 43.92 |
| FedCM | 71.12 | 69.85 | 66.61 | 62.65 | 46.51 | 44.06 | 41.16 | 36.00 |
| Local AdamW | 64.37 | 63.58 | 59.23 | 55.24 | 51.06 | 49.97 | 44.01 | 40.00 |
| Fed-Sophia | 62.56 | 60.62 | 57.29 | 51.02 | 49.86 | 47.62 | 41.89 | 36.65 |
| Method | CIFAR-100 (ViT-Tiny) | Tiny-Imagenet (ViT-Tiny) | ||||||
|---|---|---|---|---|---|---|---|---|
| iid | Dir-0.5 | Dir-0.1 | Dir-0.05 | iid | Dir-0.5 | Dir-0.1 | Dir-0.05 | |
| FedAvg | 32.97 | 33.66 | 27.24 | 23.42 | 18.61 | 18.03 | 15.68 | 14.05 |
| SCAFFOLD | 32.29 | 33.01 | 26.86 | 23.23 | 18.32 | 18.36 | 15.70 | 14.21 |
| FedCM | 21.97 | 22.02 | 16.95 | 14.74 | 10.23 | 11.66 | 8.88 | 8.15 |
| Local AdamW | 41.27 | 41.21 | 37.57 | 36.06 | 27.94 | 26.82 | 24.31 | 21.35 |
| Fed-Sophia | 38.34 | 38.56 | 34.23 | 32.27 | 23.56 | 24.46 | 23.85 | 22.17 |
| Family | What is synchronized (server clients)? | Extra cost (comm./state) | Main issue it targets |
|---|---|---|---|
| FedAvg / Local-SGD | Model parameters/updates only | per round | General FL baseline; does not explicitly correct non-IID induced drift |
| FedOpt (server adaptive; e.g., FedAdam/FedYogi) | only; optimizer state (moments) kept on server (not shared as a common client geometry) | (no extra client-side sync) | Improves global update scaling/adaptivity, but does not align heterogeneous client metrics |
| Control-variate / drift correction (e.g., SCAFFOLD) | + first-order control variates (gradient-level states) | typically larger (e.g., SCAFFOLD uses in our comm accounting) | Corrects first-order client drift under non-IID via control variates; operates at gradient level, not metric level |
| Naive second-order FL (Local Sophia/SOAP/Muon + FedAvg agg.) | only; each client maintains local preconditioner state but does not synchronize it | per round | Fails under non-IID due to preconditioner drift (mismatched curvature-induced geometries) |
| FedPAC (ours) | + preconditioner state (geometry / metric) : server aggregates and broadcasts a global reference (Alignment); local steps are corrected using a global preconditioned direction (Correction) | (e.g., for Muon/Sophia, for SOAP; light variants use low-rank upload such as – ) | Targets preconditioner drift directly by synchronizing the metric (Alignment) and suppressing long-term drift (Correction) |
Federated Learning
Federated learning trains shared models across data holders without requiring them to pool their raw data.
See all 923 papers