struct Gan {
struct Mlp gen;
struct Mlp genEma;
struct Mlp disc;
struct Optimizer optG;
struct Optimizer optD;
struct GanConfig cfg;
struct Rng rng;
struct TensorArena stepArena;
unsigned long steps;
}Fields
averaged generator (a copy of gen when emaDecay is 0)
generator steps taken
Methods
One generator step after cfg.nCritic discriminator steps on 'real' ([m, dataDim]); 'labels' (m class indices) for a conditional GAN, else null.
§
struct GanLosses train(const &Dataset data, unsigned long epochs, unsigned long batchSize)source · definitionEpochs over a dataset in shuffled batches (labels taken from the dataset when the GAN is conditional). Returns the last step's losses.
n generated rows from the averaged generator (heap tensor, caller frees); 'labels' as above.
D's raw score for rows (higher = more real).
Parameterized (module.h): G's and D's parameters; the state adds the averaged generator (and a Dcgan's buffers).
= drop()