以下將個別介紹臺師大大詞彙連續語音辨識系統採用的特徵擷取、聲學模型、詞 典建立、詞彙樹複製搜尋(Tree-copy Search)以及詞圖搜尋等部分。
(一) 特徵擷取
本 系 統 在 前 端 處 理 中 之 語 音 特 徵 擷 取 方 面 , 使 用 了 異 質 性 線 性 鑑 別 分 析 (Heteroscedastic Linear Discriminative Analysis, HLDA)結合最大相似度線性轉換 (Maximum Likelihood Linear Transformation, MLLT)兩種不同語音特徵參數。而本 論文主要使用異質性線性鑑別分析加上最大相似度線性轉換,獲得 39 維語音特 徵向量,接著再使用倒頻譜平均與變異數正規劃(Cepstral Mean and Variance Normalization, CMVN)加強語音特徵。
(二) 聲學模型
在聲學模型部分,由於是處理中文語料,因此我們分別為聲母建立 INITIAL 模型 以及為韻母建立 FINAL 模型,基本的 INITIAL 模型為 22 種,FINAL 模型為 38 種。因為聲母會受右邊相連的韻母影響其發音特性,所以再將 INITIAL 模型細分 為 112 種,即右相關聯模型(Right-context-dependent Model, RCD Model),最後加 上一個靜音(Silence)模型,共有 151 個聲學模型。其中每個模型的中有 3 到 6 個 狀態(State),而每一個狀態為 1 到 128 個高斯分佈所組成的高斯混合分佈。聲學 模型首先經由最大化相似度估測(Maximum Likelihood Estimation, MLE)訓練而 得,再透過最小化音素錯誤(Minimum Phone Error, MPE)訓練[58]以期望獲得最佳
(三) 詞典建立
中文裡大約有 7000 個單字詞,而藉由合併不同的單字詞可以產生新詞。本系統 考慮了語料中各個字詞的統計特性,以自動化方式產生新的複合詞(Compound Words)。對於語料中任意相鄰的兩個詞,例如,分別計算它們的前向二連(Forward Bigram)機率 與後向二連(Backward Bigram)機率,再由前後向二連機率的幾何平 均,作為詞與詞是否合併的依據。
接著將文字語料從含有一至四字詞約六萬六千個詞的原始詞典進行斷詞,再 利用上述的計算方式,經過數次的迭代和不同的門檻值(Thresholds)設定,產生約 五千餘個二至十字詞的複合詞。最後將這五千餘個新詞加入原始詞典中,得到一 個含有約七萬兩千個詞的新詞典。
(四) 詞彙樹複製搜尋
本系統之大詞彙連續語音辨識方法是採取由左至右 (Left-to-right)、音框同步 (Frame-synchronous)的詞彙樹複製搜尋方法。在詞彙樹中每一個分支(Arc)代表一 個 INITIAL 或 FINAL 的隱藏式馬可夫模型,由根節點(Root)到任一個葉節點(Leaf) 的路徑代表一個詞或一些發音相同的詞,路徑上的分支就是代表這個詞或這些詞 彙使用到的隱藏式馬可夫模型。進一步來說,我們所用的詞彙樹複製搜尋演算 法,在搜尋時每個音框會同時存在數棵詞彙樹複製(Tree Copies),每個詞彙樹則 代表不同的語言模型歷史詞序列(History Word Sequence)。實際上,搜尋時產生的 不完全路徑(Partial Path)如果擁有相同的歷史詞序列會被歸類在同一棵詞彙樹複 製裡,以進行隱藏式馬可夫模型狀態層次(State-level)維特比(Viterbi)動態規劃搜 尋。
在每個音框裡,假如有不完全路徑已到達葉節點時,表示一個完整詞已可被 產生;同時,不同詞彙樹複製間已抵達葉節點的不完全路徑,若具有相同的語言 模型歷史詞序列,則會進行再結合(Recombination),保留較大分數者,並以它們 的歷史詞序列為標註,產生一棵新的詞彙樹複製,或加入到一棵已存在且具有相
同歷史詞序列的詞彙樹複製中。值得注意的是,我們在實作時並不需要真的建立 如此多的詞彙樹複製,僅需建立一棵詞彙樹作為搜尋時路徑展開參考之用即可,
並分別記錄搜尋時存活下來的隱藏式馬可夫模型狀態節點的相關資訊。另一部 分,因為存下來的隱藏式馬可夫模型的狀態節點會隨著音框呈指數倍成長,因此 我們利用光束搜尋(Beam Search)技術,將分數較低的不完全路徑或節點進行剪 裁。
此外,根據每個音框中記錄的資訊,例如:語言模型歷史詞序列、候選詞所 對應的開始與結束的音框及搜尋時聲學模型解碼的分數,來建立詞圖(Word Graph),並在詞圖上使用更高階的語言模型,重新進行一次詞圖動態規劃搜尋 (Word Graph Rescoring),找出最佳的辨識詞序列。在本系統中,詞彙樹複製搜尋 階段是使用二連詞語言模型,而在詞圖搜尋階段是使用三連詞語言模型。
(五) 詞圖搜尋與 M-最佳結果(M-Best)之產生
詞圖為詞彙樹複製搜尋過後所建立的圖,詞圖中的每個分支代表經過裁減所保留 的詞段,每個詞段有各自對應的起始音框和結束音框,並會記錄其聲學分數。由 於詞圖是已經簡化過的,因此我們在語言模型上可使用較複雜的語言模型,例如 三連詞模型、遞迴式類神經網路語言模型或機率式潛藏語意分析模型等。接著將 每個詞段進行維特比搜尋,根據音框資訊、聲學分數、歷史詞序列以及從語言模
圖十八、詞圖搜尋示意圖
型中計算出的分數查找出多條詞序列。最後挑選分數最高的詞序列當作辨識結 果;亦可以輸出分數前 M 高的詞序列進一步做處理,像是藉由鑑別式訓練來找出 字錯誤率最低的詞序列,或利用訓練好的語言模型進行重新排序以得到更準確之 辨識結果。