Federated Learning architecture

IBM Federated Learning has two main components: the aggregator and the remote training parties. 

Aggregator

The aggregator is a model fusion processor. The admin manages the aggregator.

The aggregator runs the following tasks:

  • Runs as a platform service in regions Dallas, Frankfurt, London, or Tokyo.
  • Starts with a Federated Learning experiment.

Party

A party is a user that provides model input to the Federated Learning experiment aggregator. The party can be:

  • on any system that can run the Watson Machine Learning Python client and compatible with Watson Machine Learning frameworks.

    Note:

    The system does not have to be specifically Cloud Pak for Data. For a list of system requirements, see Set up your system.

  • running on the system in any geographical location. You are recommended to locate each party in the same region where the data is to avoid data extraction out of different regions.

This illustration shows the architecture of IBM Federated Learning.

A Remote Training System is used to authenticate the party's identity to the aggregator during training.

Illustration of the Federated Learning architecture

User workflow

  1. The data scientist:
    1. Identifies the data sources.
    2. Creates an initial "untrained" model.
    3. Creates a data handler file.
      These tasks might overlap with a training party entity.
  2. A party connects to the aggregator on their system, which can be remote.
  3. An admin controls the Federated Learning experiment by:
    1. Configuring the experiment to accommodate remote parties.
    2. Starting the aggregator.

This illustration shows the actions that are associated with each role in the Federated Learning process.

Illustration of the Federated Learning group workflow process

Permissions for Watson Studio roles in Federated Learning

The viewer, editor, and admin roles in a Watson Studio project have different permissions for actions they can do in a Federated Learning experiment.

  • Viewer:
    • View Federated Learning experiments.
    • Participate in training by running the party connector script if they are added to the list of allowed users in the experiment's Remote Training System.
  • Editor:
    • All the viewer permissions.
    • Create, edit, and delete Remote Training Systems.
    • Create, edit, delete, and re-run Federated Learning experiments.
    • Save trained model as a project asset.
  • Admin:
    • All the editor permissions.
    • Add, remove and modify users in the Watson Studio project containing the Federated Learning experiment.

Parent topic: Get started