class_docstr: Refer to [Learning Natural Language Inference with LSTM]
    (https://www.aclweb.org/anthology/N16-1170)
    wrap `with tf.variable_scope(name, reuse=tf.AUTO_REUSE):`
  Input shape: (Batch size, steps, features)
  Output shape: (Batch size, steps, features)
class_docstr_tok: ["Refer","to","[","Learning","Natural","Language","Inference","with","LSTM","]","(","https",":","\/\/www.aclweb.org\/anthology\/N16-1170",")","wrap","`","with","tf.variable_scope","(","name",",","reuse=tf.AUTO_REUSE",")",":","`","Input","shape",":","(","Batch","size",",","steps",",","features",")","Output","shape",":","(","Batch","size",",","steps",",","features",")"]
code: def __init__(self, config, **kwargs):
      super().__init__(**kwargs)
      logging.info("Initialize MatchAttention {}...".format(self.name))
      self.fc_num_units = config["model"]["net"]["structure"][
          "fc_num_units"
      ]
      self.middle_layer = tf.keras.layers.Dense(
          self.fc_num_units, activation="tanh"
      )
      self.attn = tf.keras.layers.Dense(1)
  
file_path: delta/delta/layers/attention.py
imports: from absl import logging
  import delta.compat
  from delta.layers.base_layer import Layer
label_desc: Use image node_id 1 to create a new MatchAttention object from inherited base classes: Layer with example: obj = MatchAttention(config)