第 3 章 實驗基礎架構及語料庫
3.2 訓練與辨識系統
~ 17 ~
第3章 實驗基礎架構及語料庫
本章將介紹本論文的實驗架構,包括公視新聞語料庫、語音特徵前端處理、
詞典和語言模型的建立、初始聲學模型的訓練、以及語音辨識工具。論文中以最 大相似度估測的結果作為基礎實驗。
3.1 實驗語料
本論文使用的語料為MATBN 電視新聞語料【21】,由中央研究院資訊所口語 小組耗時三年與公共電視台合作錄製完成。每天一個小時的公視晚間新聞深度報 導,收了200 天的電視新聞語料,其中包含 2001 年的新聞 30 小時、2002 年的 146 小時及2003 年的 24 小時。本論文選擇採訪記者語料作為實驗語料,其中包含 25.5 小時的訓練集(training set)共 5774 則,用來訓練聲學模型;1.5 小時的評估集(test set) 共292 則,作辨識評估之用,如表 3.1。
其中訓練集的語料都經由人工切割為一句一句的語音檔,共 34672 句,每一 句都有詞和音素的時間標記(alignment)。
3.2 訓練與辨識系統
本論文的基礎實驗系統可分為三個部份,各由不同工具完成:聲學模型訓練 工具為劍橋大學的HTK【22】;語言模型訓練的工具為史丹佛大學的SRILM【23】;
語音辨識工具則為台大語音實驗室的TTK【24】。
語者性別 訓練集 評估集 語料重疊
人數(人) 時間(秒) 人數(人) 時間(秒) 人數(人)
男性 46001 66 1301 9 9
女性 46007 111 3914 23 13
表 3.1 訓練集與評估集的語料資訊
3.2.1 前端處理 3.2.2 聲學模型設定
~ 18 ~
3.2.1 前端處理
本論文使用梅爾倒頻譜係數(Mel-Frequency Cepstrum Coefficient, MFCC)【25】
作為語音訊號的特徵參數。特徵抽取流程如圖 3.1 所示,將語音資料切割成一連 串部份重疊的音框,每個音框中抽出13 維的梅爾倒頻譜係數特徵,再加上其一階 與二階的時間軸導數(time derivatives)所形成的 39 維聲學特徵向量所組成。其中 13 維的梅爾倒頻譜係數是由 18 個梅爾頻譜濾波器組(filter banks)的輸出經餘弦轉換 求得。同時,為了降低通道效應對語音辨識的影響,在實驗系統中,亦使用倒頻 譜平均消去法(Ceptral Mean Subtraction, CMS)【26】。
3.2.2 聲學模型設定
本 論 文 聲 學 模 型 的 音 素 設 定 使 用 右 相 關 聲 韻 母(Right-Context Dependent INITIAL/FINAL, RCDIF)模型,共包括 22 個聲母(INITAIL)隨右接韻母的起始音素 不同而展開成的112 個右相關聲母模型、38 個韻母(FIANL)模型與一個靜音(Silence) 模型,總共151 個右相關聲韻母音素。詳細模型列表見附錄 A。
聲學模型採用連續密度隱藏式馬可夫模型,共 151 個聲學模型,每個模型包 含進入與離開的 2 個狀態共有 5 個狀態,每個狀態中高斯混合模型則依照該音素 在訓練語料中的多寡,分別由1 至 64 個高斯混合模型構成。詳細音素出現次數及 高斯混合數見附錄A。
分割音框 預強 離散傅利
葉轉換
梅爾三角 濾波
對數能量經離 散餘弦轉換
取一階及 二階導數 語音訊號
梅爾倒頻譜 聲學特徵
18 維 13 維 39 維
圖 3.1 MFCC 特徵抽取流程
3.2.3 詞典建立與語言模型設定 3.2.4 語音辨識工具
~ 19 ~
3.2.3 詞典建立與語言模型設定
詞彙抽取使用中央通訊社(Central News Agency, CAN)在 2001 年與 2002 年所 收集到約1 億 7000 萬字語料作為文字語料。在中文裡約有 7000 個常用單字詞,
新詞可由此7000 個單字詞合併產生。根據字詞在語料中的統計特性,以自動化的 方式產生新的複合詞(compound words)。新增複合詞的自動產方式如下所述:對於 語料中任意相鄰的兩個詞
(
w wi, j)
,可以分別計算它們的前雙連文法(forward bigram)機率P wf(
j |w ,與後雙連文法(backward bigram)機率i)
P w w ,並以前b(
i| j)
後雙連文法(forward and backward bigrams)的機率幾何平均作為
(
w w 是否合併i, j)
的依據。機率幾何平均FB w w
(
i, j)
為:(
i, j)
f(
j| i) (
b i| j)
FB w w = P w w P w w (3.1)
抽取過程中先經由一個含有 1~4 字詞約 68000 個詞的詞典對文字語料斷詞,然後 利用(3.1)的公式,經數次的疊代以及不同的閥值(threshold)設定,產生約 5000 個由 2~10 個詞組成的複合詞,使得最後的語音辨識詞典裡總共有約 72000 個詞。
語言模型使用與詞典建立相同的文字語料,訓練得到詞三連語言模型,訓練 過程中使用了凱氏語言模型平滑技術(Katz language model smoothing)【27】。
3.2.4 語音辨識工具
大字彙連續語音辨識可視為樣式辨認(pattern recognition)與搜尋演算法的結合,
其中樣式辨認的部份是使用訓練語料訓練出的聲學及語言模型做為統計式樣式辨 認的基礎,再經由這些模型去做後端的解碼(decoding)。解碼的程序主要是根據聲 學及語言學的模型,找出一個最符合輸入信號的詞串(word sequence),由此可以發 現這樣的解碼的流程其實就是一個搜尋的過程。
在語音辨識時,首先需要依照聲學模型中的狀態轉移展開出可能的狀態樹狀 圖,同時利用聲學及語言模型計算出樹狀圖中由樹根(root)到節點(node)的機率,之 後再從中搜尋出機率最高的路徑作為辨識結果,但在搜尋的過程中,由於狀態樹 的增長會隨著語音訊號的音框數量增加成指數成長,因此會加以使用光束搜尋法