第四章 訓練語料庫的前處理過程
4.3 基頻軌跡參數的求取
4.3.3 基頻軌跡檢查結果與討論
經由上面的檢查,我們可將錯誤分為:
1.沒有求得F0;
2.音節內基頻軌跡不連續;
3.基頻軌跡個數少於四個;
4.Half pitch;
除了音節內基頻軌跡不連續為切割位置錯誤造成外,其它錯誤發生原因可歸為下面 幾類:
1.音節發音時間短,或是在音節中,unvoiced部分比voiced部分時間長很多,會造成 求不出F0及F0個數小於四個的錯誤,尤其當子音為摩擦音類時,容易發生第二種 狀況,如圖4-8,(a)為音節發音過短,(b)為子音長度過長所造成求不出F0 的現象。
(a)為音節發音過短一轉仔 it4 zong2 e5
(b)為子音長度過長,讀書 tuk8 su1 圖4-8
2. 音節尾音拉得太長時,或音節與下個音節發生耦合現象時,會有double pitch錯誤 發生。此問題作法目前是將影響整段基頻軌跡的不連續的尾部軌跡刪除,如圖4-9 所示,為音尾發生double pitch的現象。
圖4-9 為音尾發生double pitch
3. 音節結尾是入聲韻輔音韻尾(p.t.k)時,常與整段音節基頻軌跡不連續,為了不影 響整段基頻軌跡的平滑性,只要是入聲韻輔音韻尾造成的不平滑的部分刪除,如 圖4-10。
圖4-10
5. 因為錄製語料為女性錄音者,ESPS求取的音高軌跡,Half Pitch的情況多於Double Pitch,當遇到此情況,將Half Pitch部分恢復原來的音高值,使整個音節其基頻 軌跡有平滑性,如圖4-11。
圖4-11 基頻軌跡出現Half Pitch現象
6. 可能是因能量過低或週期特性不明顯,使求出的基頻軌跡少於四點,本論文作法 是將此音高軌跡依照其平滑方向順補至四點,如圖4-12。
圖4-12 音高軌跡少於四點
經過以上的步驟,將所有錯誤找出後,我們以人工修正的方式,修訂基頻軌跡,
當修正完成後,即可利用下一節介紹的方式,求得基頻軌跡參數。
4.3.4 基頻軌跡參數
第五章 文字轉語音系統之製作
四縣客家話文字轉語音系統,包含四個模組:文句分析器、韻律信息產生器、
合成單元波形表、語音合成,系統發展過程之工作說明如下:
5.1 文句分析器
文字分析器為 TTS 系統中第一級處理的部分,也是最重要的單元;文字分析結 果的優劣會直接影響合成聲音的品質和正確性,所以在做文字分析時,必須使用正 確的資訊和方法做分析,以提供後級韻律訊息產生器好的各項資訊。其系統架構圖 如下:
圖 5-1 客語斷詞器架構圖
(1)前處理單元:
為了使系統處理格式統一,將輸入文句中含有 ASCII code 與 Big-5 code 的 字串,全部統一轉成 Big-5 code 格式,例:「西元 1945 年,對福建廣東心舅仔人數介 調查,」轉為「西元1945年,對福建廣東心舅仔人數介調查,」。另一方面,客 語文字如同台語書寫,也有漢字/拼音夾雜情況,目前解決方式是利用 Big5-code 中 保留區域對應其客語 671 音節拼音,此作法也可以處理連續拼音現象。
(2)斷詞單元:
初步將全形字串利用 Matching Algorithm 與客語詞典進行比對,再將延用中文 斷詞器所使用的中研院詞庫小組所提出的斷詞規則,依序為長詞優先、詞長標準差 最小者優先、附著語素最小者優先、定量複合詞字數合最小者優先、一字詞詞頻最 高者優先,與總詞頻最高者優先等,選取最適當的斷詞結果。
(3)構詞單元:
如常見「西元1980年」、「三十公斤」等數量複合詞或其他同字疊字型態出 現的詞,如:「結結」(結實的樣子)、「極極」(很擁擠的樣子)、「洗洗湯湯」(泛指 洗滌的工作)等,都是無法全部收錄之詞典中,所以利用有規律的詞串組合,提供 良好的斷詞結果。
(4)詞類標記單元:
此單元的目的是將斷詞後的詞串給予對應的詞類標記(Part of Speech, POS)
(5)文字正規化單元:
書寫與口讀會有差異,如:書寫是寫「90%」,但口讀是「百分之九十」, 所以此單元的目的是將部分阿拉伯數字、詞、符號等由寫法轉為口讀寫法。
(6)輸出單元:
輸出韻律訊息產生器所需要的詞、音節碼、詞性、斷詞位置等語言參數。
以下將針對文句輸入輸出格式、詞典的收集、文字分析程序、文字分析結果範 例等四個部分作討論。
5.1.1 文句輸入輸出格式
客語文章如同閩南語文章都有漢羅夾雜與書寫系統不一致的特性。尤其是當文 章用字遣詞方式越接近口語、文章內容越屬於鄉土文學,漢羅混用的情形就越明顯,
例如『當時 ge2 竹笐,就像這下介 hiap4 錢箱樣仔』就是一個混用漢字和羅馬拼音 的句子。另外,書寫不統一,例如「我」字會用「崖」、「吾」代替,但其拼音皆是 ngai5。目前共收錄 57 篇短文,其中包含故事、俚語、諺語等文章內容。
以客語文字分析器分析句子,可以得到以下輸出資訊:
(A) 斷詞結果:分析輸入文句,轉換成以詞為單位的詞串。
(B) 詞長:分析文句後,詞串中每個詞的長度。
(C) 音節在詞中的位置:文字在詞中的位置,是詞首、詞中或詞尾。
(D) 音節碼:各詞所擁有的客語音節碼,標音原則則以辭典內所收集的詞/拼音對 照表中的拼音為標音結果。
(E) 詞類標記:以辭典內詞所擁有的詞類中出現頻率最高的詞類作為詞類標記的標 記結果。
表 5-1,為輸入文句『它內容大約是講客家是中國按多民族中最進步介民族,』
所得到的斷詞結果輸出形式:
表 5-1 文字分析器輸出結果範例 詞串 音節碼 詞長與
音節在詞的位置 詞性
它 1178 101 24
內 3219 201 12
容 5651 202 12
大 3182 101 1
約 4665 101 6
是 3385 101 11
講 2467 101 12
客 4620 201 1
家 1439 202 1
是 3385 101 11
中 1316 201 12
國 4478 202 12
按 3645 101 12
多 1139 101 1
民 5074 201 12
族 8383 202 12
中 1316 101 1
最 3296 101 7
進 3306 201 37
步 3036 202 37
介 3438 101 7
民 5074 201 12
族 8383 202 12
, 9001 101 49
在輸出詞串中,各詞保有本身的詞類標記、音節碼,以及由詞本身可以計算出來的 詞長、音節在詞中的位置等資訊,以提供下一級韻律訊息產生單元所需的韻律參數。
需要得到上述的各項資訊,我們必須建立一套擁有這些資訊的詞典,以及適當 的文字分析處理程序。以下將針對詞庫的狀況以及處理程序作進一步說明。
5.1.2 詞庫的收集狀況
詞庫是文字分析器最重要的資料之一,以詞庫的各項資訊可決定斷詞結果的輸 出。客語詞庫的收集來源目前主要從「台大客家社詞典」、「台北市客委會 - 現代客 語詞彙彙編」、「醫院地區標示語」、「華、閩、客互譯詞典」、「客語實用手冊」、「客 家語言能力認證基本詞彙-初級題庫」…等中收錄客語詞,另外也從所蒐集文章中人 工斷詞的部分,挑出詞典尚未收錄的客語詞,加入詞典。由中華大學余秀敏教授提 供拼音系統轉換格式,再用程式轉換成實驗室的四縣客家話拼音系統。表 5-2 為針
對目前已收錄且標記詞性的客語詞典的各詞長長度統計的各詞詞數。
表 5-2:客語詞典的詞長統計
字詞 一字詞 二字詞 三字詞 四字詞 五字詞 六字詞 七字詞 八字詞 總計
數量 7326 18549 5927 3776 413 139 99 30 36259
5.1.3 構詞規則的整理狀況
構詞規則在中文文字分析架構下已經被證明效果非常好且正確,所以加入構詞 規則對於目前的客語文字分析器來說是非常重要的。目前客語構詞規則除了延用中 文構詞規則外,也從<<客語實用手冊>>第十三章客語中的量詞章節中,收錄客話特 有的量詞,如:尋(kim5),兩手平張,從左手指尖到右手指尖的長度為「一尋」。
例句:「這枝竹篙有兩尋長」。詳細如附錄三。另外,將部分國語詞轉成客語書寫念 法,如:國語的『今日』在客語的書寫念法是是『今晡日』。
5.1.4 客語文字分析結果範例
以下為數個基於目前的客語文字分析器流程所分析出來的斷詞結果範例,為方 便比較,以下將以自動/人工斷詞結果並排的方式列出並做簡單的討論。表格中第 一行為客語文字,第二行為四位數音碼,最左邊第一位數代表聲調,後面三位數為 音節帶碼,範圍由 001 至 0671,其代碼對應的音節如附錄一,第三行為音節在詞中 的資訊,如:成功,「成」在此詞是詞首所以在第三行欄為填 201,「功」在詞中第 二個字,所以填 202。
例句一:
自動斷詞:
但係(Cbb)無半樣(VH)成功(Nb),總係(D)半(Da)途(Na)而(Caa)廢(A)。
dan3he3 mo5ban3iong3 siin5gung1 ,zung2he3 ban3 tu5 i5 fi3 。 人工斷詞:
但係(Cbb)無半樣(VH)成功(Nb),總係(D)半途而廢(VH)。
dan3he3 mo5ban3iong3 siin5gung1 ,zung2he3 ban3tu5i5fi3 。
此例句斷詞結果是好的,只有在句尾的「半途而廢」,因在斷詞器的詞典尚未收 錄,所以無法斷成一個詞,解決方法是把自動斷詞與人工斷詞結果進行比對,從人 工斷詞的文句中收錄尚未收錄的客語詞。目前從 57 篇文章(共 42186 個音節)中,
不包含一字詞,人工斷詞部分有 12,583 個客語詞,自動斷詞有 12029 個,所以約有 500 多個客語詞可加進總詞典中。
例句二:
自動斷詞:
第二個(DM)賴仔(Na)也(D)已(D)煞猛(A),學著(VC)一手(DM)殺猪(Na)的 (DE)技術(Na)。
ti3ngi3ge3 lai3e2 ia1 i2 sat4mang1 ,hok8do2 it4su2 cii5zu1 ge3 gi1sut8 。
人工斷詞:
第二個(DM)賴仔(Na)也(D)已(D)煞猛(A),學著(VC)一(A)手(Na)殺猪(Na)的(DE) 技術(Na)。
ti3ngi3e3 lai3e2 me3 i3 sat4mang1 ,hok8do2 it4 su2 cii5zu1 ge3 gi5sut8 。
此句斷詞結果,可從以下幾方面來探討:
1. 人工斷詞部分,其音碼欄位由龔老師聽語料,再進行標音,「個」字,因口語 自然的表達,此字受前一字影響原本單字應念 ge3 而唸成 e3。
2. 「也」其人工、自動斷詞拼音不一致,原因為一字多音,即破音字。在語料中,
此句「也」發 me3,但在詞典一字詞中「也」是以 ia3 收錄,這也是目前 TTS 系統待解決的問題之一。
3. 「已」為人工與自動斷詞結果,聲調不一致,從此句的音高軌跡圖 5-2 來看,
為聲調 3,所以此字也是一字多音。
圖 5-2 音高軌跡圖
4. 自動斷詞已加入構詞規則,所以會將「一手」構成一個詞,而人工斷詞錯誤係 人為疏忽。
5. 因自動斷詞目前未將變調規則加入,所以在「技」字,其聲調正確為 5。
總結,人工與自動斷詞的比較結果,主要有:
1. 音節不一致:
如果是單字詞,最有可能的原因是一字多音,如果是二字詞以上,可能是音節在 此字受前後音影響,有念法有所不同。
2. 聲調不一致:
客語聲調主要有三個,如第二章客語語文特性中提到,如果將構詞規則加入斷詞 器單元,最後合出的聲音,才可接近口語化。
3. 斷詞資訊不一致:
人工斷詞是需要的,可找到自動斷詞中詞典所未收錄的客語詞。
人工斷詞是需要的,可找到自動斷詞中詞典所未收錄的客語詞。