gpu accelerated gpu accelerated large vocabulary
play

GPU-Accelerated GPU-Accelerated Large Vocabulary Continuous Speech - PowerPoint PPT Presentation

GPU-Accelerated GPU-Accelerated Large Vocabulary Continuous Speech Recognition Large Vocabulary Continuous Speech Recognition for Scalable Distributed Speech Recognition for Scalable Distributed Speech Recognition Jungsuk Kim


  1. GPU-Accelerated GPU-Accelerated � Large Vocabulary Continuous Speech Recognition Large Vocabulary Continuous Speech Recognition � for Scalable Distributed Speech Recognition for Scalable Distributed Speech Recognition Jungsuk ¡Kim ¡ ¡Ian ¡Lane ¡ ¡ Electrical and Computer Engineering Carnegie Mellon University March 20, 2015 @GTC2015 1

  2. Carnegie Mellon University Overview ¡ • Introduc5on ¡ • Background ¡ • Weighted ¡Finite ¡State ¡Transducers ¡in ¡Speech ¡Recogni5on ¡ • Proposed ¡Approach ¡ • GPU-­‑Accelerated ¡scalable ¡DSR ¡ • Evalua5on ¡ • Conclusion ¡ 2

  3. Carnegie Mellon University Introduc5on ¡ • Voice interfaces a core technology for User Interaction • Mobile devices, Smart TVs, In-Vehicle Systems, … • For a captivating User Experience, Voice UI must be: • Robust • Acoustic robustness à à Large Acoustic Models • Linguistics robustness à à Large Vocabulary Recognition • Responsive • Low latency à à Faster than real-time search • Adaptive • User and Task adaptation 3

  4. Carnegie Mellon University Introduc5on ¡ • Large models critical for accurate speech recognition: • Large acoustic models è è Tens of Millions of parameters • Large vocabulary è è Millions of words è Billions of n-gram entries (>= 20GB) • Large language model è • Examples include: Acoustic modeling for telephony [Mass 2014] or Youtube [Bacchiani 2014] • • ~200M parameter Deep Neural Networks Language model rescoring for Voice Search [Schalkwyk 2010] • 1.2M vocabulary, 5-gram LM, 12.7B n-gram entries • 4

  5. Carnegie Mellon University Introduc5on ¡ Speech recognition contains many highly parallel tasks = + Graphic Processing Units ASR engine designed (SIMT, ~3000 cores, <24GB) specifically for GPUs optimized for parallel Large Models computing More Accurate 5

  6. Carnegie Mellon University Introduc5on ¡ • 1 ¡Million ¡ Vocabulary ¡(3-­‑gram) ¡ • 30 ¡Million ¡ parameter ¡ Deep ¡Neural ¡Network ¡ Titan X Tesla K40 Tegra K1 Tegra X1 Maxwell, 3072 cores Kepler, 2880 cores Kepler, 192 cores Maxwell, 256 cores RTF 0.02 0.01 0.17 0.14 xRT 50X 100X 6X 7X 1hour 72s 36s 612s 504s 6

  7. Background ¡ Weighted ¡Finite ¡State ¡Transducers ¡(WFSTs) ¡ in ¡Speech ¡Recogni7on ¡

  8. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s:SPEECH/ w[SPEECH] k:RECOGNIZE/ z ax g n ay 3 5 10 12 13 6 8 w[RECOGNIZE] p ε iy ch r eh ε a s 0 1 2 15 16 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 11 9 14 4 k:WRECK/ w[BEACH] w[WRECK] • “ Recognize speech ” v.s. “ Wreck a nice beach ” .. . • Search is performed in 3 phases. • Phase 0 : Active Set Preparation. • Phase 1 : Acoustic Score Computation. • Phase 2 : WFST Search. 8

  9. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s:SPEECH/ w[SPEECH] k:RECOGNIZE/ ax g n ay z 3 5 12 13 6 8 10 w[RECOGNIZE] p ε ch r eh iy ε a s 0 1 2 15 16 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 9 11 14 4 k:WRECK/ w[BEACH] w[WRECK] • Phase 0: Active Set Preparation • Collect active hypotheses from previous frame. 9

  10. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s:SPEECH/ w[SPEECH] k:RECOGNIZE/ ax g n ay z 3 5 12 13 10 6 8 w[RECOGNIZE] p ε r iy ch eh ε a s 2 15 16 0 1 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 11 4 9 14 k:WRECK/ w[BEACH] w[WRECK] • Phase 1: Acoustic Score Computation • Compute acoustic similarity between given speech and phonetic models using Deep Neural Network 10

  11. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s:SPEECH/ w[SPEECH] k:RECOGNIZE/ ax g n ay z 3 5 10 12 13 6 8 w[RECOGNIZE] p ε iy ch r eh ε a s 0 1 2 15 16 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 9 11 14 4 k:WRECK/ w[BEACH] w[WRECK] • Phase 2: WFST Search • Perform frame synchronous Viterbi beam search on WFST network. • If multiple transitions have same next state s , then the most likely (minimum score) hypothesis is retained (i.e. ¡state ¡12, ¡14, ¡15…) 11

  12. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s:SPEECH/ w[SPEECH] k:RECOGNIZE/ ax g n ay z 3 5 10 12 13 6 8 w[RECOGNIZE] p ε iy ch r eh ε a s 0 1 2 15 16 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 9 11 14 4 k:WRECK/ w[BEACH] w[WRECK] • Iterate these 3 phases until input audio ends. • Phase ¡0: ¡ Ac7ve ¡Set ¡Prepara7on 12

  13. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s:SPEECH/ w[SPEECH] k:RECOGNIZE/ ax g n ay z 3 5 10 12 13 6 8 w[RECOGNIZE] p ε iy ch r eh ε a s 0 1 2 15 16 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 9 11 14 4 k:WRECK/ w[BEACH] w[WRECK] • Phase ¡1: ¡ Acous7c ¡Score ¡Computa7on 13

  14. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s:SPEECH/ w[SPEECH] k:RECOGNIZE/ ax g n ay z 3 5 10 12 13 6 8 w[RECOGNIZE] p ε iy ch r eh ε a s 0 1 2 15 16 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 9 11 14 4 k:WRECK/ w[BEACH] w[WRECK] • Phase ¡2: ¡ WFST ¡Search 14

  15. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s:SPEECH/ w[SPEECH] k:RECOGNIZE/ ax g n ay z 3 5 10 12 13 6 8 w[RECOGNIZE] p ε iy ch r eh ε a s 0 1 2 15 16 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 9 11 14 4 k:WRECK/ w[BEACH] w[WRECK] • Phase ¡0: ¡ Ac7ve ¡Set ¡Prepara7on 15

  16. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s:SPEECH/ w[SPEECH] k:RECOGNIZE/ ax g n ay z 3 5 10 12 13 6 8 w[RECOGNIZE] p ε iy ch r eh ε a s 0 1 2 15 16 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 9 11 14 4 k:WRECK/ w[BEACH] w[WRECK] • Phase ¡1: ¡ Acous7c ¡Score ¡Computa7on 16

  17. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s:SPEECH/ w[SPEECH] k:RECOGNIZE/ ax g n ay z 3 5 10 12 13 6 8 w[RECOGNIZE] p ε iy ch r eh ε a s 0 1 2 15 16 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 9 11 14 4 k:WRECK/ w[BEACH] w[WRECK] • Phase ¡2: ¡ WFST ¡Search 17

  18. Carnegie Mellon University WFST ¡in ¡Speech ¡Recogni5on ¡ s: SPEECH / w[SPEECH] k: RECOGNIZE / ax g n ay z 3 5 10 12 13 6 8 w[RECOGNIZE] p ε iy ch r eh ε a s 0 1 2 15 16 17/0 n:NICE/ w[NICE] ay a:A/w[A] s b:BEACH/ 7 9 11 14 4 k:WRECK/ w[BEACH] w[WRECK] • Recognized result is an output symbol sequence over the best path. • Result: “RECOGNIZE SPEECH” 18

  19. Proposed ¡Approach ¡ GPU-­‑Accelerated ¡Scalable ¡DSR ¡

  20. Carnegie Mellon University Distributed ¡Speech ¡Recogni5on ¡(DSR) ¡ (1)$Extract$features$ (2)$Stack$incoming$ (3)$Conduct$Viterbi$ (0)$Itera1on$control,$ (4)$Send$result$back$ from$ac1ve$audio5 frames$from$ac1ve$ beam$search$over$ over$TCP/IP,$Data5 data$prepara1on,$ collec1on.$ streams$into$stacked$ audio5streams$and$ WFST$and$conduct$ result$handling.$ feature$vector$ compute$likelihoods$$ on5the5fly$rescoring$ Acous+c'Score' Feature'Extrac+on' Graph'Search' Post'Processing' Audio&Stream- Itera+on'Control' Update-hyp.- Computa+on' • Itera7on ¡control ¡ • Acous7c ¡score ¡computa7on ¡ Allocate ¡or ¡deallocate ¡data ¡structures. ¡ Deep ¡Neural ¡Network ¡(Forward ¡PropagaKon). ¡ • • Terminate ¡decoding ¡task. ¡ • • Graph ¡search ¡ • Feature ¡extrac7on ¡ Conduct ¡frame ¡synchronous ¡WFST ¡search. ¡ • Receive ¡audio ¡and ¡extract ¡feature ¡for ¡ End-­‑of-­‑uSerance ¡detecKon. ¡ • • current ¡iteraKon ¡(batch). ¡ • Post ¡processing ¡ Speaker ¡dependent ¡adaptaKon. ¡ • Output ¡(LaUce) ¡processing. ¡ • Sending ¡result ¡back ¡to ¡client. ¡ • ¡ 20

  21. Carnegie Mellon University Producer/Consumer ¡design ¡paOern ¡ Master/Slave ¡paSern. ¡ • Decuple ¡processes ¡that ¡produce ¡and ¡ • consume ¡data ¡at ¡different ¡rates. ¡ Advantages: ¡ ¡ • Enhanced ¡data ¡sharing ¡ • Processes ¡can ¡run ¡in ¡different ¡speeds. ¡ • Buffered ¡communicaKon ¡between ¡ • processes. ¡ ¡ Producer-Consumer multi-threaded model 21

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend