語音識別粗略步驟整理

語音識別粗略步驟整理

來自專欄 語音識別

1 . 準備聲學模型訓練數據

  • 音素詞典
  • 發音詞典
  • 初次模型訓練數據
  • 準備開發驗證集數據
  • 語音數據增強的方法,借鑒百度Deep speech2中說到的方法進行擴充語料。

2 . 語言模型和解碼需要數據

  • 涵蓋各個領域,超過300G的純文本。
  • 各個垂直領域,每個領域的文本,大小看實際能得到多少為準。

3. 訓練聲學模型

  • 在完成第一步的基礎上,訓練一個初步的聲學模型;
  • 將訓練數據提取進行特徵處理,將文本標註進行處理,生成tensorflow直接可讀取訓練的tfrecord數據。設計聲學模型網路結構,開始訓練聲學模型。
  • 開始正式訓練具有實際應用價值的聲學模型。

4. 訓練語言模型和解碼

  • 在訓練聲學模型的同時可以開始跑語言模型。
  • 語言模型直接用開源的openfst和kaldi里的代碼修改。需要先熟悉fst解碼的理論和kaldi中fst解碼的實現。
  • 修改openfst的源碼,生成fst
  • 修改kaldi的源碼,利用fst完成解碼。

5. 測試

  • 準備測試數據,每個領域10000條;
  • 準備測試其他外部模型的程序;
  • 在訓練的每個階段的自己迭代模型的效果,以及和其他外部模型效果的對比;

可參考開源項目:

Kaldi

目前開源里最全面的開源項目

eesen

從Kaldi項目里剝離出來,支持ctc端到端訓練的項目


推薦閱讀:

TAG:語音識別 | 深度學習書籍 |