tf.contrib.seq2seq.Decoder
An RNN Decoder abstract interface object.
Concepts used by this interface:
-
inputs: (structure of) tensors and TensorArrays that is passed as input to the RNNCell composing the decoder, at each time step. -
state: (structure of) tensors and TensorArrays that is passed to the RNNCell instance as the state. -
finished: boolean tensor telling whether each sequence in the batch is finished. -
outputs: Instance of BasicDecoderOutput. Result of the decoding, at each time step.
| Attributes | |
|---|---|
batch_size | The batch size of input values. |
output_dtype | A (possibly nested tuple of...) dtype[s]. |
output_size | A (possibly nested tuple of...) integer[s] or TensorShape object[s]. |
tracks_own_finished | Describes whether the Decoder keeps track of finished states. Most decoders will emit a true/false Some decoders, however, shuffle batches / beams between time steps and |
Methods
finalize
finalize(
outputs, final_state, sequence_lengths
)
Called after decoding iterations complete.
| Args | |
|---|---|
outputs | RNNCell outputs (possibly nested tuple of) tensor[s] for all time steps. |
final_state | RNNCell final state (possibly nested tuple of) tensor[s] for last time step. |
sequence_lengths | 1-D int32 tensor containing lengths of each sequence. |
| Returns | |
|---|---|
(final_outputs, final_state): final_outputs is an object containing the final decoder output, final_state is a (structure of) state tensors and TensorArrays. |
initialize
@abc.abstractmethod
initialize(
name=None
)
Called before any decoding iterations.
This methods must compute initial input values and initial state.
| Args | |
|---|---|
name | Name scope for any created operations. |
| Returns | |
|---|---|
(finished, initial_inputs, initial_state): initial values of 'finished' flags, inputs and state. |
step
@abc.abstractmethod
step(
time, inputs, state, name=None
)
Called per step of decoding (but only once for dynamic decoding).
| Args | |
|---|---|
time | Scalar int32 tensor. Current step number. |
inputs | RNNCell input (possibly nested tuple of) tensor[s] for this time step. |
state | RNNCell state (possibly nested tuple of) tensor[s] from previous time step. |
name | Name scope for any created operations. |
| Returns | |
|---|---|
(outputs, next_state, next_inputs, finished): outputs is an object containing the decoder output, next_state is a (structure of) state tensors and TensorArrays, next_inputs is the tensor that should be used as input for the next step, finished is a boolean tensor telling whether the sequence is complete, for each sequence in the batch. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r1.15/api_docs/python/tf/contrib/seq2seq/Decoder