Ejemplo n.º 1
0
def adversary(embedded, inputs, hparams, name, reuse=False):
    with tf.variable_scope(name, reuse=reuse):
        h0, i0 = common_layers.pad_to_same_length(embedded,
                                                  inputs,
                                                  final_length_divisible_by=16)
        h0 = tf.concat([h0, tf.expand_dims(i0, axis=2)], axis=-1)
        h0 = tf.layers.dense(h0, hparams.hidden_size, name="io")
        h1 = transformer_vae.compress(h0, None, False, hparams, "compress1")
        h2 = transformer_vae.compress(h1, None, False, hparams, "compress2")
        res_dense = tf.reduce_mean(h2, axis=[1, 2])
        res_single = tf.squeeze(tf.layers.dense(res_dense, 1), axis=-1)
        return tf.nn.sigmoid(res_single)
Ejemplo n.º 2
0
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"))
Ejemplo n.º 3
0
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"))
Ejemplo n.º 4
0
  def encode(self, inputs, target_space, hparams):
    """Add two layers strided convolutions ontop of encode."""
    hparams.num_compress_steps = 2
    compressed_inputs = transformer_vae.compress(inputs, c=None, is_2d=True,
                                                 hparams=hparams,
                                                 name="convolutions")

    return super(TransformerSketch, self).encode(
        compressed_inputs, target_space, hparams)
Ejemplo n.º 5
0
  def encode(self, inputs, target_space, hparams):
    """Add two layers strided convolutions ontop of encode."""
    inputs = common_layers.conv_block(
        inputs,
        hparams.hidden_size, [((1, 1), (3, 3))],
        first_relu=False,
        padding="SAME",
        force2d=True,
        name="small_image_conv")

    hparams.num_compress_steps = 2
    compressed_inputs = transformer_vae.compress(inputs, is_2d=True,
                                                 hparams=hparams,
                                                 name="convolutions")

    return super(TransformerSketch, self).encode(
        compressed_inputs, target_space, hparams)
Ejemplo n.º 6
0
    def encode(self, inputs, target_space, hparams):
        """Add two layers strided convolutions ontop of encode."""
        inputs = common_layers.conv_block(inputs,
                                          hparams.hidden_size,
                                          [((1, 1), (3, 3))],
                                          first_relu=False,
                                          padding="SAME",
                                          force2d=True,
                                          name="small_image_conv")

        hparams.num_compress_steps = 2
        compressed_inputs = transformer_vae.compress(inputs,
                                                     is_2d=True,
                                                     hparams=hparams,
                                                     name="convolutions")

        return super(TransformerSketch, self).encode(compressed_inputs,
                                                     target_space, hparams)