Skip to content

Conversation

@nailtu30
Copy link

/kind feature
Fixes #336

@kubeedge-bot kubeedge-bot added the kind/feature Categorizes issue or PR as related to a new feature. label Jul 28, 2022
@kubeedge-bot
Copy link
Collaborator

Welcome @nailtu30! It looks like this is your first PR to kubeedge/sedna 🎉

@kubeedge-bot kubeedge-bot added the size/M Denotes a PR that changes 30-99 lines, ignoring generated files. label Jul 28, 2022
@JoeyHwong-gk
Copy link
Contributor

/ping @MooreZheng

@JoeyHwong-gk
Copy link
Contributor

hi @nailtu30 ,you should remove the unnecessary system files, such as .DS_Store

@kubeedge-bot
Copy link
Collaborator

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
To complete the pull request process, please assign sids-b after the PR has been reviewed.
You can assign the PR to them by writing /assign @sids-b in a comment when ready.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

We will explain our ideas on system architecture and learning process.

### System Architecture
As shown in the figure below, EntGAN has a set of execution modules and a set of control modules. The execution module performs GAN training tasks, including local generators and local discriminators on each worker, as well as global generator and global discriminator on the server.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A critical weakpoint of this proposal is that the proposed architecture has not yet consider the integration of Sedna.
Especially what is the relation between the proposed modules and Sedna modules?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the new version, we see an integration, but there are still concerns about motivation.
See: #337 (comment)


Generative adversarial networks(GAN) has been widely used to solve the challenges of small samples and heterogeneous data. In recent years, distributed GAN has expanded and accelerated the training of GAN. The existing distributed GANs aim to train a certain class of discriminators to generate a single kind of fake data. However, in real life, there are applications that need to train many kinds of discriminators at the same time, such as image conversion and robot inspection.

Therefore, we propose an enhanced GAN framework to help sole **multi-task** and **memory usage** problem. We call the framework EntGAN.
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The motivation here is a little bit too abstract. What is the targeting scenario and dataset?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In the new version, dataset is added in the proposal. But the story is still not yet strong enough considering limited edge resources or budgets. See #337 (comment)

We deploy global generator and global discriminator on Global Controller and edge generator and edge discriminator on Local Controller. After updating local dicriminator, we use sedna lifelong learning to again update and enhance its parameter.


### The flows of GAN job
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When edge resource is limited and expensive, leaving local discriminator and generator may not be cost-effective. The story itself is not strong enough. For tackling data heterogeneity, my suggestion is to integrate the proposed GAN to unseen task processing of Sedna lifelong learning, instead of proposing a new scheme.

@MooreZheng
Copy link
Collaborator

The current proposal of GAN itself is fine as a algorithm, e.g., for lifelong learning. But a distributed GAN as a standalone scheme for Sedna like edge-cloud joint inference requires notrivial workloads on the module design.

My suggestion is to make the proposal as two phases. Phase One focuses on pure algorithm GAN on lifelong learning using Ianvs. Phase Two focuses on intergating GAN into Sedna.

@luosiqi
Copy link
Contributor

luosiqi commented Oct 18, 2022

Lack integration solution to Ianvs. In my opinion, the proposed GAN framework should be embeded into the training phase of Ianvs.


In the process of Sedna lifelong learning, there would be a chance to confront unknown tasks, whose data are always heterogeneous small sample. Generate Adversarial Networks(GAN) is the start-of-art generative model and GAN can generate fake data according to the distribution of the real data. Naturally, we try to utilize GAN to handle small sample problem. Self-taught learning is an approach to improve classfication performance using sparse coding to construct higher-level features with the unlabeled data. Hence, we combine GAN and self-taught learning to help Sedna lifelong learning handle unknown tasks.

### Goals
Copy link
Collaborator

@MooreZheng MooreZheng Oct 18, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

See the previous discussion in #337 (comment)

The story is not yet completed

  1. How would we solve the small data problem in lifelong learning
    0) lifelong learning limitation: lifelong learning tackles the small data issue by incrementally training with label data. But labeled data is labor-intensive and its collection is time-consuming.
    1. The proposal reduces the time for data collection. We generate data by GAN instead of real-world data collection.
    2. The proposal reduces the intensive labor. We leveraged self-taught learning to eliminate the labeling job.
  2. it would be much improved with the targeting scenario and dataset added, i.e., semantic segmentation and Cityscape.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The current version does not express the limitation of the current lifelong learning.

  1. The current lifelong learning is designed to tackle small sample problems.
  2. Why do we still need a GAN? GAN cannot generate labeled data so far. Why not just set a camera on a car and collect more data?
    The author might want to consider adding a related story mentioned in https://github.com/kubeedge/sedna/pull/337/files#r997678113.

### GAN Design
We use the networks design by [TOWARDS FASTER AND STABILIZED GAN TRAINING FOR HIGH-FIDELITY FEW-SHOT IMAGE SYNTHESIS](https://openreview.net/forum?id=1Fqg133qRaI). The design is aimed for small training data and pour computing devices. Therefore, it is perfectly suitable for handling unkwnon tasks of Sedna lifelong learning. The network is shown below [GAN Desin](images/EntGAN%20GAN.png).

![](images/EntGAN%20GAN.png)
Copy link
Collaborator

@MooreZheng MooreZheng Oct 18, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The architecture is needed for the proposal. We see that the GAN is now put in the unseen task processing. It would be better to show the overall architecture to let the user know which scheme it belongs (i.e., lifelong learning), not only the unseen task processing component.

See previous comment: #337 (comment)

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Not yet resolved

1. GAN exploits the unknown task sample to generate more fake sample.
2. Self-taught learning unit utilize the fake sample and orginal unknown task sample and its label to train a classifier.
3. A well trained classifier is output.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What are the targeting scenario and dataset?

@MooreZheng
Copy link
Collaborator

MooreZheng commented Oct 25, 2022

The proposal is overall good but

  1. need to be polished to strengthen the motivation
  2. make the scenario clear instead of a framework without any supporting dataset examples

@nailtu30 nailtu30 closed this by deleting the head repository Oct 31, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

kind/feature Categorizes issue or PR as related to a new feature. size/M Denotes a PR that changes 30-99 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

A enhanced GAN Framework is required for Sedna

6 participants