def mlp_discriminator(in_signal, non_linearity=tf.nn.relu, reuse=False, scope=None, b_norm=True, dropout_prob=None):
    ' used in nips submission.\n    '
    encoder_args = {'n_filters': [64, 128, 256, 256, 512], 'filter_sizes': [1, 1, 1, 1, 1], 'strides': [1, 1, 1, 1, 1]}
    encoder_args['reuse'] = reuse
    encoder_args['scope'] = scope
    encoder_args['non_linearity'] = non_linearity
    encoder_args['dropout_prob'] = dropout_prob
    encoder_args['b_norm'] = b_norm
    layer = encoder_with_convs_and_symmetry(in_signal, **encoder_args)
    name = 'decoding_logits'
    scope_e = expand_scope_by_name(scope, name)
    d_logit = decoder_with_fc_only(layer, layer_sizes=[128, 64, 1], b_norm=b_norm, reuse=reuse, scope=scope_e)
    d_prob = tf.nn.sigmoid(d_logit)
    return (d_prob, d_logit)
used in nips submission.
def mlp_discriminator(in_signal, non_linearity=tf.nn.relu, reuse=False, scope=None, b_norm=True, dropout_prob=None):
    ' \n    '
    encoder_args = {'n_filters': [64, 128, 256, 256, 512], 'filter_sizes': [1, 1, 1, 1, 1], 'strides': [1, 1, 1, 1, 1]}
    encoder_args['reuse'] = reuse
    encoder_args['scope'] = scope
    encoder_args['non_linearity'] = non_linearity
    encoder_args['dropout_prob'] = dropout_prob
    encoder_args['b_norm'] = b_norm
    layer = encoder_with_convs_and_symmetry(in_signal, **encoder_args)
    name = 'decoding_logits'
    scope_e = expand_scope_by_name(scope, name)
    d_logit = decoder_with_fc_only(layer, layer_sizes=[128, 64, 1], b_norm=b_norm, reuse=reuse, scope=scope_e)
    d_prob = tf.nn.sigmoid(d_logit)
    return (d_prob, d_logit)