GAN Genrative Adversial Networks
Network
Training
What is it?
Made by 2 network
one against other
AIM to create realistic data
Generative models
reproduce a probability distribution through a statistical model
the model is unknown
Generator
discriminator
performs a mapping to data space from a prior input variable
root of generator (white noise distribution) random variable
binary classifier that output a single scalar
distinguish true and fake
Learning
we are interested in the generator
At the end we scartiamo questo
competitive (non cooperative) two-player game
Discriminator distinguish true from fake
Generator try to trick discriminator
Converges when it's reached the Nash-Equilibrium between the two
Set up
topologies defined a priori
definition of random source
dimensionality of root of generator
variata and quality of training data influences performance
minimax optimization of the loss function
Generator
Discriminator
data reconstruction from the root
create images
z as input (sampled noise)
low resolution version
up sampling
deconvolution
output image has an increased number of pixel respect the input one
inverse (transposed) convolution
direct convolution
non si considera zero-padding
with zero padding
flattening the input allows to reframe a consistent matrix multiplication
inter pixel padding
fractional striped convolution
feed forward multilayer network
synthesize the input data into a final class two output
tries to fool the discriminator
min max game formulation
zero sum game
min max strategy
gradient based error back propagation
D tries to D[G(z)]=0
G tries to D[G(z)]=1
at end
D has 50% of probability to distinguish fake from true
G is take and use alone