Developing Vision Applications Based on Edge-Cloud Collaborative Lifelong Learning Sedna: Research on Distributed Multi-task Generative Adversarial Network Architecture and Algorithms
Nobody has claimed this yet.
- Dominant language
- Go
- Stars
- 269
- Forks
- 174
- PR merge metrics
- No merged PRs in 30d
Description
Background:
The KubeEdge-Sedna open-source edge-cloud collaborative lifelong learning paradigm is able to handle inference tasks from edge nodes based on multiple historical tasks in the cloud-side knowledge library. The paradigm addresses the key challenges in edge AI, such as small samples and data heterogeneity, through multi-task learning, knowledge base persistence and updates,.etc. Generative Adversarial Networks (GANs) have been widely used to address small sample and data heterogeneity issues. In recent years, distributed GANs systems have extended and accelerated the training of GANs, and existing distributed GAN systems are designed to train a certain class of discriminators to generate a single class of virtual data. However, in practice, there are applications where multiple classes of discriminators need to be trained simultaneously, such as image transformation and robot inspection. This project proposes to design multi-task based GAN models for edge-cloud collaborative lifelong learning by extending the distributed GAN framework with global generators and local discriminators on the server-side and edge devices, respectively, to train discriminators of multiple classes simultaneously on the edge devices, and to be able to solve the communication and memory occupation problems under the existing distributed GAN training systems.
Output Requirements:
- Distributed multi-task generative adversarial network architecture implementation: based on the existing SGDA architecture (generator on the server and discriminator on the edge), implement the configuration of global generators and global discriminators on the server, and different local generators and local discriminators on different edge nodes;
- Design and implement the server task scheduling algorithm and edge task scheduling algorithm to reduce the overall GAN training time and server memory usage. Requirements: reducing overall training time by at least 10%, reducing server memory usage by at least 15% compared to SGDA architecture and its scheduling algorithm for the same GAN network;
- implement a set of APIs for distributed multi-task generation adversarial network system. Requirements: design useful server-side global generator and global discriminator configuration APIs, design useful edge-side local generator and local discriminator configuration APIs, and design task scheduling algorithm APIs.
Other information:
Recommended Skills: Python Programming; Linux OS
Sedna lifelong-learning introduction https://segmentfault.com/a/1190000040132422/en
Sedna guide https://sedna.readthedocs.io/en/latest/index/guide.html
Sedna lifelong-learning example https://github.com/kubeedge/sedna/tree/main/examples/lifelong_learning/atcii
Sedna lifelong-learning playground: https://www.katacoda.com/kubeedge-sedna/scenarios/lifelong-learning-example
Sedna lifelong-learning proposal https://sedna.readthedocs.io/en/latest/proposals/lifelong-learning.html
How to contribute Sedna https://sedna.readthedocs.io/en/latest/contributing/prepare-environment.html
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with the existing lifelong-learning example in examples/lifelong_learning/atcii and read the Sedna lifelong-learning proposal and guide to understand the SGDA entry points. Done means implementing the multi-task architecture, scheduling APIs, and server and edge configurations, then demonstrating at least 10% lower training time and 15% lower server memory use than SGDA.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux, python
- Domain
- cloud, distributed-systems, machine-learning
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100