class_docstr: GRU Model
  
  :Citation:
  
      Kyunghyun Cho, Bart van Merrienboer, Caglar Gulcehre, Dzmitry Bahdanau, 
      Fethi Bougares, Holger Schwenk, and Yoshua Bengio. Learning Phrase 
      Representations using RNN Encoder-Decoder for Statistical Machine Translation. 
      arXiv preprint arXiv:1406.1078. 2014.
docstr: Apply a GRU for modeling.
  
  Returns:
      object: The output of GRU section.
docstr_tok: ["Apply","a","GRU","for","modeling",".","Returns",":","object",":","The","output","of","GRU","section","."]
code: def _build_gru(self):
      """Apply a GRU for modeling.
  
      Returns:
          object: The output of GRU section.
      """
      with tf.compat.v1.name_scope("gru"):
          self.mask = self.iterator.mask
          self.sequence_length = tf.reduce_sum(
              input_tensor=self.mask, axis=1
          )
          self.history_embedding = tf.concat(
              [
                  self.item_history_embedding,
                  self.cate_history_embedding,
              ],
              2,
          )
          rnn_outputs, final_state = dynamic_rnn(
              GRUCell(self.hidden_size),
              inputs=self.history_embedding,
              sequence_length=self.sequence_length,
              dtype=tf.float32,
              scope="gru",
          )
          tf.compat.v1.summary.histogram("GRU_outputs", rnn_outputs)
          return final_state
  
file_path: recommenders/recommenders/models/deeprec/models/sequential/gru.py
imports: import tensorflow
  from keras.layers.legacy_rnn.rnn_cell_impl import GRUCell, LSTMCell
  from recommenders.models.deeprec.models.sequential.sequential_base_model import SequentialBaseModel
  from tensorflow.compat.v1.nn import dynamic_rnn
label_desc: Use image node_id 3 for calling the GRUModel obj's underlying member method code with example usage: obj._build_gru() and returns: final_state