• 沒有找到結果。

第六章 辨識結果和結論 36

6.1.2 實驗環境

( , ) min ( ', 1) ( )t

q q x w

S q t S q t B o w

   

但在有限狀態機的開始時,我們必頇給予搜尋空間中的狀態,一個起始的分數:

如果 q i

時,S q( ,0) 1 ,我們以機率為 1 來表示,其餘的狀態S q t( , )0,我們 以機率為 0 表示不會存在。狀態分數不為 0 的狀態,我們稱為活躍狀態(active state)。在隨著時間陸續增加時,活躍狀態也會著有限狀態轉換機不斷增加。

由於整合後的有限狀態機,狀態數非常的大,因此,倘若時間一增加後,我 們計算所有的狀態最佳分數時間複雜度為O Q(| | )2 ,必然十分可觀。為了可以有 效率的計算狀態分數,我們可以假設最後所得到的最佳路徑中,每一個時間點的 狀態分數必然為該時間點的前幾名。因此,我們引用光束搜尋,在搜尋時設定一 個光束寬度(beam width),在我們確立每個時間的最高分數後,若排名超過光 束寬度的狀態,則我們就使該狀態分數S q t( , )0。在本系統中,我們使用了另 一種方式來限制狀態數,我們設定了每個時間點所存活的狀態數(window size),

藉此,來使有限狀態機的活躍狀態個數得以控制。

6.1.2 實驗環境

以連續中文語音辨認的環境和結果。測詴平台使用的是 Intel(R) Core(TM)2 Extreme CPU X9650 @ 3.00GHz,記憶體為 8Gbytes。

聲學模型

使用的聲學模型是隱藏式馬可夫模型,由 415 個音節所構成,其中含三個靜 音模型(一個長 sil 具有十個狀態構成、一個長 sp 為十個狀態構成、一個短 sp

具有三個狀態構成),一個 unk 模型(具有三個狀態構成)。其餘非靜音模型中,

每個音節皆為十個狀態構成 ,每一個狀態機率分佈為六十四個高斯分佈的模型。

發音詞典

以六萬詞做為發音詞典。發音詞典由一到八字詞所組成。

語言模型

將 TCC300 中的 845 個檔案做為訓練語料,此語言模型為 bi-gram 語言模型,

具有 7457177 個 bi-gram 機率,和 60000 個 uni-gram 機率,以及其 60000 個詞後 撤機率,共有 7577177 個機率分數。

測詴語料

我們將測詴分為三個部份。

第一部份-我們將 NCKU 中 83 個音檔,共 9739 個音節,做完整的測詴,

來得到測詴結果。此結果,將和 HTK 做比較以證明系統正確性。

第二部份-我們取 NCKU 的前 25 個音檔,來做為測詴語料,來分析辨識系 統中所需要的參數。(Window size 和 Language model weight)

第三部份-TCC300 語料中的 NCKU 和 NTU 和 NCTU 三個部份,各取 25 個音檔來做為測詴語料,並分別得到測詴結果。其中 NCTU 具有 2448 個 syllable,

NTU 具有 894 個 syllable,NCKU 具有 3274 個 syllable。

有限狀態機

我們以上述各模型來整合成有限狀態轉換機,我們可以得到各層有限狀態 機;我們已知有限狀態機組合的演算法,十分耗費記憶體資源和時間,故我們先 在組合運算前用合併演算法,來降低各有限狀態機的狀態和轉移數。表 6.1 和 6.2 為使用合併演算法前後所得到不同的轉移個數。

我們可以發現合併演算法所獲得的效果,只有發音詞典才有獲得部份縮小的

效益,這是由於只有發音辭典中,才具有能夠合併的路徑,但由於本論文中的合 併演算法,並沒有結合其餘有限狀態機的分數轉移技術,因此,相信合併演算法 尚有發展的空間。

表 6.1 各別轉成有限狀態機後的資料 合併前 總狀

態數

終止

狀態數 總轉移數 隱藏式馬可夫模型(H) 3722 414 7447 發音詞典(L) 233449 60000 353451 三連音模型 (G) 60004 1 7577177

表 6.2 合併演算法後各有限狀態機資料 合併後 總狀

態數

終止

狀態數 總轉移數 隱藏式馬可夫模型(H) 3307 1 7032 發音詞典(L) 218380 1 278382 三連音模型 (G) 60004 1 7577177

在經過合併演算法所產生新的有限狀態機後,我們將新的有限狀態機拿來做 組合運算,將三層的語音資料,整合成一個具有所有語音資料的大型有限狀態 機,以此有限狀態機來做為語音辨識時所使用的搜尋空間。整合後的有限狀態機 如表 6.3 所示。

表 6.3 整合完成後的有限狀態機

總狀態數 終止狀態數 總轉移數 H L G  1951087 1 11434003

相關文件