Generative Adversarial Networks in Practice