I am trying to understand this paper about conditional GAN, it says that extra information y (class labels) is given to the network. However, I cannot understand its usage during training or its benefits. As far as I know, GAN is unsupervised learning, in this case of extra information usage, can we say that the architecture is supervised?
1 Answer
I'm assuming you understand the original gan paper.
So there are 2 distribution at the start - first distribution that the original images follow and a random distribution that the fake images follow.
Discriminator task is to figure out which image came from what distribution, whereas generator is trying to learn the real distribution and make the random distribution similar to the real one.
Now giving image labels as input is like giving extra bit of information about the distribution. This doesn't change the game, it's the same unsupervised one.
There will two consequences of adding this extra bit of information :
- Even the random distribution that the fake images follow will have some pattern. Hence convergence will be faster.
- You can control the output of generator at test time by giving label for image you want to generate.
-
$\begingroup$ Thanks for your answer. I think I understand the original GAN paper, at least had less question marks when I read. Actually, I can make sense of 1st, extra information will make convergence faster. However, I cannot internalize the idea of usage, i.e. if it is not some kind of supervised learning which keeps labels, how can I give the label for image and generate? Is there any resource that you can recommend? $\endgroup$ Jun 24, 2019 at 9:54
-
$\begingroup$ Of course there are lots of resources, I have asked for cGAN for dummies type resource. Thanks again. $\endgroup$ Jun 24, 2019 at 9:56
-
$\begingroup$ I didn't see anything dedicated solely to cgan, but what I'd advice is read more papers on GAN, like pix2pix, cycleGAN etc. Most of them use cgan conditioned on some variable. It'll help you get more understanding of the concept. There is one article that I referenced long back, it has some explanation about cgan. guimperarnau.com/blog/2017/03/… $\endgroup$– ashukidJun 24, 2019 at 15:37