Upload
others
View
16
Download
0
Embed Size (px)
Citation preview
Spatial Evolutionary Generative Adversarial Networks
alfagroup.csail.mit.edu
1. Jamal Toutouh
3. Una-May O’Reilly
2. Erik Hemberg
Generative Modeling
A current popular method to learn generative models is to use Generative Adversarial Networks
We have data samples that are drawn from a distribution
Can we learn a generative model that captures that distribution so we can generate new data samples?
Generative Adversarial Network
Discriminator (v)FAKE or REAL
REAL sample data
Noise
Generator (u)Generate FAKE sample data
Loss based on some function
Generative Adversarial Networks (GANs) create generative and discriminative models from data with an adversarial system
Is v correct?
FAKE/REAL
GAN Pathologies
Generator 2
Mode collapse
Generator 1
Difficult to train due to pathologies, e.g. mode and discriminator collapse
Biological Arms Races
• Biological arms races can generate mimicry• Can coevolutionary algorithms help to improve robustness in
GANs? Our prior work solving GAN pathologies with Competitive
Coevolution: Lipizzaner ES GAN training on a theoretical GAN problem [Al-Dujaili, et al,
2018] SGD GAN training with one loss function within a spatial
separated evolving population [Schmiedelechner, et al, 2018] E-GAN [Wang et al, 2018], 3 generator population, 3 loss functions,
only 1 discriminator Question: Will injecting loss function diversity into a spatially separated population
improve generator performance?
Mustangs
A distributed, coevolutionary framework to train GANs with gradient-based optimizers Fast convergence due to
gradient-based steps Robustness due to coevolution Improved convergence due to
hyperparameter evolution Diverse solutions due to
mixture evolution and multiple loss functions
Scalability due to spatial distribution topology
Competitive Coevolution
Discriminator Population
Candidate solutions
Discriminator Population
Candidate solutions
Selection
High-performing
Solutions retained
Selection
High-performing
Solutions retained
Variation• Update
Variation• Update
Variation• Update
Variation• Update
New Discriminator Generation
New Generator Generation
Evaluation
Solutions scored and ranked
according to fitness function
depending on the other population
Evaluation
Solutions scored and ranked
according to fitness function
depending on the other population
Generator Population
Candidate solutions
Generator Population
Candidate solutions
Selection
High-performing
Solutions retained
Selection
High-performing
Solutions retained
00 01 02
10 11 12
20 21 2212
21 u,v22 20
02
Evolve generator mixture weights based on
Frechet Inception Distance (FID)
w, Pu
n*,w*
Neighborhood
Spatial Grid
North
East
South
West Center
N=3x3
n22
Generator Mixture Quality
Mustang – Spatial separation and generator mixtures
vi-1,j
vi,j-1
vi,j
vi,j+1
vi+1,j
ui-1,j
ui,j-1
ui,j
ui,j+1
ui+1,j
i-1,j
i,j-1 i,j i,j+1
i+1,j
Get generators and discriminators
v0
v1
v2
v3
v4
u0
u1
u2
u3
u4
Selection
u0’
u1’
u2’
u3’
u4’
v0’
v1’
v2’
v3’
v4’
Mini-batch training with SGD
u0’
u1 ’
u2’
u3’
u4’
v0’
v1’
v2’
v3’
v4’
Evaluate all trained networks
i,j
Replace center
u0’
u1’
u2’
u3’
u4’
Choose one Loss functionrandomly
v0’
v1’
v2’
v3’
v4’
Mustang – GAN training with SGD and different loss functions
Genome: learning rate, weights and bias
Loss Functions
HEUMSEBCE
ExperimentsEvaluated methods (9h of compute): GAN-BCE: BCE loss function, 1 generator, 1 discriminator E-GAN: 3 loss functions, 3 generators, 1 discriminator Lip-BCE: BCE loss function, 3x3 grid Lip-MSE: MSE loss function, 3x3 grid Lip-HEU: HEU loss function, 3x3 grid Mustangs: 3 loss functions, 3x3 grid
MNIST CelebA
Mustang: Mixture of generators from a spatially separated evolutionary GAN training with SGD and multiple loss functions
MNIST Results
Population improves FID score
More training epochs does not guarantee improved FID
Generator output diversity for MNIST
Mode collapse GAN-BCE, TVD: 0.51 E-GAN, TVD: 0.53 Lip-MSE, TVD: 0.37
Mustangs, TVD: 0.18
Lip-BCE, TVD: 0.17
Lip-HEU, TVD: 0.12 Spatial separation improves generator output diversity
Results CelebA
Mustangs Lip-BCE
Choosing from multiple loss functions does not degrade performance
Summary• Mustang: Evolves a mixture of
generators by a spatially separated evolutionary GAN training with stochastic gradient descent and multiple loss functions
• Empirically showed that GAN training can be improved by boosting diversity
• Enhanced an existing spatial evolutionary GAN training framework by it choosing one of three loss functions
• Released an open source, distributed Python framework with Pytorch that use Docker• https://github.com/mustang-gan
• Future work to investigate scaling, larger populations, diversity and more problems
Description English: Rearing lipizzan horse at 2018 MESAP Trade Fair in Nedelišće, Medjimurje County, CroatiaHrvatski: Propeti lipicanac na Sajmu MESAP 2018. u Nedelišću, Međimurska županija, Hrvatska
Date 2 July 2018
Source Own work
Author Silverije