lattice

  1. lattice
    在實際的語音識別系統中,最優路徑不一定與實際字序列匹配,我們一般希望能夠得到得分最靠前的多條候選路徑,即N-best。爲了緊湊地保存候選路徑,我們一般採用lattice(詞圖)來保存識別的候選序列。lattice本質上是一個有向無環圖。圖上的每個節點代表一個詞的結束時間點,每條邊代表一個可能的詞,以及該詞發生的聲學得分和語言模型得分。
    在這裏插入圖片描述
    在生成one-best結果時,只需要從最優結果處回溯,但是爲了生成lattice,我們需要保留更多信息,具體就是生成每一個hist的時候保留多個候選alt,這樣在回溯best hist的時候也訪問alt來生成lattice。可以認爲原始hist是有效信息再節點上的lattice,而上圖中的lattice有效信息都在邊上。在lattice上從左往右的任何一條路徑,就構成一個識別結果,路徑上每條邊的聲學得分相加,再加上路徑對應的語言得分,就是整條路經的得分,通常取得分最大的前N條路徑對應的詞串作爲識別的N-Best結果輸出。上面lattice的生成用的語言模型往往不夠精確,通常還需要在lattice上用更大的語言模型進行rescore。
  2. lattice剪枝
    原始的lattice可能會非常龐大,上圖給出的只是一個很小的lattice,這是我們可以對lattice進行剪枝但是不影響最終的準確率。一種剪枝方法是對lattice進行前向後向打分,計算每條邊的後驗概率,然後刪除後驗概率很低的邊。對上圖進行剪枝後獲得下圖:在這裏插入圖片描述
    相比原圖,上面的lattice簡化了不少,但是最重要的信息並沒有丟失。通過計算後驗概率,我們可以很容易地知道每條邊在整個lattice中的重要性。
    https://www.smwenku.com/a/5b83ca272b71777cb15c1388
  3. lattice操作中的函數
    latgen-faster-mapped:生成lattice
    lattice-scale:對lattice權重縮放。
    lattice-add-penalty:lattice中添加單詞插入懲罰
    lattice-best-path:通過lattice生成one-best路徑,轉錄或者對齊作爲輸出。
    lattice-align-words:轉換lattice,使CompactLattice格式的弧與字詞對應。
    lattice-align-phones:轉換lattices,使CompactLattice格式的弧與音素對應。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章