elements are combined in the reduction.
In our GPU implementation, we map each utterance in the minibatch to a CUDA thread block .
Since there are no dependencies between the elements of a column, all of them can be computed in
parallel by the threads in a threadblock. There are dependencies between columns, since the column
corresponding to time-step t+ 1cannot be computed before the column corresponding to time-step
t. The reverse happens when computing the matrix, when column corresponding to time-step
tcannot be computed before the column corresponding to time-step t+ 1. Thus, in both cases,
columns are processed sequentially by the thread block.
Mapping the forward and backward passes to corresponding CUDA kernels is straightforward since
there are no data dependencies between elements of a column. The kernel that does the backward
pass also computes the gradient. However, since the gradients must be summed up based on the label
27
IIIIATCIIIIIGGGGGGGG
G1234T-3T-2T-1T
GGGGATCGGGGGIIIIIIII
I↵BBBBBBBBFigure 9: Forward and backward pass for GPU implementation of CTC. Gray circles contain valid values,
We show that an end-to-end deep learning approach can be used to recognize
either English or Mandarin Chinese speech--two vastly different languages.
Because it replaces entire pipelines of hand-engineered components with neural
networks, end-to-end learning allows us to handle a diverse variety of speech
including noisy environments, accents and different languages. Key to our
approach is our application of HPC techniques, resulting in a 7x speedup over
our previous system. Because of this efficiency, experiments that previously
took weeks now run in days. This enables us to iterate more quickly to identify
superior architectures and algorithms. As a result, in several cases, our
system is competitive with the transcription of human workers when benchmarked
on standard datasets. Finally, using a technique called Batch Dispatch with
GPUs in the data center, we show that our system can be inexpensively deployed
in an online setting, delivering low latency when serving users at scale.
Dario Amodei Rishita Anubhai Eric Battenberg Carl Case Jared Casper Bryan Catanzaro Jingdong Chen Mike Chrzanowski Adam Coates Greg Diamos Erich Elsen Jesse Engel Linxi Fan Christopher Fougner Tony Han Awni Hannun Billy Jun Patrick LeGresley Libby Lin Sharan Narang Andrew Ng Sherjil Ozair Ryan Prenger Jonathan Raiman Sanjeev Satheesh David Seetapun Shubho Sengupta Yi Wang Zhiqian Wang Chong Wang Bo Xiao Dani Yogatama Jun Zhan Zhenyao Zhu