| Data-center Distributed Learning | Cross-Silo Federated Learning | Cross-Device Federated Learning | |
|---|---|---|---|
| Setting | Training a model on a large but “flat” dataset. Clients are compute nodes in a single cluster or data center. | Training a model on siloed data. Clients are different organizations (e.g., medical or financial) or data centers in different geographical regions. | The clients are a very large number of mobile or IoT devices. |
| Data Distribution | Data is centrally stored, so it can be shuffled and balanced across clients. Any client can read any part of the dataset. | Data is generated locally and remains decentralized. Each client stores its own data and cannot read the data of other clients. Data is not independently or identically distributed. | |
| Orchestration | Centrally orchestrated. | A central orchestration server/service organizes the training, but never sees raw data. | |
| Distribution Scale | Typically 1 – 1000 clients. | Typically 2 – 100 clients. | Up to 1010 clients. |
| Client Properties | Clients are reliable and almost always available to participate in computations. Clients may be directly addressed, and can maintain state across computation rounds. | Clients are often unavailable and can only be accessed by random sampling from available devices. For large populations a single client will typically only participate once in a given computation. | |
| Data-center Distributed Learning | Cross-Silo Federated Learning | Cross-Device Federated Learning | |
|---|---|---|---|
| Training a model on a large but “flat” dataset. Clients are compute nodes in a single cluster or data center. | Training a model on siloed data. Clients are different organizations (e.g., medical or financial) or data centers in different geographical regions. | The clients are a very large number of mobile or IoT devices. | |
| Data is centrally stored, so it can be shuffled and balanced across clients. Any client can read any part of the dataset. | Data is generated locally and remains decentralized. Each client stores its own data and cannot read the data of other clients. Data is not independently or identically distributed. | ||
| Centrally orchestrated. | A central orchestration server/service organizes the training, but never sees raw data. | ||
| Typically 1 – 1000 clients. | Typically 2 – 100 clients. | Up to 1010 clients. | |
| Clients are reliable and almost always available to participate in computations. Clients may be directly addressed, and can maintain state across computation rounds. | Clients are often unavailable and can only be accessed by random sampling from available devices. For large populations a single client will typically only participate once in a given computation. | ||
Sharing content requires targeting cookies to be enabled. Please update your cookie preferences to use this feature.