tf.keras.backend.rnn
Iterates over the time dimension of a tensor.
View aliases
Compat aliases for migration
See
Migration guide for
more details.
`tf.compat.v1.keras.backend.rnn`
tf.keras.backend.rnn(
step_function,
inputs,
initial_states,
go_backwards=False,
mask=None,
constants=None,
unroll=False,
input_length=None,
time_major=False,
zero_output_for_mask=False,
return_all_outputs=True
)
Args |
step_function
|
RNN step function.
Args;
input; Tensor with shape (samples, ...) (no time dimension),
representing input for the batch of samples at a certain
time step.
states; List of tensors.
Returns;
output; Tensor with shape (samples, output_dim)
(no time dimension).
new_states; List of tensors, same length and shapes
as 'states'. The first state in the list must be the
output tensor at the previous timestep.
|
inputs
|
Tensor of temporal data of shape (samples, time, ...)
(at least 3D), or nested tensors, and each of which has shape
(samples, time, ...) .
|
initial_states
|
Tensor with shape (samples, state_size)
(no time dimension), containing the initial values for the states
used in the step function. In the case that state_size is in a
nested shape, the shape of initial_states will also follow the
nested structure.
|
go_backwards
|
Boolean. If True, do the iteration over the time
dimension in reverse order and return the reversed sequence.
|
mask
|
Binary tensor with shape (samples, time, 1) ,
with a zero for every element that is masked.
|
constants
|
List of constant values passed at each step.
|
unroll
|
Whether to unroll the RNN or to use a symbolic while_loop .
|
input_length
|
An integer or a 1-D Tensor, depending on whether
the time dimension is fixed-length or not. In case of variable
length input, it is used for masking in case there's no mask
specified.
|
time_major
|
Boolean. If true, the inputs and outputs will be in shape
(timesteps, batch, ...) , whereas in the False case, it will be
(batch, timesteps, ...) . Using time_major = True is a bit more
efficient because it avoids transposes at the beginning and end of
the RNN calculation. However, most TensorFlow data is batch-major,
so by default this function accepts input and emits output in
batch-major form.
|
zero_output_for_mask
|
Boolean. If True, the output for masked timestep
will be zeros, whereas in the False case, output from previous
timestep is returned.
|
return_all_outputs
|
Boolean. If True, return the recurrent outputs for
all timesteps in the sequence. If False, only return the output for
the last timestep (which consumes less memory).
|
Returns |
A tuple, (last_output, outputs, new_states) .
last_output: the latest output of the rnn, of shape (samples, ...)
outputs:
- If `return_all_outputs=True`: a tensor with shape
`(samples, time, ...)` where each entry `outputs[s, t]` is the
output of the step function at time `t` for sample `s`
- Else, a tensor equal to `last_output` with shape
`(samples, 1, ...)`
new_states: list of tensors, latest states returned by
the step function, of shape (samples, ...) .
|
Raises |
ValueError
|
if input dimension is less than 3.
|
ValueError
|
if unroll is True but input timestep is not a fixed
number.
|
ValueError
|
if mask is provided (not None ) but states is not
provided (len(states) == 0).
|
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. Some content is licensed under the numpy license.
Last updated 2023-10-06 UTC.
[null,null,["Last updated 2023-10-06 UTC."],[],[]]