FLAIR – Federated Learning Extension for Very Efficient Deep Learning in IoT
Idea and relation to VEDLIoT
Federated Learning (FL) paradigm allows a collaborative AI approach, while preserving the data privacy by decoupling the model training from the need to direct access to the raw training data. FLAIR targets to incorporate an FL framework into the existing VEDLIoT solution, which is expected to increase the uptake of the VEDLIoT solutions for numerous IoT use cases, where privacy is paramount. The validation of this extension will be done through experiments on a real 5G network, where 5G IoT devices built on VEDLIoT hardware with different accelerator options will define a heterogeneous IoT scenario. The challenges of a collaborative AI approach within such a heterogeneous environment will be quantified, and potential solutions will be devised. For the evaluations, a new use case built on speech command recognition, namely voice controlled IoT devices use case will be implemented using the VEDLIoT solutions with FLAIR extension.
FLAIR will contribute to the VEDLIoT ecosystem extension with mainly 3 aspects:
- Task initialization: The server decides the training task, i.e., the target application, and the corresponding data requirements. The server also specifies the hyperparameters of the global model and the training process, e.g., learning rate. Then, the server broadcasts the initialized global model parameters and tasks to selected participants.
- Local model training and update: Based on the global model of the current round, each participant respectively uses its local data and device to update the local model parameters. The goal of the participants is to find optimal parameters that minimize the loss function. The updated local model parameters are subsequently sent to the server.
- Global model aggregation and update: The server aggregates the local model updates from participants and then sends the updated global model parameters back to the data owners.
- Integrating a new ML framework within the VEDLIoT solution, and developing a use case that is built on it.
- Implementing a distributed AI solution for IoT devices, addressing its software, hardware and communication aspects.
- Evaluating the benefits of the use of hardware accelerators at both the IoT devices and the edge server.
- Scenarios with device heterogeneity (devices with different hardware capabilities such as ones with GPU accelerators) will be evaluated to assess the challenges such heterogeneity brings to the distributed AI approach targeted.
- FLAIR solution is built on the use of an edge server, which helps and coordinates the IoT devices to collaborate in the development of a common ML model.
- Incorporating the FL functionality into the VEDLIoT solution.
The FLAIR’s software solution will use an FL open-source implementation called Flower. Flower is a novel end-to-end open-source FL framework, supported by a growing community of researchers, engineers, students, professionals, academics, and other enthusiasts. It enables a more seamless transition from experimental simulation to system research on real edge devices, specifically, devices such as Nvidia Jetson are easy to set up. Flower offers a stable, language and ML framework-agnostic implementation of the core components of a FL system, and provides higher-level abstractions to enable researchers to experiment and implement new ideas on top of a reliable stack. It supports TensorFlow, so it will help to incorporate the FLAIR extension to the VEDLIoT solution smoothly. Moreover, Flower allows for rapid transition of existing ML training pipelines into a FL setup to evaluate their convergence properties and training time in a federated setting. Most importantly, Flower provides support for extending FL implementations to mobile and wireless clients, with heterogeneous compute, memory, and network resources.
For the mobile network integration of the FLAIR solution, the project will use a 5G network setup with an edge computing server, which technically consists of four nodes: a mobile terminal (aka. User Equipment-UE), a 5G BS, 5G Core Network (CN), and a MEC server. According to the 5G standard, CN sits between the radio network and external networks, controlling many networking operations, such as AAA. The MEC server hosts edge computing applications, and it has direct communication with the BSs to reduce the application delays. The FLAIR’s 5G network implementation will use open-source software for all the nodes, except the UE which will use a common-off-the-shelf 5G module (i.e., a 5G modem). The open-source software to be used is Open Air Interface or BS and the CN, and the LL-MEC software by MOSAIC5G project. The BS uses an FPGA-based Software Defined Radio (SDR), which allows the use of software for the modulation/demodulation and the processing of radio signals. Such a setup has been used in many of our previous studies.
On top of the FLAIR software solution for FL, the project will implement the Voice controlled IoT devices use case. Here the objective is to classify the speech data collected from a user as one of the possible voice commands. Since the users’ speech data are mostly considered as private information, an FL solution is the only possible privacy-preserving solution. Different IoT devices can collaborate to create a global model without sharing their local data. There are several datasets available for voice commands, such as the one from the TensorFlow Speech Recognition Challenge. Hence, no new data collection will be necessary within the FLAIR project. The FL clients will be assigned the different speakers’ data, which will represent their local data that is not shared with the FL server.
- FL Extension to VEDLIoT solution, both for IoT devices and the edge server.
- Wireless IoT communication (5G) hardware extension design and implementation for the VEDLIoT IoT devices.
- Open source 5G Base Station and CN solution implementation for the communication between the VEDLIoT IoT devices and the edge server.
- An open-source edge server software implementation based on the 5G standard.
- Methodology for bootstrapping such a 5G-based communication system for VEDLIoT-based systems.
- A new use case implementation, specifically Voice controlled IoT Devices use case, employing VEDLIoT solutions such as its hardware and accelerators.