Type AbstractRNNCell
Namespace tensorflow.keras.layers
Parent Layer
Interfaces IAbstractRNNCell
Abstract object representing an RNN cell. This is the base class for implementing RNN cells with custom behavior. Every `RNNCell` must have the properties below and implement `call` with
the signature `(output, next_state) = call(input, state)`. Examples:
This definition of cell differs from the definition used in the literature.
In the literature, 'cell' refers to an object with a single scalar output.
This definition refers to a horizontal array of such units. An RNN cell, in the most abstract setting, is anything that has
a state and performs some operation that takes a matrix of inputs.
This operation results in an output matrix with `self.output_size` columns.
If `self.state_size` is an integer, this operation also results in a new
state matrix with `self.state_size` columns. If `self.state_size` is a
(possibly nested tuple of) TensorShape object(s), then it should return a
matching structure of Tensors having shape `[batch_size].concatenate(s)`
for each `s` in `self.batch_size`.
Show Example
class MinimalRNNCell(AbstractRNNCell): def __init__(self, units, **kwargs): self.units = units super(MinimalRNNCell, self).__init__(**kwargs) @property def state_size(self): return self.units def build(self, input_shape): self.kernel = self.add_weight(shape=(input_shape[-1], self.units), initializer='uniform', name='kernel') self.recurrent_kernel = self.add_weight( shape=(self.units, self.units), initializer='uniform', name='recurrent_kernel') self.built = True def call(self, inputs, states): prev_output = states[0] h = K.dot(inputs, self.kernel) output = h + K.dot(prev_output, self.recurrent_kernel) return output, output
Properties
- activity_regularizer
- activity_regularizer_dyn
- built
- dtype
- dtype_dyn
- dynamic
- dynamic_dyn
- inbound_nodes
- inbound_nodes_dyn
- input
- input_dyn
- input_mask
- input_mask_dyn
- input_shape
- input_shape_dyn
- input_spec
- input_spec_dyn
- losses
- losses_dyn
- metrics
- metrics_dyn
- name
- name_dyn
- name_scope
- name_scope_dyn
- non_trainable_variables
- non_trainable_variables_dyn
- non_trainable_weights
- non_trainable_weights_dyn
- outbound_nodes
- outbound_nodes_dyn
- output
- output_dyn
- output_mask
- output_mask_dyn
- output_shape
- output_shape_dyn
- output_size
- output_size_dyn
- PythonObject
- state_size
- state_size_dyn
- stateful
- submodules
- submodules_dyn
- supports_masking
- trainable
- trainable_dyn
- trainable_variables
- trainable_variables_dyn
- trainable_weights
- trainable_weights_dyn
- updates
- updates_dyn
- variables
- variables_dyn
- weights
- weights_dyn
Public properties
PythonFunctionContainer activity_regularizer get; set;
object activity_regularizer_dyn get; set;
bool built get; set;
object dtype get;
object dtype_dyn get;
bool dynamic get;
object dynamic_dyn get;
IList<Node> inbound_nodes get;
object inbound_nodes_dyn get;
IList<object> input get;
object input_dyn get;
object input_mask get;
object input_mask_dyn get;
IList<object> input_shape get;
object input_shape_dyn get;
object input_spec get; set;
object input_spec_dyn get; set;
IList<object> losses get;
object losses_dyn get;
IList<object> metrics get;
object metrics_dyn get;
object name get;
object name_dyn get;
object name_scope get;
object name_scope_dyn get;
IList<object> non_trainable_variables get;
object non_trainable_variables_dyn get;
IList<object> non_trainable_weights get;
object non_trainable_weights_dyn get;
IList<object> outbound_nodes get;
object outbound_nodes_dyn get;
IList<object> output get;
object output_dyn get;
object output_mask get;
object output_mask_dyn get;
object output_shape get;
object output_shape_dyn get;
object output_size get;
Integer or TensorShape: size of outputs produced by this cell.
object output_size_dyn get;
Integer or TensorShape: size of outputs produced by this cell.
object PythonObject get;
object state_size get;
size(s) of state(s) used by this cell. It can be represented by an Integer, a TensorShape or a tuple of Integers
or TensorShapes.
object state_size_dyn get;
size(s) of state(s) used by this cell. It can be represented by an Integer, a TensorShape or a tuple of Integers
or TensorShapes.