kozistr / Awesome-GANs

Awesome Generative Adversarial Networks with tensorflow
MIT License
761 stars 163 forks source link

Incorrect conjugate function in f-GAN implementation #22

Open weijiaheng opened 4 years ago

weijiaheng commented 4 years ago

Describe the bug In the file "fgan_model.py": (1) Line 209, the conjugate function of Total-Variation in your code is supposed to be the same as the activation function. Since in your implementation, the conjugate function should be f(g(x)) where x is the input. Thus, for Total Variation, f(g(x))=g(x) rather than x; I think it should be: -torch.mean(torch.tanh(x) / 2.) ? (2) The conjugate of Jenson-Shannon is also incorrect? Line159; I think it should be: -torch.mean(x + torch.log(1. + torch.exp(-x))) - torch.log(torch.tensor(2.))? (3) The conjugate of Hellinger is also incorrect? Line175. I think it should be: -torch.mean((1. - torch.exp(x)) / (torch.exp(x)))?