賴 華,高玉夢,黃于欣,余正濤,張勇丙
(1.昆明理工大學(xué) 信息工程與自動化學(xué)院,云南 昆明 650504;2.昆明理工大學(xué) 云南省人工智能重點實驗室,云南 昆明 650504)
目前,機器翻譯、文本摘要等生成任務(wù)取得了很好的性能,但生成文本的質(zhì)量評價仍是一個難點問題[1-3],后者可以看作一個計算生成句和標(biāo)準(zhǔn)參考句之間相似度的任務(wù)。根據(jù)匹配方法的不同,可將其分為基于統(tǒng)計的方法和基于語義相似度的方法兩類。
基于統(tǒng)計的方法一般是通過計算生成句和參考句之間的不同粒度語義單元的共現(xiàn)程度來評價模型性能,根據(jù)計算方式不同可以分為基于編輯距離的方法和基于詞重疊率的方法?;诰庉嬀嚯x的方法是通過計算生成句改寫到參考句所需的編輯操作次數(shù)來衡量兩個句子之間的相似性。編輯操作次數(shù)越多則表示一個句子改寫成另一個句子越困難,句子之間的相似性越低。Snover等人[4]將生成句通過增加、刪除、替換改寫到參考句所需最少操作次數(shù)定義為編輯距離,使用參考句的長度對編輯距離歸一化得到錯誤率。與基于編輯距離的方法不同,基于詞重疊率的評價是當(dāng)前的主流評價方法,通過計算生成句與標(biāo)準(zhǔn)參考句之間的字詞重疊率來評價模型性能。Papineni等人提出的BLEU[5],以及隨后Lin等人提出的ROUGE[6],是機器翻譯與文本摘要模型評估中最常用的評價指標(biāo)。基于此,研究者相繼提出了METEOR[7-9]以及ROUGE變體[10-11]等改進的評價方法,其核心均是通過融入外部知識(如WordNet)來解決同義詞匹配的問題。綜上所述,雖然基于統(tǒng)計的方法能夠很好地表征句子之間的重疊度,但是缺乏對句子深層語義的建模,因此可能出現(xiàn)兩個句子語義相近,但是重疊詞很少的情況下評分較低的現(xiàn)象,如圖1(a)所示,兩個句子均表示大雪覆蓋的含義,語義較為相近,但是重疊的詞較少,這在一定程度上限制了生成句的多樣性。
圖1 評價示意圖
基于多粒度特征的文本生成評價方法主要包括兩個部分: 多粒度語義表征部分與多粒度特征匹配部分,如圖2所示。
圖2 多粒度特征評價方法模型
多粒度語義表征部分包括子詞語義表征模塊、音節(jié)語義表征模塊以及詞組語義表征模塊。首先,為了獲取不同粒度的語義特征表示,采用MBERT對參考句與生成句的子詞序列進行向量表示?;诖?,結(jié)合構(gòu)成音節(jié)與詞組的子詞組合,得到音節(jié)語義表征向量以及詞組語義表征向量。其次,分別對不同粒度下的參考句與生成句的語義特征向量進行最大余弦相似度匹配,使模型在多個粒度上考慮兩個句子間的語義相關(guān)關(guān)系。
1.1.1 子詞語義表征模塊
給定一個參考句X和一個生成句Y,首先使用MBERT對X與Y進行子詞粒度切分得到參考句子詞序列{ex1,ex2,ex3,…,exn}與生成句子詞序列{ey1,ey2,ey3,…,eym}。如式(1)、式(2)將得到的子詞序列輸入MBERT上下文嵌入,得到參考句子詞表征向量EX={excls,ex1,ex2,ex3,…,exn,exsep}與生成句子詞表征向量EY={eycls,ey1,ey2,ey3,…,eym,eysep},其中,exn表示參考句X中第n個子詞。
其中,MBERT表示Multilingual BERT詞嵌入。
1.1.2 音節(jié)語義表征模塊
音節(jié)是發(fā)音的最小語音單元,相比于子詞它是一個更粗的粒度。在越南語與泰語中,音節(jié)由元音、輔音、聲調(diào)構(gòu)成。越南語書寫時,音節(jié)與音節(jié)之間用空格隔開,因此,可利用空格對越南語進行音節(jié)切分。而泰語書寫時,音節(jié)間無空格,因此,在泰語中需要借助PyThaiNLP[16]工具對泰語進行音節(jié)切分。針對中文,大多情況下,子詞與音節(jié)相同,均由一個漢字構(gòu)成。因此,本文在中文上不進行音節(jié)粒度語義表征。
其中,“pooling”表示average pooling。
1.1.3 詞組語義表征模塊
詞組是比音節(jié)更粗的粒度,它是語言中能夠獨立運用的最小語義單位。詞組是由單個或多個語素構(gòu)成的,語素又可分為自由語素與黏著語素,不能夠獨立成詞的語素稱為黏著語素。在越南語、泰語等語言中存在大量的黏著語素,音節(jié)可構(gòu)成語素,進而構(gòu)成詞。由此,可以簡單理解為詞組由音節(jié)構(gòu)成。在各語言中,需采用不同的工具對其進行分詞,中文使用結(jié)巴分詞,越南語使用VnCoreNLP[17]分詞,泰語使用PyThaiNLP[16]分詞。
利用多粒度語義表征部分對參考句與生成句的各粒度序列進行語義特征向量后,在不同粒度下,分別計算召回率與精確率與F值。最后,結(jié)合多粒度特征確定兩個句子間的語義相關(guān)關(guān)系。
參考式(7)~式(9)可得到在子詞粒度下的RE,PE,F(xiàn)E,以及詞組粒度下的RW,PW,F(xiàn)W。
idf常用來衡量字或某個詞在一個文件集內(nèi)的重要程度,如式(10)所示。如果文件集中包含詞組w的文檔越少,idf越大,說明該詞在突出文章主題上發(fā)揮了關(guān)鍵作用。詞組是能夠獨立運用的最小語義單位,因此,本文認為基于詞組計算idf能夠更大化地凸顯句子中的重要內(nèi)容,本文可選擇idf對詞組粒度進行加權(quán),如式(11)所示。
其中,N為總文檔數(shù),nw為包括詞組的文檔數(shù)。
最后,本文在多個粒度特征上進行觀察,按式(12)計算生成句的精確率P,并計算多粒度特征下的召回率R以及F值。
(12)
為了驗證本文提出的多粒度特征評價指標(biāo)的效果,本文在機器翻譯、跨語言摘要與跨語言數(shù)據(jù)集篩選三個任務(wù)上進行測評實驗。另外,為了比較不同自動評價指標(biāo)的性能,本文采用與前人相同的研究方法[1,13,18],通過皮爾遜相關(guān)系數(shù)r、斯皮爾曼等級系數(shù)ρ以及肯德爾等級系數(shù)τ來判定不同的自動評價指標(biāo)與人工評價的相關(guān)性,r、ρ、τ取值越接近1,表示相關(guān)性越好。其中,人工評價由12名精通中文、越南語、泰語的志愿者對文本生成測評數(shù)據(jù)進行人工打分得到,打分范圍為1到5分(1最差,5最好)。
本文中文本生成測評實驗數(shù)據(jù)由兩部分構(gòu)成,一部分是本文在網(wǎng)絡(luò)上爬取并整理的越南語、泰語句子,將該數(shù)據(jù)集稱為VTSTS(Vietnamese and Thai Dataset);另一部分是公開的中文短文本摘要數(shù)據(jù)集LCSTS[19]。構(gòu)建測評數(shù)據(jù)具體過程如下:
(1)針對機器翻譯任務(wù)(MT),本文從LCSTS和VTSTS中分別抽取中文、越南語、泰語各200個句子作為目標(biāo)語言參考句。利用谷歌翻譯模型進行回譯(將A語言的正向翻譯成B,再將B反向翻譯成A),反向翻譯得到目標(biāo)語言生成句,構(gòu)建越中、中越、中泰機器翻譯任務(wù)測評所需數(shù)據(jù)。
(2)針對跨語言摘要任務(wù),在LCSTS中抽取200個中文摘要對,用傳統(tǒng)的基線方法先摘要后翻譯(ST)和先翻譯后摘要(TS)構(gòu)建中-越摘要對。翻譯時采用谷歌翻譯模型;摘要時,考慮到中-越跨語言摘要缺乏大規(guī)模監(jiān)督數(shù)據(jù),采用LexRank[20]這種無監(jiān)督的抽取式摘要模型,構(gòu)建中越跨語言摘要任務(wù)測評所需數(shù)據(jù)。
(3)針對跨語言數(shù)據(jù)集篩選任務(wù)(STS),從VTSTS數(shù)據(jù)集中抽取200個越南語單句,利用谷歌翻譯模型,回譯構(gòu)建越-中-越偽平行句。
本文選取以下四種評價方法作為基線方法。在同一文本生成任務(wù)中,所有的基線方法測評對象均相同。
BLEU: 基于統(tǒng)計的評價方法,在機器翻譯評價任務(wù)中使用得最為廣泛,將生成句與參考句之間的長短關(guān)系作為懲罰因子,基于此,結(jié)合參考句與生成句間的N-gram重疊率進行評分,在本文計算中,N最大為4。
ROUGE: 基于統(tǒng)計的評價方法,在文本摘要評價任務(wù)中使用得最為廣泛,通過對比參考句與生成句間的N-gram重疊率進行評分,本文分別計算ROUGE-1、ROUGE-2、ROUGE-L的F1值。
Bertscore: 基于深度語義匹配的評價方法,用于文本生成任務(wù)的評價,通過計算參考句與生成句的子詞粒度語義相似度進行評分,本文計算在該評價方法下的三個指標(biāo)為R召回率、P精確率、F值。
Mgfscore(Ours): 本文提出的評價方法,可用于文本生成任務(wù)的評價,綜合子詞、音節(jié)、詞組語義特征信息對生成句進行評分,本文計算在該評價方法下的三個指標(biāo)為召回率R、精確率P及F值。
為了探究本文提出的評價方法在評估不同語言中的有效性,本文在越中、中越、中泰機器翻譯任務(wù)上進行實驗。不同評價指標(biāo)與人工評估的相關(guān)系數(shù)r、ρ、τ結(jié)果如表1所示。其中,MT(vi→zh)表示越中機器翻譯測評任務(wù),MT(zh→vi)表示中越機器翻譯測評任務(wù),MT(zh→th)表示中泰機器翻譯測評任務(wù),F(xiàn)idf表示進行idf加權(quán)后F值得分。
表1 機器翻譯測評任務(wù)中各指標(biāo)下的相關(guān)系數(shù)
從表1可以看出,在越中測評任務(wù)上,無idf對重要詞組進行加權(quán)時,本文提出的方法Mgfscore與人工評價相關(guān)性低于Bertscore。這是由于中文上子詞屬于較粗粒度(中文子詞與音節(jié)基本相同),子詞嵌入表征向量存在誤差,導(dǎo)致了多粒度語義特征提取時出現(xiàn)錯誤傳播現(xiàn)象較為嚴(yán)重。
另外,在中越及中泰兩個語言對的機器翻譯測評任務(wù)上,Mgfscore與人工評價的相關(guān)性明顯高于基線BLEU和Bertscore,證明了本文提出的多粒度特征評價方法的有效性。其中,Mgfscore在中泰測評任務(wù)中提升最大,與Bertscore最優(yōu)結(jié)果相比,在相關(guān)性系數(shù)r、ρ、τ分別得到了3.5%,2.8%,1.9%的提升。
針對idf加權(quán)來說,在越中測評任務(wù)中使用idf加權(quán)時,Mgfscore-Fidf相關(guān)性高于Bertscore-Fidf、Mgfscore-F,證明了本文提出在詞組粒度進行idf加權(quán)的策略的優(yōu)越性。相比越中任務(wù),在中越及中泰兩個語言對任務(wù)上,Mgfscore-Fidf與Mgfscore-F相比,性能提升并不明顯,甚至出現(xiàn)性能下降,是由于越南語與泰語的分詞工具更傾向于將句子切分為音節(jié),且部分詞組分詞不準(zhǔn)確導(dǎo)致的。
為了驗證本文提出的評價方法在不同文本生成測評任務(wù)上的有效性,本實驗在中越跨語言摘要任務(wù)上進行驗證,對比不同評價指標(biāo)的好壞。表2展示了TS以及ST作為跨語言摘要模型時,在中越跨語言摘要測評任務(wù)上不同評價指標(biāo)與人工評估的相關(guān)系數(shù)r、ρ、τ。
從表2可以看出,在中越跨語言摘要測評任務(wù)中,相比于ROUGE與Bertscore,本文評價方法Mgfscore取得了最優(yōu)結(jié)果。其中,Bertscore與Mgfscore均是基于MBERT表征進行評價,二者與人工評價的相關(guān)性明顯高于ROUGE,說明了基于語義相似度評價的方法比基于統(tǒng)計的評價方法更具有優(yōu)勢。在TS模型中,Mgfscore與Bertscore最優(yōu)結(jié)果相比,在相關(guān)系數(shù)r、ρ、τ上分別提升了1.6%,2.0%,1.9%;類似地,在ST模型中,Mgfscore與Bertscore最優(yōu)結(jié)果相比,在相關(guān)系數(shù)r、ρ、τ上分別得到1.3%,0.8%,0.2%的提升,證明了本文提出的多粒度特征評價方法與人工評價相關(guān)性更高。
表2 跨語言摘要測評任務(wù)中各指標(biāo)下的相關(guān)系數(shù)
表3展示了跨語言數(shù)據(jù)集篩選測評任務(wù)中,不同評價指標(biāo)與人工評估的相關(guān)系數(shù)r、ρ、τ。
表3 跨語言數(shù)據(jù)集篩選中各指標(biāo)下的相關(guān)系數(shù)
從表3可以看出,在中越跨語言數(shù)據(jù)集構(gòu)建問題上,本文提出的評價方法Mgfscore仍是與人工評價相關(guān)性最高的方法,使用本文的評價方法能夠更準(zhǔn)確地篩選出高質(zhì)量數(shù)據(jù)。
表2與表3均以中-越人工打分作為基準(zhǔn),與跨語言摘要任務(wù)相比,STS任務(wù)上相關(guān)系數(shù)r、ρ、τ均出現(xiàn)大幅降低的現(xiàn)象。對此,將兩個任務(wù)的測評樣本進行對比分析,得出與Chaganty等人[21]類似的結(jié)論: 當(dāng)評價對象是低質(zhì)量生成文本(人工評價中得分低的文本)時,使用詞匯級別的評價方法測評與人工評價的相關(guān)系數(shù)更高。但在本文三個不同的文本生成測評實驗中,可以看出,無論是在測評機器翻譯生成的高質(zhì)量文本,或是測評跨語言摘要生成的低質(zhì)量文本,乃至測評跨語言數(shù)據(jù)集篩選任務(wù)中的錯誤傳播嚴(yán)重的文本中,本文提出的多粒度特征評價方法Mgfscore均是與人工評價相關(guān)性最高的方法。
為了探究本文提出的基于多粒度特征文本生成評價方法的性能,本節(jié)首先進行消融實驗,對比了單一粒度特征與結(jié)合多粒度特征下的評價方法與人工評價的相關(guān)性。其次,本節(jié)探究了不同預(yù)訓(xùn)練語言模型及層數(shù)對多粒度特征評價方法的性能影響。最后,本節(jié)對Mgfscore評價方法進行實例分析,探討本文提出的多粒度評價方法的優(yōu)缺點。
以中越與中泰兩個語言對的測評任務(wù)為例探究在不同粒度特征匹配下F值與人工評價的相關(guān)系數(shù)r、ρ、τ,實驗結(jié)果如圖3所示。
圖3 不同粒度下的實驗結(jié)果
在圖3(a)與圖3(b)中可以發(fā)現(xiàn),針對r、ρ相關(guān)系數(shù)來說,在中越測評任務(wù)上,基于詞組粒度的評價與人工評價相關(guān)系數(shù)最高;在中泰測評任務(wù)上,基于音節(jié)粒度的評價與人工評價相關(guān)系數(shù)最高;但無論是在中泰還是中越測評任務(wù)中,本文提出的評價方法Mgfscore與人工評估的相關(guān)系數(shù)r、ρ均維持在高于中位數(shù)水平,由此可見,結(jié)合多粒度特征的評價方法具有較高的穩(wěn)定性。針對相關(guān)系數(shù)τ來說,Mgfscore與單粒度評價中的最優(yōu)結(jié)果相近。由此,進一步證明了結(jié)合多粒度的評價方法具有更加穩(wěn)定的性能。
為了驗證本文提出方法在不同預(yù)訓(xùn)練語言模型上的有效性,以及探究預(yù)訓(xùn)練語言模型層數(shù)對本文提出的評價方法的性能的影響,本節(jié)在MBERT與XLM(xlm-mlm-100-1280)[22]兩個預(yù)訓(xùn)練語言模型上進行實驗,計算不同層表示下Bertscore/Mgfscore的F值與人工評價的皮爾遜相關(guān)系數(shù)ρ,結(jié)果如圖4所示。
圖4 各預(yù)訓(xùn)練語言模型在不同層數(shù)下的實驗結(jié)果
從圖4可以看出,一方面,在不同的預(yù)訓(xùn)練語言模型中,本文提出的方法Mgfscore與Bertscore相比表現(xiàn)更好。另一方面,在中越與中泰的測評任務(wù)中,Mgfscore或Bertscore與人工評估的相關(guān)性并沒有隨著模型層數(shù)的增加而不斷上升,而是在中間層數(shù)取得了更好的結(jié)果,說明中間層數(shù)的表示包含了更多的語義信息。同時,Mgfscore與Bertscore比較,在低層數(shù)表示時性能提升較大,這是由于低層數(shù)的表征中包含了更多子詞本身的信息,此時更加明顯地體現(xiàn)出了基于多粒度的方法能提取更全面的信息。而隨著層數(shù)的增加,子詞表征向量提取到了更多上下文的信息以及一些與語義無關(guān)的信息,此時帶來的錯誤傳播也更為明顯,以致于Mgfscore較Bertscore的性能提升出現(xiàn)了減緩的趨勢。
為了進一步證明多粒度特征的文本生成評價方法的有效性,本節(jié)對圖1(b)中示例,使用Mgfscore評價并進行分析,各粒度匹配結(jié)果如圖5所示。
圖5 Mgfscore各粒度匹配結(jié)果
本文針對越南語、泰語等存在大量黏著語素的語言,提出了一種基于多粒度語義相似度的評價指標(biāo),通過MBERT提取不同粒度的語義特征信息,基于此綜合考慮不同粒度語義單元的相似度,改善了傳統(tǒng)基于統(tǒng)計的評價方法中存在的詞匯多樣性評價能力弱的問題,也更好反映了生成文本與參考文本間的語義關(guān)系。在中泰及中越語言對測評任務(wù)中,相比于BLEU、ROUGE以及Bertscore等評價指標(biāo),本文提出的多粒度特征評價方法均與人工評價結(jié)果更接近。