• 沒有找到結果。

第三章 加權有限狀態機之語音辨識分析

3.2 語音系統中的有限狀態機

3.2.2 發音詞典

圖 3 6: 聲學模型的有限狀態機

各別的隱藏式馬可夫模型皆建立完成後,以聯集演算法將所有獨立的有限狀 態機聯合成一個單一的有限狀態機,並在每個終止狀態新增加一條路徑,回到初 始狀態,如此即完成聲學模型的有限狀態機。

Juicer 辨識器的聲學模型分數與語言模型分數為分開計算,並且 HMM 分數 獨立計算之,因此 Juicer 聲學模型的有限狀態機以前後相關(context-dependent) 的 WFST 表示,而非 HMM 模型。本研究採用與前後文無關的單音節模型,僅 以單一狀態表示。

0

Phone1:Phone1

Phone2:Phone2

PhoneN:PhoneN

….

圖 3 7: 聲學模型的 WFST

3.2.2 發音詞典

發音詞典為聲學模型與語言模型之間的橋樑,將聲學模型輸出的聲音序列組 合成有意義的詞彙,而每個詞彙對應至 HMM 序列。

40

我們藉由線性方式建立出線性詞典,線性詞典可以建立出每個詞彙的有限狀 態機,詞彙的輸入為一串聲音序列,而此詞彙可以放置於此有限狀態機的任何轉 移上的輸出,其餘的輸出為空轉移。

樹狀詞典,以樹狀架構來建立詞彙的有限狀態機,詞典中若有詞彙彼此字首 相同,則可以共用同一字首結構,因此使詞典的空間縮小。

0 jin:ε 1 tian:今天 2

圖 3 8: 線性詞典有限狀態機

jin:ε

tian:今天

ri:今日

0 1

2

3

圖 3 9: 樹狀詞典有限狀態機

建立發音詞典的有限狀態機,方法與聲學模型的有限狀態機雷同,首先,建 立各個詞彙的有限狀態機,初始狀態皆由空轉移聯集而成,聯集成一個有限狀態 機,並且各個終止狀態連一條空轉移回至初始狀態。本研究的聲學模型並未加入 聲調資訊,因此在面對音節相同的詞彙時,發音詞典會在序列的末端加上輔助符 號 (auxiliary symbol) 來 區 別 詞 彙 的 差 異 , 用 以 進 行 確 定 性 演 算 法 (determinimization)。

41

圖 3 10:發音詞典的範例

3.2.3 語言模型

本研究將 n-gram 語言模型的 ARPA 格式轉換為有限狀態機,藉由有限狀態 機來表達詞與詞之間相連的機率,其中後撤平滑化可以以空轉移來描述。

WFST 補回同義詞的方式,本研究使用取代演算法,將欲取代的轉移由一個 小 WFST 取代之,其中小 WFST 為欲取代與被取代的轉移,轉移上的字元彼此 為同義詞,且加權值相同,即為這組同義詞享有相同的語言模型分數;細說取代 的方式為,被取代的轉移由狀態 s 開始至狀態 d,欲用 WFST A 取代,狀態 s 會 以空轉移連接至 A 的初始狀態,並且 F 的終止狀態會同樣以空轉移連接至狀態 d。

圖為一 bi-gram 的有限狀態機,其中狀態二的作用為,當沒有有效的輸入時,

會藉由空轉移走至狀態二,並且附上後撤分數,而狀態二走至其他狀態所附上的 分數,即為經由後撤後的 uni-gram 的 n-gram 分數;其餘的狀態,接有兩種轉移,

一種是輸入為有效詞的轉移,另一種是沒有符合輸入詞的轉移,即為空轉移,因 此藉由空轉移來做後撤,後撤會使詞串對應至非唯一的路徑,如此一來,不同的

42

其中本研究使用的辨識器為 Idiap Research Institute 所開發的 Weighted Finite State Transducer Decoder – Juicer[15]。處理 WFST 相關演算法則使用 Google Research and NYU's Courant Institute 發展 的 OpenFst library[16]進行。

相關文件