View source on GitHub |
Performs greedy decoding on the logits given in input (best path).
tf.nn.ctc_greedy_decoder( inputs, sequence_length, merge_repeated=True, blank_index=None )
Given a tensor as inputs
, the blank_index
parameter defines the class index of the blank symbol.
If blank_index
is equal to 1:
inf = float("inf") logits = tf.constant([[[ 0., -inf, -inf], [ -2.3, -inf, -0.1]], [[ -inf, -0.5, -inf], [ -inf, -inf, -0.1]], [[ -inf, -inf, -inf], [ -0.1, -inf, -2.3]]]) seq_lens = tf.constant([2, 3]) outputs = tf.nn.ctc_greedy_decoder( logits, seq_lens, blank_index=1)
ctc_beam_search_decoder
, ctc_greedy_decoder
considers blanks as regular elements when computing the probability of a sequence.blank_index
is (num_classes - 1)
, unless overriden.If merge_repeated
is True
, merge repeated classes in output. This means that if consecutive logits' maximum indices are the same, only the first of these is emitted. The sequence A B B * B * B
(where '*' is the blank label) becomes
A B B B
if merge_repeated=True
.A B B B B
if merge_repeated=False
.Args | |
---|---|
inputs | 3-D float Tensor sized [max_time, batch_size, num_classes] . The logits. |
sequence_length | 1-D int32 vector containing sequence lengths, having size [batch_size] . |
merge_repeated | Boolean. Default: True. |
blank_index | (Optional). Default: num_classes - 1 . Define the class index to use for the blank label. Negative values will start from num_classes, ie, -1 will reproduce the ctc_greedy_decoder behavior of using num_classes - 1 for the blank symbol, which corresponds to the default. |
Returns | |
---|---|
A tuple (decoded, neg_sum_logits) where | |
decoded | A single-element list. decoded[0] is an SparseTensor containing the decoded outputs s.t.:
|
neg_sum_logits | A float matrix (batch_size x 1) containing, for the sequence found, the negative of the sum of the greatest logit at each timeframe. |
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.9/api_docs/python/tf/nn/ctc_greedy_decoder