Skip to content

Components and Iteration

DLR Federated Learning Ecosystem

The DLR Federated Learning ecosystem you will work on involves two main components: the server and the clients. Communication between these components is crucial, especially for the exchange of model and metadata. An independent component of this setup is the statistics web server, which simply provides model statistics and other useful information.

Server

The server is implemented in the fl-demonstrator package. The server in this architecture is mainly fixed.

Clients

The client-side training is flexible. You have the freedom to create and shape your own client training, tailoring it to your specific needs and objectives. This flexibility allows for a more personalized and efficient approach to Machine learning.

There are three approaches to implement the clients which are increasingly more flexible but also increasingly more complex.

First Approach

Use the fl-demonstrator-mnist package as a client. This package is specifically tailored to train a model based on the popular MNIST dataset. The procedure to set up a test environment with this package is described in the next chapter.

difficulty flexibility
easy low

Second Approach

Use the fl-demonstrator-client package to create your own client. You can use it to train any model you want. It is almost like writing code for traditional machine learning, since the fl-demonstrator-client does most of the "federated" part for you. The procedure to set up a test environment with this package is described in chapter 3.

difficulty flexibility
medium medium

Third Approach

Create your own web server or endpoint and handle all the communication yourself.

difficulty flexibility
high high