  The transducer architecture is becoming increasingly popular in the field of
speech recognition, because it is naturally streaming as well as high in
accuracy. One of the drawbacks of transducer is that it is difficult to decode
in a fast and parallel way due to an unconstrained number of symbols that can
be emitted per time step. In this work, we introduce a constrained version of
transducer loss to learn strictly monotonic alignments between the sequences;
we also improve the standard greedy search and beam search algorithms by
limiting the number of symbols that can be emitted per time step in transducer
decoding, making it more efficient to decode in parallel with batches.
Furthermore, we propose an finite state automaton-based (FSA) parallel beam
search algorithm that can run with graphs on GPU efficiently. The experiment
results show that we achieve slight word error rate (WER) improvement as well
as significant speedup in decoding. Our work is open-sourced and publicly
available\footnote{https://github.com/k2-fsa/icefall}.
