garage.tf.models.gru module

GRU in TensorFlow.

gru(name, gru_cell, all_input_var, step_input_var, step_hidden_var, output_nonlinearity_layer, hidden_state_init=<tensorflow.python.ops.init_ops_v2.Zeros object>, hidden_state_init_trainable=False)[source]

Gated Recurrent Unit (GRU).

Parameters:
  • name (str) – Name of the variable scope.
  • gru_cell (tf.keras.layers.Layer) – GRU cell used to generate outputs.
  • all_input_var (tf.Tensor) – Place holder for entire time-series inputs, with shape \((N, T, S^*)\).
  • step_input_var (tf.Tensor) – Place holder for step inputs, with shape \((N, S^*)\).
  • step_hidden_var (tf.Tensor) – Place holder for step hidden state, with shape \((N, H)\).
  • output_nonlinearity_layer (callable) – Activation function for output dense layer. It should return a tf.Tensor. Set it to None to maintain a linear activation.
  • hidden_state_init (callable) – Initializer function for the initial hidden state. The functino should return a tf.Tensor.
  • hidden_state_init_trainable (bool) – Bool for whether the initial hidden state is trainable.
Returns:

Entire time-series outputs, with shape \((N, T, S^*)\). tf.Tensor: Step output, with shape \((N, S^*)\). tf.Tensor: Step hidden state, with shape \((N, H)\) tf.Tensor: Initial hidden state, with shape \((H, )\)

Return type:

tf.Tensor