def discriminator(x, compress, hparams, name, reuse=None): with tf.variable_scope(name, reuse=reuse): x = tf.stop_gradient(2 * x) - x # Reverse gradient. if compress: x = transformer_vae.compress(x, None, hparams, "compress") else: x = transformer_vae.residual_conv(x, 1, hparams, "compress_rc") y = tf.reduce_mean(x, axis=1) return tf.tanh(tf.layers.dense(y, 1, name="reduce"))
def tgt2inp(x, reuse=False): return transformer_vae.residual_conv(x, 1, hparams, "tgt2inp", reuse)
def inp2tgt(x, reuse=False): return transformer_vae.residual_conv(x, 1, hparams, "inp2tgt", reuse)
def generator(x, hparams, name, reuse=False): with tf.variable_scope(name, reuse=reuse): return transformer_vae.residual_conv(x, 1, 3, hparams, "generator")