InfoGAN
InfoGAN copied to clipboard
the c2(rotation) c3(width) didn't contain in the continuous latent code distribution
Hi Xi Chen, I am reading and debugging you code, find that, the latent code distribution, define in the run_mnist_exp.py: latent_spec = [ (Uniform(62), False), (Categorical(10), True), (Uniform(1, fix_std=True), True), (Uniform(1, fix_std=True), True), ] But, when separating the distributions to continuous and discrete type in regularized_gan.py : self.reg_cont_latent_dist = Product([x for x in self.reg_latent_dist.dists if isinstance(x, Gaussian)]) self.reg_disc_latent_dist = Product([x for x in self.reg_latent_dist.dists if isinstance(x, (Categorical, Bernoulli))])
It turn out only c1(Categorical) is included in the discrete latent code for the regularization during train. The c2-rotation(Uniform) c3-width(Uniform) are not included in the continuous latent code, because they are Uniform instead of Gaussian. So they may not be train.
Please tell me how to train and get the Q(c2,c3|x) --> P(c2,c3|x) in your code.
Yours, TaoStatlit
Uniform is extended from Gaussian. Please look at https://github.com/openai/InfoGAN/blob/master/infogan/misc/distributions.py#L250