FedProx: Limiting Client Drift
Intuition
On non-IID data, a client that trains for many local steps runs off towards its own optimum, and averaging such drifted models works poorly. FedProx adds a spring that pulls each local model back towards the global model.
Precise explanation (Li et al., 2018)
Local objective for client k:
where is the current global model and the local loss (here MSE). Gradient:
- μ = 0 recovers FedAvg's local training.
- Large μ keeps near (less drift, slower local progress). For linear regression the minimiser of interpolates between the local least-squares solution (μ → 0) and the global model (μ → ∞).
Worked example
One feature, X = [[1]], y = [4], w^t = 0. Minimiser of is : μ = 0 → 4, μ = 2 → 2, μ = 1000 → ≈ 0.008.
Common mistakes
- Wrong sign of the proximal gradient.
- Using the initial local model instead of the global model as the anchor (they are equal at step 0 but the anchor must stay fixed).
- Applying the proximal term on the server.
Why this matters
FedProx is a standard baseline for heterogeneous federated settings.
References
- Federated Optimization in Heterogeneous Networks — Tian Li et al. (
S030) - Advances and Open Problems in Federated Learning — Peter Kairouz, H. Brendan McMahan et al. (
S032)