Understanding Generative Adversarial Networks – Naoki Shibuya – Medium