Skip to content

Latest commit

 

History

History

fgan

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 
 
 
 
 
 
 

Training Generative Neural Samplers using Variational Divergence Minimization

Loss Function

  • used f-divergences familiy at D/G nets.

Architecture Networks

  • Same as f-GAN paper.
DIFFS f-GAN Paper ME
Weight initializer normal dist HE initializer
z dim 100 128
fc unit D/G[240,1200] D/G[256,1024]
img scaling -1,1 0,1

Normal Distribution Initializer : (µ = 0, σ = D/G(0.005,0.05))
HE Initializer parameters : (factor = 1, FAN_AVG, uniform)

Tensorboard

Name graph
GAN result
KL result
Reverse-KL result
JS result
JS-Weighted result
Squared-hellinger result
Pearson result
Neyman result
Jeffrey result
Total-Variation result

Elapsed time : about 20m with GTX 1060 6GB x 1

Result

Name Global Step 5k Global Step 10k Global Step 20k
f-GAN (GAN) img img img
f-GAN (KL) img img img
f-GAN (Reverse-KL) img img img
f-GAN (JS) img img img
f-GAN (JS-Weighted) img img img
f-GAN (Squared-Hellinger) img img img
f-GAN (Pearson) img img img
f-GAN (Neyman) img img img
f-GAN (Jeffrey) img img img
f-GAN (Total-Variation) img img img

GAN with Reverse-KL divergence seems like model-collapsed. But after 10k steps, it just works well.

To-Do

  • Add f-divergences
    • GAN - done
    • KL - done
    • Reverse-KL - done
    • JS - done
    • JS-Weighted - done
    • Squared-Hellinger - done
    • Pearson χ^2 - done
    • Neyman χ^2 - done
    • Jeffrey - done
    • Total-Variation - done
  • Add α-divergences
    • α-divergence (α < 0, α is not 0)
    • α-divergence (α > 1)