Calculates the full beams from the per-step ids and parent beam ids.
tf.contrib.seq2seq.gather_tree(
step_ids, parent_ids, max_sequence_lengths, end_token, name=None
)
On CPU, if an out of bound parent id is found, an error is returned. On GPU, if an out of bound parent id is found, a -1 is stored in the corresponding output value and the execution for that beam returns early.
For a given beam, past the time step containing the first decoded end_token
all values are filled in with end_token.
Args | |
|---|---|
step_ids
|
A Tensor. Must be one of the following types: int32.
[max_time, batch_size, beam_width].
|
parent_ids
|
A Tensor. Must have the same type as step_ids.
[max_time, batch_size, beam_width].
|
max_sequence_lengths
|
A Tensor of type int32. [batch_size].
|
end_token
|
A Tensor. Must have the same type as step_ids. [].
|
name
|
A name for the operation (optional). |
Returns | |
|---|---|
A Tensor. Has the same type as step_ids.
[max_time, batch_size, beam_width].
|