This repository contains the code of the following paper:
Real or Not Real, that is the Question
Yuanbo Xiangli*, Yubin Deng*, Bo Dai*, Chen Change Loy, Dahua Lin
https://openreview.net/forum?id=B1lPaCNtPBAbstract: While generative adversarial networks (GAN) have been widely adopted in various topics, in this paper we generalize the standard GAN to a new perspective by treating realness as a random variable that can be estimated from multiple angles. In this generalized framework, referred to as RealnessGAN, the discriminator outputs a distribution as the measure of realness. While RealnessGAN shares similar theoretical guarantees with the standard GAN, it provides more insights on adversarial learning. More importantly, compared to multiple baselines, RealnessGAN provides stronger guidance for the generator, achieving improvements on both synthetic and real-world datasets. Moreover, it enables the basic DCGAN architecture to generate realistic images at 10241024 resolution when trained from scratch.*
Experiments were conducted on two real-world datasets: CelebA and FFHQ; and a toy dataset: Mixture of Gaussians.
- Python 3.6
- Pytorch (Latest from source)
- Either use the aforementioned dataset or prepare your dataset.
- Scripts to run experiments are stored in /scripts/*.sh.
- Edit folder locations in your scripts. Make sure the folders to store LOG and OUTPUT are created.
- Run
./scripts/run_your_scripts.sh
CelebA 256x256 (FID = 23.51)
FFHQ 1024x1024 (FID = 17.18)