Idle
Global model wg True weighted optimum Colored dots = 5 clients
⚠ Couldn't load the 3D engineThree.js failed to load from the CDN. Check your connection and reload.

FedAvg Client Drift: Federated Model Aggregation

Federated learning trains one shared model across many devices without ever centralizing their data — each round a client downloads the global weights, trains locally on its own private data, and uploads only the updated weights for the server to average. This simulator renders that weight vector as a point on a 3D loss surface: five clients, each holding differently-skewed ("non-IID") data, run local gradient-descent steps that pull their copy of the model toward their own local optimum, then FedAvg's sample-weighted average pulls those drifted copies back into a single global model. Tune the data skew, local epoch count and learning rate to see exactly how client drift emerges and how weighting by sample count changes where the aggregated model ends up.