語音識別之DNN-HMM

寫在前面

最近做聲紋識別,需要用到語音識別的知識,在此記錄一下。

DNN-HMM步驟:

  • 幀長切分, 提取特徵(MFCC)
  • GMM-HMM進行alignment對齊; 對每一幀進行聚類(音素總數), 獲得每幀屬於各個音素的概率; HMM進行解碼搜索, 獲得每一幀最優音素表示序列
  • DNN-HMM; 每一幀(多幀)作爲DNN輸入, GMM似然值(音素標籤)作爲輸出; 訓練DNN參數, …

GMM-HMM中的HMM

  • 觀察狀態序列: 語音中的每一幀; 詞性標註中的詞串
  • 隱藏狀態序列: 語音每一幀對應的音素; 詞性標註中每個詞對應的詞性標籤
  • 狀態轉移矩陣: 語音中音素之間的轉移概率(數據集計算, GMM-HMM計算??); 詞性標註中詞性之間的轉移概率
    • 發射概率矩陣: 語音中各個音素髮射爲每一幀的概率(GMM似然值, GMM-HMM獲得概率輸入DNN進行反向傳播); 詞性標註中每個詞性發射爲每個詞的概率
      Ref paper

    • HMM學習問題
      給定 λ=(π,A,B)\lambda = (\pi, A, B)
      OtO_t: 幀
      SiS_i: 音素(隱藏狀態), 隱藏狀態序列待求
      aija_{ij}: 音素i,ji,j之間的轉移概率
      bi(Ot)b_{i}(O_t): 音素ii發射爲OtO_t幀的概率
      Baum-Welch算法(EM)計算A,BA, B
      (訓練集上給定音素序列, 可以使用Viterbi算法計算, 進行forced alignment, 然後可以使用EM重複訓練)

    • EM算法求解HMM

force alignment

給定音素序列(phoneme), 根據每一幀的GMM似然值,
GMM-HMM -> DNN-HMM -> DNN-HMM迭代進行強制對齊.

embeded training

除了將詞拆分爲音素訓練(embeded training), 也可以直接使用整個詞(Whole word)進行訓練

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章