錢揖麗,馮志茹
(1. 山西大學(xué) 計(jì)算機(jī)與信息技術(shù)學(xué)院,山西 太原 030006;2. 山西大學(xué) 計(jì)算智能與中文信息處理教育部重點(diǎn)實(shí)驗(yàn)室,山西 太原 030006)
語音設(shè)備的廣泛普及使得人們對語音合成的自然度和清晰度有了更高的要求。韻律結(jié)構(gòu)的劃分是影響合成語音自然度的重要因素之一,并對機(jī)器合成語音的質(zhì)量起著決定性的作用。
目前最為公認(rèn)的漢語語音合成系統(tǒng)中韻律結(jié)構(gòu)從低到高分為三個(gè)級別,分別為: 韻律詞、韻律短語和語調(diào)短語。級別越高,邊界處的停延越長。由于韻律詞往往與語法詞相對應(yīng),語調(diào)短語則相當(dāng)于一個(gè)較為完整的分句,所以其中韻律短語的預(yù)測最難,也最為重要,其預(yù)測結(jié)果直接影響著最終合成語音的自然度。
針對韻律短語識(shí)別問題,國內(nèi)外的研究者們提出了許多方法。最早的預(yù)測方法主要是使用語言學(xué)規(guī)則[1],但是這種方法的復(fù)用度低,很容易受到人為因素的限制;緊接著出現(xiàn)了基于統(tǒng)計(jì)的預(yù)測方法,如基于二叉樹[2-3]、馬爾科夫模型[4]、最大熵模型[5]、決策樹[6]等,這些方法使用的模型特征大多為詞、詞性等詞法特征,或者使用語法特征,但其語法特征依賴于人工標(biāo)注;隨后,為了更好地預(yù)測韻律結(jié)構(gòu),提出了將規(guī)則和統(tǒng)計(jì)相結(jié)合的方法,用規(guī)則去約束機(jī)器識(shí)別的結(jié)果,或者添加一定的規(guī)則然后再進(jìn)行機(jī)器訓(xùn)練。這些研究工作使得韻律結(jié)構(gòu)的劃分問題取得了一定的進(jìn)展。
通過對大量語料的分析可以看出,韻律結(jié)構(gòu)和句法結(jié)構(gòu)之間存在著一定的聯(lián)系。韻律結(jié)構(gòu)是以句法結(jié)構(gòu)為基礎(chǔ)的[7]。由于語塊本身可以反映出一定的句法信息,且人們在朗讀或說話時(shí)往往是以語塊流為基本單位通過語塊的切分可以把句法上相關(guān)的詞進(jìn)行整合,所以本文將語塊結(jié)構(gòu)這種非遞歸嵌套的淺層句法結(jié)構(gòu)應(yīng)用于韻律短語的預(yù)測,提出了一種基于語塊這種淺層的句法信息,并利用條件隨機(jī)場(Conditional Random Fields,CRFs)對韻律短語進(jìn)行預(yù)測的方法。該方法在總結(jié)普遍的語塊標(biāo)注規(guī)則,并實(shí)現(xiàn)語塊歸并的基礎(chǔ)上,利用CRFs方法抽取相應(yīng)的特征模型訓(xùn)練并構(gòu)建模型用于韻律短語的識(shí)別。實(shí)驗(yàn)結(jié)果顯示,語塊信息能夠?yàn)轫嵚啥陶Z的識(shí)別做出貢獻(xiàn),利用語塊信息能夠取得更好的韻律短語識(shí)別效果。
在韻律短語的邊界處有著較為明顯的停頓,而人們在正常說話或朗讀的時(shí)候,往往會(huì)在聯(lián)系緊密的句法短語之后停歇。從圖1中可以看出,句法結(jié)構(gòu)和韻律結(jié)構(gòu)之間存在一定的聯(lián)系。
圖1 韻律短語與語塊關(guān)系圖
上圖中,U表示整個(gè)句子,IP表示韻律短語,NC、AC、VC、JC分別表示名詞語塊、副詞語塊、動(dòng)詞語塊和形容詞語塊。從圖中可以看出,韻律短語邊界出現(xiàn)在語塊的邊界處而語塊內(nèi)部沒有出現(xiàn)韻律短語邊界。而且,通過對大量語料的分析可知,韻律短語邊界往往出現(xiàn)在連接緊密度較弱的語塊之間。所以,本文根據(jù)這一特性,提出將語塊應(yīng)用于韻律短語邊界的預(yù)測中。
語塊標(biāo)注將標(biāo)準(zhǔn)的短語結(jié)構(gòu)分成兩部分: 直接成分短語以及成分短語之間的句法依存,它可看作是理解自然語言的一個(gè)中間過程。Abney[8]定義的英文chunk是介于詞匯與句子之間的具有非遞歸特征的塊,其包括中心詞的前置修飾成分不包括后置附屬成分。中文語塊定義為被標(biāo)記了句法功能的非遞歸、非嵌套、不重疊的相鄰詞序列。通過對語塊的研究,結(jié)合韻律短語的特點(diǎn),本文定義了8種類型的語塊結(jié)構(gòu)(表1)。這8種語塊都是漢語中常見的短語類型。
表1 本文定義的語塊類型
本文中初始語塊的標(biāo)注思想是,根據(jù)漢語中的句法特征總結(jié)歸納出各類語塊的特征,然后利用有限狀態(tài)自動(dòng)機(jī)對文本中的句子進(jìn)行正則匹配,從而完成語塊的初始標(biāo)注。
初語塊的標(biāo)注算法如下:
Input: 未進(jìn)行語塊標(biāo)注的文本集合S,語塊標(biāo)注規(guī)則集合R。
Output: 標(biāo)注好語塊結(jié)構(gòu)的文本集合T。
Procedure of Reco:
InitialT= ?,num=1;
R={NC,VC,QC,PC,LC,JC,AC,CC},
S={s1,s2, ……,sn};
從初始文本集中讀取一段文本si;
While(si≠ ?){
匹配數(shù)據(jù)集合F= ?;
While(num<=len(R)){
從左到右掃描文本si;
If(si中含有與R[num]匹配的項(xiàng)){
將匹配的文本塊fi加入到匹配數(shù)據(jù)集合F;
將fi標(biāo)注為R[num]型的語塊【R[num]fi】;}
num++;
}
將標(biāo)注了語塊的文本重新賦值給si;
將si加入到語塊標(biāo)注結(jié)果集T中;
}
例如:
整整/d 一/m天/q的/u交流/vn 洽談/vn,505/m名/q 博士/n 研究生/n 中/f 有/v 186/m 人/n 達(dá)成/v 來/v 唐山/ns 工作/vn 的/u 意向/n
上述例句的語塊初標(biāo)注結(jié)果為:
【AC 整整/d】【QC 一/m天/q的/u】【VC 交流/vn】【VC 洽談/vn】,【QC 505/m名/q】【NC 博士/n 研究生/n】【LC 中/f】【VC 有/v】【QC 186/m】【NC 人/n】【VC 達(dá)成/v】【VC 來/v】【NC 唐山/ns】【VC 工作/vn 的/u】【NC 意向/n】
通過對比初語塊結(jié)構(gòu)和韻律結(jié)構(gòu),統(tǒng)計(jì)和分析兩者之間的潛在聯(lián)系,發(fā)現(xiàn)由于漢語句法結(jié)構(gòu)方面的特性,漢語語塊之間往往存在著較為緊密的聯(lián)系。如動(dòng)賓結(jié)構(gòu)中,動(dòng)詞語塊和其后的名詞語塊結(jié)合緊密;介詞結(jié)構(gòu)中,介詞語塊和其后的語塊結(jié)合緊密,等等。所以,結(jié)合漢語句法結(jié)構(gòu)的特點(diǎn),基于取自1998年《人民日報(bào)》的3 200個(gè)句子,對任意類型初始語塊間連接的緊密程度進(jìn)行了考察,統(tǒng)計(jì)結(jié)果如表2所示。
表2 各語塊間的結(jié)合緊密度
相鄰語塊的結(jié)合緊密度被定義為一個(gè)條件概率,用于描述語塊間不出現(xiàn)韻律短語邊界的概率。概率越大,說明兩個(gè)語塊結(jié)合得越緊密。
滿足規(guī)則R[k]時(shí)不出現(xiàn)韻律短語邊界的條件概率,如式(1)所示。
(1)
(1≤k≤64)
其中,L=0表示相鄰語塊Cj和Cj+1之間不出現(xiàn)韻律短語邊界;R[k]表示第k條規(guī)則,描述相鄰語塊CjCj+1的類型序列;Count[k]表示滿足規(guī)則R[k]的實(shí)例總數(shù);C(L=0|R[k])表示滿足規(guī)則R[k]且在語塊間未出現(xiàn)韻律短語邊界的實(shí)例個(gè)數(shù)。
將關(guān)系緊密的初語塊進(jìn)行歸并,能夠更有利地反映句子的韻律結(jié)構(gòu)。根據(jù)表2歸納得到的初語塊歸并規(guī)則如表3所示。
表3 初語塊的歸并規(guī)則
續(xù)表
CRFs是一個(gè)條件概率序列無向圖模型,在給定一個(gè)觀測序列的條件下,CRFs能夠定義出關(guān)于整個(gè)類別標(biāo)記的單一聯(lián)合概率分布,從而找到全局的最優(yōu)解。CRFs不僅避免了許多模型中需要將觀測對象與其他對象進(jìn)行獨(dú)立性假設(shè)的缺點(diǎn),還能夠有效地使用上下文信息,避免了類別標(biāo)注偏差問題[9-10]。
在給定待識(shí)別韻律短語邊界觀測序列X=X1,X2,...,Xn的條件下,對應(yīng)的韻律短語邊界標(biāo)注結(jié)果序列為:Y=Y1,Y2,...,Ym。
于是,CRFs定義的條件概率如式(2)所示。
其中,ZX為歸一化因子,它保證整個(gè)狀態(tài)序列的概率之和為1。
在CRFs中X,Y的確定是由局部特征轉(zhuǎn)移函數(shù)fkyi-1,yi,X,i和特征函數(shù)權(quán)重lk共同確定的。fkyi-1,yi,X,i是關(guān)于待標(biāo)注韻律短語邊界觀測序列的特征函數(shù),它有兩種形式,分別用來表示無向圖G = ( V , E )點(diǎn)的狀態(tài)特征和點(diǎn)與點(diǎn)之間邊的轉(zhuǎn)移特征。特征函數(shù)中,yi-1、yi是標(biāo)注了是否是韻律短語邊界的結(jié)果標(biāo)簽,X是輸入的待標(biāo)注的文本序列,i是文本序列的某個(gè)位置。
在給定訓(xùn)練樣本集合特征轉(zhuǎn)移函數(shù)之后,便可以從訓(xùn)練樣本中訓(xùn)練學(xué)習(xí)得到CRFs模型。對于任意輸入的待標(biāo)注韻律短語邊界觀測序列X,經(jīng)過CRFs訓(xùn)練之后便會(huì)給出其相應(yīng)的韻律短語標(biāo)注序列Y,其中最優(yōu)的標(biāo)注序列就是使得條件概率取最大值的標(biāo)注結(jié)果,如式(4)所示。
CRFs超強(qiáng)的推理能力可以得到序列之間存在的任意關(guān)系,訓(xùn)練得到的模型能夠得到非常豐富的信息。
對于CRFs來說,建立的模型能否高效地對韻律短語進(jìn)行預(yù)測,選取合適的特征至關(guān)重要。特征的種類越多,則CRFs可以從訓(xùn)練語料中學(xué)習(xí)到知識(shí)就越多;但是,若特征太多不僅會(huì)使系統(tǒng)的復(fù)雜度增加,而且相關(guān)性不大的特征有時(shí)還會(huì)降低模型的性能。所以,通過對已有文獻(xiàn)的研究,并結(jié)合語料的特點(diǎn)和多次的反復(fù)試驗(yàn),本文最終選用的特征類型有: 語塊內(nèi)容、語塊類型、語塊包含的詞數(shù)以及語塊的字?jǐn)?shù)。并將語塊內(nèi)容的距離長度拓展為1,其余的距離長度拓展為2。基于語塊和CRFs的韻律短語預(yù)測模型所選用的特征模板如表4所示。
除了上述原子特征之外,上下文之間的相互聯(lián)系也會(huì)對韻律短語的預(yù)測起到一定的影響,所以本文中將不同類型的原子特征進(jìn)行了組合,根據(jù)多次實(shí)驗(yàn)的結(jié)果,模型采用了表5中所示的組合特征。
表4 韻律短語預(yù)測模型的特征模板
表5 模型采用的組合特征
本文利用語塊信息并采用條件隨機(jī)場方法建立了韻律短語的識(shí)別模型。實(shí)驗(yàn)?zāi)P偷臉?gòu)建以及韻律短語的識(shí)別流程如圖2所示。
(1) 識(shí)別模型的構(gòu)建
基于經(jīng)過了分詞、詞性標(biāo)注、韻律標(biāo)注和初始語塊標(biāo)注的訓(xùn)練語料,在分析韻律短語和語塊之間關(guān)系的基礎(chǔ)上,歸納總結(jié)規(guī)則并進(jìn)行初語塊的歸并,然后抽取并構(gòu)建特征模板訓(xùn)練生成CRFs韻律短語識(shí)別模型。
(2) 韻律短語的識(shí)別
對于待識(shí)別的語料,首先進(jìn)行自動(dòng)分詞和詞性標(biāo)注,然后利用正則匹配的方法進(jìn)行語塊的自動(dòng)標(biāo)注及歸并,最后利用上述CRFs模型完成韻律短語的自動(dòng)識(shí)別和標(biāo)注。
圖2 基于語塊和CRFs的模型構(gòu)建以及韻律短語識(shí)別流程
實(shí)驗(yàn)使用的語料約20萬字,是從富士通標(biāo)注的1998年《人民日報(bào)》中隨機(jī)抽取的3 200個(gè)長句,經(jīng)過了分詞、詞性標(biāo)注以及人工韻律結(jié)構(gòu)標(biāo)注,平均每句含有34.61個(gè)詞,10.36個(gè)韻律短語。為了使實(shí)驗(yàn)更具說明性,由程序隨機(jī)生成10組實(shí)驗(yàn)語料,每組中2 800句作為訓(xùn)練語料,400句作為開放測試語料。
韻律短語識(shí)別的評價(jià)指標(biāo)采用常用的精確率(P)、召回率(R)和F值(F)。
P = 機(jī)器正確標(biāo)注的韻律短語個(gè)數(shù)/機(jī)器標(biāo)注的韻律短語總數(shù) ×100%
(5)
R= 機(jī)器正確標(biāo)注的韻律短語個(gè)數(shù)/人工標(biāo)注的韻律短語總數(shù) ×100%
(6)
F = 2×P×R/(P+R)×100%
(7)
基于10組實(shí)驗(yàn)語料,利用本文第3節(jié)中介紹的方法進(jìn)行韻律短語的自動(dòng)識(shí)別,獲得的開放測試結(jié)果如表6所示。
從表6可以看出,基于語塊信息和條件隨機(jī)場模型進(jìn)行韻律短語識(shí)別,10組實(shí)驗(yàn)的平均識(shí)別精確率為89.66%,召回率為83.42%,F(xiàn)值為86.4%。
表6 10組實(shí)驗(yàn)開放測試結(jié)果
另外,為了考察語塊信息對于韻律短語識(shí)別的貢獻(xiàn),本文構(gòu)建了一個(gè)不利用語塊信息的CRFs韻律短語識(shí)別模型。借鑒前人的研究工作,該模型使用詞、詞性、詞長為原子特征,并將原子特征距離長度拓展為2(即當(dāng)前詞前后各兩詞),同時(shí)將原子特征組合構(gòu)成復(fù)合特征(詞+詞性,詞+詞長),并設(shè)置距離長度為1。不利用語塊信息的CRFs模型所用的特征模板及其含義如表7所示。
表7 不利用語塊信息的CRFs模型特征模板
同樣利用上述10組實(shí)驗(yàn)語料做開放測試,并將基于語塊信息的CRFs模型與不使用語塊的CRFs模型的韻律短語識(shí)別結(jié)果進(jìn)行F值的對比,結(jié)果如圖3所示。
圖3 是否使用語塊模型的F值結(jié)果比較
從圖3可以看出,引入語塊結(jié)構(gòu)之后,CRFs模型在韻律短語識(shí)別效果上有了明顯的提升,其F值提高了10%左右。從實(shí)驗(yàn)結(jié)果可以看出,語塊這一淺層句法信息,能夠在韻律短語識(shí)別中得到應(yīng)用并做出貢獻(xiàn)。
另外,在相同的語料集上利用不同的方法進(jìn)行韻律短語識(shí)別,其識(shí)別結(jié)果與本文方法的對比情況如表8所示。
表8 相同語料下不同方法的識(shí)別結(jié)果對比
從表8的測試結(jié)果可以看出,與其他方法相比,基于語塊和CRFs的韻律短語識(shí)別方法,在識(shí)別精確率、召回率和F值上都有明顯的提高。
本文利用語塊這種淺層句法信息建立了CRFs模型用于韻律短語的自動(dòng)識(shí)別。首先使用有限狀態(tài)自動(dòng)機(jī),利用正則匹配的方法,對語料進(jìn)行了初始語塊結(jié)構(gòu)的識(shí)別和標(biāo)注;然后,基于初語塊間結(jié)合緊密度的調(diào)查,制訂了歸并規(guī)則對初語塊進(jìn)行了處理;最后,利用CRFs方法構(gòu)建了韻律短語的識(shí)別模型。實(shí)驗(yàn)結(jié)果表明,基于語塊信息的CRFs韻律識(shí)別方法優(yōu)于不利用語塊結(jié)構(gòu)的模型,其F值平均能夠提高約十個(gè)百分點(diǎn)。同時(shí),在相同語料集上利用不同方法進(jìn)行韻律短語識(shí)別的實(shí)驗(yàn)結(jié)果表明,本文方法優(yōu)于其他兩種方法。
目前,是利用正則匹配的方法進(jìn)行語塊結(jié)構(gòu)的識(shí)別,而韻律結(jié)構(gòu)比較靈活多變,往往不能像句法結(jié)構(gòu)那么規(guī)則,不可避免地,少數(shù)韻律短語的邊界會(huì)出現(xiàn)在語塊結(jié)構(gòu)的內(nèi)部。今后的工作將針對這些問題進(jìn)行深入的研究和改進(jìn),從而進(jìn)一步提高韻律短語的識(shí)別效果。
[1] 曹劍芬. 基于語法信息的漢語韻律結(jié)構(gòu)預(yù)測[J]. 中文信息學(xué)報(bào), 2003, 17(3): 41-46.
[2] 荀恩東,錢揖麗,郭慶,等. 應(yīng)用二叉樹剪枝識(shí)別韻律短語邊界[J]. 中文信息學(xué)報(bào), 2006, 20(3): 1-5.
[3] 錢揖麗,荀恩東. 基于標(biāo)點(diǎn)信息和統(tǒng)計(jì)語言模型的語音停頓預(yù)測[J]. 模式識(shí)別與人工智能, 2008,21(4): 541-545.
[4] Taylor P, Black A W. Assigning phrase breaks from part-of-speech sequences[J]. Computer Speech & Language, 1998, 12(2): 99-117.
[5] 李劍鋒, 胡國平, 王仁華. 基于最大熵模型的韻律短語邊界預(yù)測[J]. 中文信息學(xué)報(bào), 2004, 18(5): 56-63.
[6] 王永鑫, 蔡蓮紅. 語法信息與韻律結(jié)構(gòu)的分析與預(yù)測[J]. 中文信息學(xué)報(bào), 2010 (1): 65-70.
[7] 曹劍芬. 漢語韻律切分的語音學(xué)和語言學(xué)線索[C].新世紀(jì)的現(xiàn)代語音學(xué)—第五屆全國現(xiàn)代語音學(xué)學(xué)術(shù)會(huì)議論文集, 北京: 清華大學(xué)出版社, 2001: 176-179.
[8] Abney S. Prosodic structure, performance structure and phrase structure[C]//Proceedings of the workshop on Speech and Natural Language. Association for Computational Linguistics, 1992: 425-428.
[9] 董遠(yuǎn),周濤,董乘宇,王海拉. 條件隨機(jī)場模型在韻律結(jié)構(gòu)預(yù)測中的應(yīng)用[J]. 北京郵電大學(xué)學(xué)報(bào),2009,05:36-40.
[10] 包森成. 基于統(tǒng)計(jì)模型的韻律結(jié)構(gòu)預(yù)測研究[D]. 北京郵電大學(xué)碩士學(xué)位論文, 2009.
[11] 楊鴻武,朱玲. 基于句法特征的漢語韻律邊界預(yù)測[J]. 西北師范大學(xué)學(xué)報(bào)(自然科學(xué)版),2013,01:41-45.
[12] 李素建, 劉群. 漢語組塊的定義和獲取[C].語言計(jì)算與基于內(nèi)容的文本處理—全國第七屆計(jì)算語言學(xué)聯(lián)合學(xué)術(shù)會(huì)議論文集, 北京:清華大學(xué)出版社, 2003:110-115.
[13] 周強(qiáng), 李玉梅. 漢語塊分析評測任務(wù)設(shè)計(jì)[J]. 中文信息學(xué)報(bào), 2010, 24 (1): 123-128.
[14] S. P. Abney. Parsing by chunks. In Berwick R C, Abney S P, and Tenny C(editors), Principle-based parsing: computation and psycholinguistics[M]. Kluwer Academic Publishers, Boston, 1991: 257-278.
[15] 周游, 劉方舟. 語調(diào)短語預(yù)測中長度約束模型的對比研究[J]. 清華大學(xué)學(xué)報(bào)(自然科學(xué)版), 2013 (6): 787-790.
[16] 張?jiān)? 凌震華, 戴禮榮, 等. 一種改進(jìn)的基于決策樹的英文韻律短語邊界預(yù)測方法[J]. 計(jì)算機(jī)應(yīng)用研究, 2012, 29(8): 2921-2925.
[17] Tjong Kim Sang E F, Buchholz S. Introduction to the CoNLL-2000 shared task: Chunking[C]//Proceedings of the 2nd workshop on Learning language in logic and the 4th conference on Computational natural language learning-Volume 7. Association for Computational Linguistics, 2000: 127-132.