campa.tl.VAEModel

class VAEModel(**kwargs)[source]

VAE with simple Gaussian prior (trainable with KL loss).

Inherits from BaseAEModel.

Model architecture:

  • Encoder: (noise) - conv layers - fc layers - linear layer to latent_dim * 2

  • Latent: split latent_dim in half, re-sample using Gaussian prior

  • Decoder: fc_layers - linear (regularized) layer to num_output_channels

Attributes

default_config

Default config used in every model.

is_adversarial

Model is adversarial if is is conditional and adversarial layers are defined.

is_conditional

Flag set based on num_conditions.

Methods

add_noise(X)

Add noise to X.

create_adversarial_head()

Create adversarial head: reverse_gradient - adversarial_layers - num_conditions.

create_decoder()

Create decoder.

create_encoder()

Create encoder.

create_model()

Create tf.keras.Model.

encode_condition(C)

Apply condition encoder to C.