Skip to content
FedLab
Sign in

The Federated Setting: Clients, Server, and Rounds

The anatomy of an FL system and the training loop.

Figure 3 · Learning together, keeping data local
Coordinating server

Holds the shared model

Hospital ARecords stay here
Hospital BRecords stay here
Hospital CRecords stay here

1/4 · Share the global model

A conceptual server-coordinated FL round. Model updates travel; raw training records do not.

Federated learning (FL) trains a shared machine-learning model without gathering everyone’s raw data in one place. Instead, training happens where the data lives — on phones, in hospitals, or inside companies — and model updates are sent back to a coordinating server.

For example, hospitals can work together on a diagnostic model while keeping patient records local. This is useful when data is sensitive, too large to move, or restricted from being shared. Keeping raw data local does not, by itself, guarantee privacy.

A federated learning system has two kinds of participants. Clients are the data owners — smartphones, laptops, hospital servers, bank branches. A coordinating server orchestrates training without ever seeing the raw data.

Training proceeds in rounds. In each round: (1) the server selects a subset of available clients, (2) the server sends the current global model to those clients, (3) each client trains the model on its local data for a few steps, (4) clients send back only the updated model parameters (or the change in parameters), and (5) the server aggregates the updates into a new global model. This loop repeats until the model converges.

Two important flavors of the setting are worth distinguishing now. Cross-device FL involves a very large number of unreliable clients (millions of phones, most offline at any moment), each with a small dataset. Cross-silo FL involves a small number of reliable, powerful clients (a handful of hospitals), each with a substantial dataset. The algorithms and systems design differ significantly between the two.

Key vocabulary for the rest of the course: participation rate (fraction of clients in a round), local epochs (how long a client trains before sending updates), and aggregation (how the server combines client updates).