GRUCell
classkeras.layers.GRUCell(
units,
activation="tanh",
recurrent_activation="sigmoid",
use_bias=True,
kernel_initializer="glorot_uniform",
recurrent_initializer="orthogonal",
bias_initializer="zeros",
kernel_regularizer=None,
recurrent_regularizer=None,
bias_regularizer=None,
kernel_constraint=None,
recurrent_constraint=None,
bias_constraint=None,
dropout=0.0,
recurrent_dropout=0.0,
reset_after=True,
seed=None,
**kwargs
)
Cell class for the GRU layer.
This class processes one step within the whole time sequence input, whereas
keras.layer.GRU
processes the whole sequence.
Arguments
tanh
). If you pass None, no activation is applied
(ie. "linear" activation: a(x) = x
).sigmoid
). If you pass None
, no activation is
applied (ie. "linear" activation: a(x) = x
).True
), whether the layer
should use a bias vector.kernel
weights matrix,
used for the linear transformation of the inputs. Default:
"glorot_uniform"
.recurrent_kernel
weights matrix, used for the linear transformation
of the recurrent state. Default: "orthogonal"
."zeros"
.kernel
weights
matrix. Default: None
.recurrent_kernel
weights matrix. Default: None
.None
.kernel
weights
matrix. Default: None
.recurrent_kernel
weights matrix. Default: None
.None
.Call arguments
(batch, features)
.(batch, units)
, which is the state
from the previous time step.dropout
or
recurrent_dropout
is used.Example
>>> inputs = np.random.random((32, 10, 8))
>>> rnn = keras.layers.RNN(keras.layers.GRUCell(4))
>>> output = rnn(inputs)
>>> output.shape
(32, 4)
>>> rnn = keras.layers.RNN(
... keras.layers.GRUCell(4),
... return_sequences=True,
... return_state=True)
>>> whole_sequence_output, final_state = rnn(inputs)
>>> whole_sequence_output.shape
(32, 10, 4)
>>> final_state.shape
(32, 4)