標籤:

如何入門語音識別?

項目中遇到需要語音識別的內容。請問專業人士,有什麼比較實用的書籍可以推薦?最好包括一些經典的演算法實現。謝謝!


首先推薦我的知乎 Live:語音識別技術的前世今生。這是對語音識別技術 30 年來發展的一份綜述,聽完後你就會對語音識別的整體框架有個了解。Live 的幻燈片可以在這裡下載。

在之後的學習過程中,你可以不時地問自己下面的問題,逐步加深理解:

  • 語音識別系統一般由哪些模塊組成?(答案見下圖)各個模塊的作用是什麼?

  • 特徵提取模塊是怎樣保留語音信號中對語音識別有用的信息,抑制無關信息的?
  • 聲學模型是怎樣在語音特徵和音素之間建立映射的?
  • 語言模型是怎樣知道什麼樣的句子「像話」,什麼樣的句子「不像話」的?
  • 解碼器如何在海量的句子中快速地找到比較好的識別結果?
  • 最近幾年興起的神經網路,顛覆了上面框圖中的哪些模塊?是怎麼做到的?

對整體框架有了了解之後,就可以去學習細節了。經典的教科書包括:

  • Xuedong Huang, Alex Acero, Hsiao-wuen Hon, Spoken Language Processing
  • Lawrence Rabiner, Biing-Hwang Juang, Fundamentals of Speech Recognition
  • Dan jurafsky and James H. Martin, Speech and Language Processing

不過這些書都比較老了,只講了「前世」的技術,並沒涉及到「今生」的神經網路。神經網路技術目前仍在飛快的迭代中,所以並不容易找到一本與時俱進的教科書。

另外有兩篇經典論文:

  • L. R. Rabiner, 「A tutorial on hidden Markov models and selected applications in speech recognition,」 Proceedings of the IEEE, vol. 77, no. 2, pp. 257–286, 1989.
  • A. Graves, S. Fern′andez, F. Gomez, and J. Schmidhuber, 「Connectionist temporal classi?cation: Labelling unsegmented sequence data with recurrent neural networks,」 in International Conference on Machine Learning (ICML), ACM, 2006, pp. 369–376.

第一篇講的是「前世」技術中的骨架 HMM,後一篇講的是「今生」技術中的 CTC,當你學到這二者的時候值得一看。

如果你要自己上手搭語音識別系統,可以從 EESEN 這個工具包中的示例出發,慢慢修改。比如 TEDLIUM 那個示例就是不錯的。


推薦閱讀:

誰給講講語音識別中的CTC方法的基本原理?
語音識別kaldi該如何學習?
Language Model 在語音識別方面有哪些應用?
交通銀行機器人是如何做到如此智能的?
李開復在 CMU Sphinx 項目到底是什麼地位?

TAG:語音識別 |