code: def mlp(feature, hparams, name="mlp"):
    
    with tf.variable_scope(name, "mlp", values=[feature]):
      num_mlp_layers = hparams.num_mlp_layers
      mlp_size = hparams.mlp_size
      for _ in range(num_mlp_layers):
        feature = common_layers.dense(feature, mlp_size, activation=None)
        utils.collect_named_outputs("norms", "mlp_feature",
                                    tf.norm(feature, axis=-1))
        feature = common_layers.layer_norm(feature)
        feature = tf.nn.relu(feature)
        feature = tf.nn.dropout(feature, keep_prob=1.-hparams.dropout)
      return feature
docs: Multi layer perceptron with dropout and relu activation.