tf.contrib.gan.infogan_model(
generator_fn,
discriminator_fn,
real_data,
unstructured_generator_inputs,
structured_generator_inputs,
generator_scope='Generator',
discriminator_scope='Discriminator'
)
Defined in tensorflow/contrib/gan/python/train.py
.
Returns an InfoGAN model outputs and variables.
See https://arxiv.org/abs/1606.03657 for more details.
Args:
generator_fn
: A python lambda that takes a list of Tensors as inputs and returns the outputs of the GAN generator.discriminator_fn
: A python lambda that takesreal_data
/generated data
andgenerator_inputs
. Outputs a 2-tuple of (logits, distribution_list).logits
are in the range [-inf, inf], anddistribution_list
is a list of Tensorflow distributions representing the predicted noise distribution of the ith structure noise.real_data
: A Tensor representing the real data.unstructured_generator_inputs
: A list of Tensors to the generator. These tensors represent the unstructured noise or conditioning.structured_generator_inputs
: A list of Tensors to the generator. These tensors must have high mutual information with the recognizer.generator_scope
: Optional generator variable scope. Useful if you want to reuse a subgraph that has already been created.discriminator_scope
: Optional discriminator variable scope. Useful if you want to reuse a subgraph that has already been created.
Returns:
An InfoGANModel namedtuple.
Raises:
ValueError
: If the generator outputs a Tensor that isn't the same shape asreal_data
.ValueError
: If the discriminator output is malformed.