FedKit: Enabling Cross-Platform Federated Learning for Android and iOS

Sichang He,Beilong Tang,Boyan Zhang,Jiaoqi Shao,Xiaomin Ouyang,Daniel Nata Nugraha,Bing Luo
2024-02-16
Abstract:We present FedKit, a federated learning (FL) system tailored for cross-platform FL research on Android and iOS devices. FedKit pipelines cross-platform FL development by enabling model conversion, hardware-accelerated training, and cross-platform model aggregation. Our FL workflow supports flexible machine learning operations (MLOps) in production, facilitating continuous model delivery and training. We have deployed FedKit in a real-world use case for health data analysis on university campuses, demonstrating its effectiveness. FedKit is open-source at
Machine Learning,Networking and Internet Architecture
What problem does this paper attempt to address?
The paper attempts to address the problem of implementing cross-platform Federated Learning (FL) on mobile devices (especially Android and iOS platforms) to facilitate data privacy protection and model training in practical applications. Specifically, the paper focuses on the following challenges: 1. **Model Training and Aggregation on Cross-Platform Devices** (C0): - How to collaboratively train the same model on various smartphones of different users and achieve cross-platform model aggregation. 2. **Control of the FL Process in Production Environments** (C1): - How to customize and update FL algorithms on users' devices to maximize control. 3. **Complexity of Mobile Development Environments** (C2): - How to simplify the process for data scientists to develop models on mobile platforms and reduce the complexity of mobile development environments. To address these issues, the authors propose a system called FEDKIT, which achieves cross-platform Federated Learning through the following methods: - **Model Conversion**: Converting models written in Python to formats compatible with Android (TensorFlow Lite or TFLite) and iOS (Core ML). - **Unified Training API**: Providing a unified API that allows models to be trained on both Android and iOS devices, utilizing GPU and NPU acceleration. - **Cross-Platform Aggregation**: Achieving cross-platform model aggregation through unified parameter representation. - **Flexible MLOps**: Supporting continuous model delivery and training in production environments, allowing researchers to dynamically deploy and manage models. Through these methods, FEDKIT not only addresses the technical challenges of cross-platform Federated Learning but also demonstrates its effectiveness in practical applications, particularly in scenarios such as health data analysis.