趙小兵, 鮑 薇, 董 建, 包烏格德勒
(1. 中央民族大學(xué) 信息工程學(xué)院,北京 100081;2. 中國電子技術(shù)標(biāo)準(zhǔn)化研究院,北京 100007;3. 呼和浩特民族學(xué)院 計算機系,內(nèi)蒙古 呼和浩特 010051)
文本改寫檢測旨在判斷給定的句對是否表達(dá)相同的含義,該研究是剽竊檢測(plagiarism detection)的基礎(chǔ)任務(wù)。本文首先給文本改寫檢測任務(wù)進(jìn)行公式定義: 源句子(或片段)S1,目標(biāo)句子(或片段)S2,文本改寫檢測的任務(wù)是判斷S1和S2在語義上是否表達(dá)相同的意思,計算結(jié)果用sim(S1, S2)表示。最終判定的結(jié)果在文本剽竊檢測中對判斷句對是否存在抄襲嫌疑發(fā)揮重要作用。
ACL從2012年起舉辦的SemEval評測,以及PAN@CLEF從2009年開始舉辦的剽竊檢測評測都推動了文本改寫檢測、文本語義相似度計算的研究。尤其是SemEval 2014[1]的英語文本相似度計算任務(wù)產(chǎn)生了一大批成功的系統(tǒng),其中的評測語料SICK沿用至今。近年來,深度神經(jīng)網(wǎng)絡(luò)方法在自然語言處理領(lǐng)域取得了巨大成功,逐漸代替了傳統(tǒng)的機器學(xué)習(xí)方法,成為主流研究方法。其中,基于神經(jīng)語言模型的詞向量方法是目前文本表示的重要方法,在機器翻譯、文本分類、問答系統(tǒng)等應(yīng)用中都起著重要作用。
文本改寫檢測研究在英文、中文等語料豐富的語言中的成果較多,而在低資源語言方面起步較晚,相關(guān)研究成果較少,且缺乏語料。本文擬對藏文文本改寫檢測進(jìn)行研究,并探索藏漢跨語言文本改寫檢測的研究。
近幾年,基于字位的分詞策略在漢語、藏文信息處理中已取得顯著成效。音節(jié)是藏文中最小的、不可劃分的語素或單音節(jié)詞,如圖1所示,音節(jié)之間通過音節(jié)點(也叫音節(jié)分割符、隔字符)分隔開,每個藏文的音節(jié)相當(dāng)于漢文中的一個字。一個或多個音節(jié)組成一個藏文詞。
圖1 藏文音節(jié)與藏文詞示例
基于藏文音節(jié)的研究在藏文信息處理各個任務(wù)中也逐漸成為主流方法。珠杰等[2]基于藏文音節(jié)的特有結(jié)構(gòu)建立藏文音節(jié)規(guī)則庫,可用于拼寫檢查校正、語音標(biāo)注等任務(wù)中。龍從軍等[3]在藏文詞性標(biāo)注研究中采用音節(jié)標(biāo)注的方法,緩解藏文分詞中未登錄詞切分不準(zhǔn)確、標(biāo)注不準(zhǔn)確等問題,對藏文詞性標(biāo)注起到了積極作用。何向真等[4]把藏文分詞任務(wù)看作是判斷藏文音節(jié)在一個詞語中位置的過程,然后采用機器學(xué)習(xí)方法對藏文詞進(jìn)行標(biāo)注。于洪志等[5]在最大熵藏文詞性標(biāo)注模型中融入了藏文音節(jié)特征,對詞性標(biāo)注模型結(jié)果有顯著提升。賴文等[6]將藏文音節(jié)應(yīng)用到藏漢機器翻譯研究中,在Seq2Seq、RNNSearch、Fairseq、Transformer四種方法中均驗證基于藏文音節(jié)切分的方法優(yōu)于藏文詞切分的方法??梢姡匚囊艄?jié)切分的方法在藏文信息處理的多個任務(wù)中都取得了較大成功。
大部分的基于傳統(tǒng)機器學(xué)習(xí)方法的文本相似度計算都使用特征工程(feature engineer)、外部資源相結(jié)合的方法。其中,常用的特征有基于句子內(nèi)部的(如句子組成成分、句法特征等),以及使用外部方法或工具抽取的特征(如詞語相似度、主題模型、神經(jīng)語言模型等)。常用的外部資源如WordNet、名實體詞典、本體庫等。將特征與外部資源組合后,使用一個或多個模型組合的方法,搭建句子語義相似度計算系統(tǒng)。
最近,深度神經(jīng)網(wǎng)絡(luò)的各種方法也被廣泛應(yīng)用到文本相似度計算任務(wù)中。He等[7]提出多視角卷積神經(jīng)網(wǎng)絡(luò)的方法(multi-perspective convolutional neural networks,MPCNN)進(jìn)行句子相似度計算。該方法首先在卷積神經(jīng)網(wǎng)絡(luò)層對輸入的句對分別建模,在句子表示層提出兩種卷積核和三種池化方法,從多視角提取句子特征,然后傳輸?shù)骄渥酉嗨贫扔嬎銓?、全連接層,輸出相似度值或類別概率值。Kai等[8]針對傳統(tǒng)LSTM模型只能處理序列信息,無法處理樹狀結(jié)構(gòu)信息的缺點,提出了TreeLSTM模型,分別針對樹狀多分支、子節(jié)點無序和多分支、子節(jié)點有序的樹提出Dependency Tree-LSTMs和Constituency Tree-LSTMs兩種模型,在英文的句子語義相關(guān)性測量任務(wù)中均取得較好結(jié)果。
相對于單語言文本相似度計算任務(wù),跨語言文本相似度計算由于源語言、目標(biāo)語言在詞、語序等各方面均存在較大差異的原因而更具挑戰(zhàn)性。為了解決這些問題,很多人將跨語言文本相似度計算任務(wù)通過機器翻譯方法,轉(zhuǎn)變成單語問題,然后計算單語文本之間的相似度。該方法存在很多缺陷: (1) 本文的研究內(nèi)容是跨語言文本剽竊檢測研究的子任務(wù),所以待檢測的文本內(nèi)容大多是領(lǐng)域相關(guān)的,而當(dāng)前的低資源語言機器翻譯系統(tǒng)還不足以生成高質(zhì)量的譯文,無法確保是否能覆蓋原文的意思;(2) 機器翻譯造成的譯文不準(zhǔn)確等問題會形成累積誤差,并傳輸?shù)轿谋鞠嗨贫扔嬎闳蝿?wù)中,影響系統(tǒng)性能。基于以上問題,本文提出一種有效解決方法,直接使用跨語言句對作為輸入來計算句子間的語義相似度。
SemEval 2016的第一個評測子任務(wù)是英語—西班牙語跨語言文本相似度計算,評測給出了包含 2 973個訓(xùn)練句對,以及兩個測試集,分別是301句對新聞領(lǐng)域語料、294句對多來源語料。參加評測的11個系統(tǒng)中,只有3個系統(tǒng)嘗試使用真正的跨語言方法[9]。CNRC首先抽取句子的詞法語義特征,結(jié)合句對的淺層語義結(jié)構(gòu),在英語—西班牙語任務(wù)上的皮爾遜相關(guān)系數(shù)為0.567。FBK使用機器翻譯中的質(zhì)量評估特征(quality estimation features)和雙語詞向量特征,結(jié)合回歸模型,在該任務(wù)上的皮爾遜相關(guān)系數(shù)為0.395 3。
孿生長短時記憶網(wǎng)絡(luò)(siamese long-short term memory network)由Mueller等人提出[10],已成功應(yīng)用在英語文本語義相似度計算任務(wù)中[11]。孿生LSTM網(wǎng)絡(luò)由兩個平行的、共享權(quán)重的LSTM網(wǎng)絡(luò)構(gòu)成,模型的輸入為英文句對以及英文詞向量,Mueller等人在實驗中計算句對相似度值時僅取句子在隱層中的最后一個狀態(tài)(對應(yīng)圖2中的h4(a)和h5(b)),而丟棄了句中的其他信息。因此,本文在隱層和輸出層之間加入注意力機制層,旨在充分利用每個句子的信息,該部分內(nèi)容可參考文獻(xiàn)[12]。
基于注意力機制的孿生LSTM網(wǎng)絡(luò)框架圖如圖2所示,模型共包括5層。輸入層: 輸入待檢測的單語或雙語句對;嵌入層: 將輸入的句子進(jìn)行向量表示;隱藏層: 挖掘句對的深層語義信息;注意力層: 生成句子的權(quán)重向量;輸出層: 輸出句對的相似度值。本文所提出的基于注意力機制的孿生長短時記憶網(wǎng)絡(luò)不同于傳統(tǒng)的文本剽竊檢測方法,可以直接以待檢測句對和詞向量作為輸入,無需任何先驗知識。
圖2 基于注意力機制的孿生LSTM網(wǎng)絡(luò)框架
本文基于FastText方法訓(xùn)練詞向量和音節(jié)/字向量,F(xiàn)astText是Facebook于2016年開源的高效訓(xùn)練詞向量的方法。表1中給出了實驗中漢文、藏文訓(xùn)練語料的具體統(tǒng)計數(shù)據(jù)。
表1 訓(xùn)練語料統(tǒng)計數(shù)據(jù)
表1中的漢文、藏文詞向量為Facebook開源的預(yù)訓(xùn)練詞向量,因其未公開訓(xùn)練詞向量的語料,無法統(tǒng)計其訓(xùn)練語料的句子數(shù)量、詞語數(shù)量和音節(jié)數(shù)量,因此表中只列出了預(yù)訓(xùn)練詞向量的文件規(guī)模以及詞向量文件中的詞數(shù),以供參考。其中藏文的訓(xùn)練詞向量規(guī)模較小,僅有32.1MB,因此本文重新訓(xùn)練一個稍大規(guī)模的藏文詞向量。實驗中所使用的詞向量均為300維。
在低資源語言自然語言處理任務(wù)中,缺少語料資源,尤其跨語言資源是非常普遍的問題,給研究帶來了巨大挑戰(zhàn)。在本文的藏文改寫檢測任務(wù)中,由于在訓(xùn)練過程中缺少藏文和藏漢跨語言語料,不可避免地會帶來數(shù)據(jù)稀疏問題,訓(xùn)練的模型也不能充分地學(xué)習(xí)到深層語義特征,而數(shù)據(jù)增強(data augment)方法的提出可以有效利用現(xiàn)有的語料資料擴(kuò)充模型訓(xùn)練所需的語料,在一定程度上緩解數(shù)據(jù)稀疏問題。該技術(shù)已被成功應(yīng)用在圖像處理任務(wù)、語言模型訓(xùn)練以及機器翻譯任務(wù)中[13-14]。Sennrich 首次提出在低資源語言機器翻譯任務(wù)中使用單語語料構(gòu)造偽平行句對[15],來擴(kuò)充訓(xùn)練語料的方法。蔡子龍等[16]對句子中最相似的兩塊內(nèi)容進(jìn)行位置的互換,形成新的句子,將訓(xùn)練語料規(guī)模擴(kuò)充了一倍。
本文中使用的實驗語料為SemEval 2014中的評測語料SICK,共10 000個句對,每句帶有人工標(biāo)注的范圍為[0,5]句子相似度值標(biāo)簽,其中,0表示兩個句子的內(nèi)容無任何相似性,5表示兩個句子的內(nèi)容完全相同。本文將英文、漢文、藏文單語SICK語料分別記作SICK_en、SICK_cn、SICK_tib,將漢—藏跨語言SICK語料記作SICK_cn-tib。關(guān)于論文中實驗語料的詳細(xì)介紹可參考文獻(xiàn)[12]。單語語料樣例如表2所示。第一組句子間的相似度值為4.7,第二組句子間的相似度值為1.2。
表2 實驗語料樣例
續(xù)表
本文提出基于數(shù)據(jù)增強的訓(xùn)練語料擴(kuò)充方法,即在已訓(xùn)練好的漢語孿生長短時記憶網(wǎng)絡(luò)模型上,對藏漢平行語料中的漢語句子進(jìn)行相似度計算,并將計算所得的相似度值引申到相應(yīng)的藏漢句對中,生成具有相似度值標(biāo)簽的藏漢句對。此處,默認(rèn)藏漢平行句對中平行的句子語義完全相同,相似度值為5。
本文首先使用SCIK_cn語料庫中的10 000個漢文句對訓(xùn)練漢文單語Siamese LSTM網(wǎng)絡(luò)模型,基于該模型對其他語料計算漢文句對的相似度值,從而獲得包含相似度值標(biāo)簽的偽句對。本文的目的是對跨語言實驗中的訓(xùn)練語料規(guī)模進(jìn)行擴(kuò)充,即擴(kuò)充SICK_cn-tib語料庫中的帶相似度值標(biāo)簽的藏漢句對數(shù)量。CWMT評測中提供了14.6萬的藏漢平行語料,其中的藏漢平行句對意義相同,本文將其相似度值標(biāo)為5,然后基于漢文單語Siamese LSTM網(wǎng)絡(luò)模型對藏漢平行句對中的漢語句子計算相似度值,并將相似度值擴(kuò)展至藏漢句對之間,生成的句對樣例如表3所示。
cn和tib代表CWMT藏漢平行語料中的漢語句子和藏文句子。cn1、cn2是任意兩個漢語句子,因平行句對的句子意義是完全相同的,漢—漢句子的相似度值可推至藏—藏句子,然后推至藏漢句子,具體計算如式(1)~式(3)所示。
表3 基于數(shù)據(jù)增強方法生成的藏漢句對樣例
續(xù)表
根據(jù)上述的構(gòu)造語料方法,本文共構(gòu)造了21萬藏漢句對用于訓(xùn)練Siamese LSTM藏漢跨語言網(wǎng)絡(luò)模型。
本文在進(jìn)行藏漢跨語言改寫檢測實驗前,首先基于SICK_cn、SICK_tib漢文和藏文語料進(jìn)行了藏文改寫檢測實驗,旨在訓(xùn)練漢文和藏文改寫檢測模型,為數(shù)據(jù)增強擴(kuò)充訓(xùn)練語料方法提供生成語料的模型。
為獲取最優(yōu)的漢文和藏文改寫檢測模型,本文對比了藏文音節(jié)向量和藏文詞向量在藏文改寫檢測任務(wù)中的實驗結(jié)果,也對漢語的字向量和詞向量在漢語文本改寫檢測任務(wù)中的結(jié)果,如表4、表5所示。
表4 基于藏文詞向量/音節(jié)向量的對比實驗
表5 基于漢文詞向量/字向量的對比實驗
可以看出,基于藏文音節(jié)向量的注意力機制的孿生長短時記憶網(wǎng)絡(luò)模型的皮爾森相關(guān)系數(shù)可達(dá)到0.678,明顯高于藏文詞向量模型的結(jié)果。同樣,漢文字向量的實驗結(jié)果也優(yōu)于漢文詞向量的實驗結(jié)果。
表6中列舉的藏文句對是基于藏文音節(jié)向量方法和基于藏文詞向量方法訓(xùn)練模型的輸出結(jié)果,表格中“標(biāo)注值”一列是指人工標(biāo)注的句對相似度值;“輸出值_音節(jié)”一列的結(jié)果是使用訓(xùn)練的藏文音節(jié)向量作為輸入時基于注意力機制的孿生長短時記憶網(wǎng)絡(luò)的輸出值;“輸出值_詞”一列的結(jié)果是使用藏文詞向量作為輸入時基于注意力機制的孿生長短時記憶網(wǎng)絡(luò)的輸出值。
表6 藏文單語句對檢測結(jié)果樣例分析
總體看來,基于音節(jié)向量的模型的效果明顯優(yōu)于基于詞向量的模型的實驗效果。進(jìn)一步驗證了前文中藏文音節(jié)向量的實驗結(jié)果優(yōu)于詞向量實驗結(jié)果的結(jié)論,為藏文單語文本剽竊檢測研究打下了良好基礎(chǔ)。
本文在藏漢跨語言改寫檢測實驗中,以數(shù)據(jù)增強方法生成的21萬藏漢句對作為訓(xùn)練語料,分析不同語料規(guī)模對藏漢跨語言改寫檢測實驗的影響,實驗結(jié)果如表7和圖3所示。
表7 基于數(shù)據(jù)增強方法生成語料對實驗的影響
基線實驗結(jié)果為使用Sick_tib的10 000藏文句對訓(xùn)練模型的結(jié)果,其皮爾遜相關(guān)系數(shù)為0.150 5,表明系統(tǒng)輸出的相似度值與人工標(biāo)注的相似度值僅僅達(dá)到弱相關(guān)程度,可信度極低;增加到14 994句對后,實驗結(jié)果顯著提高,實驗的皮爾森相關(guān)系數(shù)達(dá)到了0.229 1,當(dāng)增加到50 994句對時,實驗的皮爾森相關(guān)系數(shù)可達(dá)到0.406 2,較1萬句對的基線實驗結(jié)果提升了0.25,表明系統(tǒng)輸出的句對相似度值與人工標(biāo)注的相似度值已達(dá)到中等相關(guān)程度。
圖3 基于注意力機制的孿生LSTM網(wǎng)絡(luò)框架
當(dāng)訓(xùn)練語料累加到207 975句對時,實驗結(jié)果的皮爾森相關(guān)系數(shù)為0.547 6,系統(tǒng)輸出的結(jié)果與人工標(biāo)注的相似度值達(dá)到了中等相關(guān)程度,可見訓(xùn)練語料的增加對系統(tǒng)性能的提升比較明顯。當(dāng)訓(xùn)練語料增加到217 975句對時,皮爾森相關(guān)系數(shù)開始下降,分析其原因是因為生成語料是使用漢語單語基于注意力機制的孿生長短時記憶網(wǎng)絡(luò)生成的,而漢語單語模型實驗結(jié)果最高時,皮爾森相關(guān)系數(shù)為0.678,雖然該結(jié)果表明系統(tǒng)輸出的句對相似度值與人工標(biāo)注的相似度值已達(dá)到強相關(guān),但是尚未達(dá)到極強相關(guān)。在生成語料的過程中會存在誤差,隨著訓(xùn)練語料的增多,誤差也逐漸累積,當(dāng)達(dá)到一定程度時,對模型效果會產(chǎn)生負(fù)面影響。
Marzieh Fadaee等人在英德神經(jīng)機器翻譯研究中基于單語語料,使用實驗系統(tǒng)生成英德偽平行句對,然后用生成的偽平行句對訓(xùn)練英德機器翻譯系統(tǒng)。在實驗中分析了真實語料與生成語料在不同比例下的系統(tǒng)性能,發(fā)現(xiàn)真實語料與生成語料在1∶4的時候效果最優(yōu),在1∶10的時候系統(tǒng)性能開始下降,翻譯質(zhì)量與語料量并未呈線性增長趨勢。作者分析原因,認(rèn)為生成的偽平行句對并無法像人工翻譯的句子一樣精確、流利,而神經(jīng)機器翻譯模型對于許多種噪聲的容錯能力并不好,導(dǎo)致用生成語料作為訓(xùn)練語料時,隨著訓(xùn)練語料的增加,生成語料中的誤差也逐漸遞增,在語料增加到一定階段時,系統(tǒng)性能開始下降。本文所使用的生成訓(xùn)練語料的方法與Marzieh Fadaee等人的方法類似,在真實語料與生成語料比例達(dá)到1∶20時,系統(tǒng)性能開始下降,與Marzieh Fadaee等人在英德神經(jīng)機器翻譯研究中的實驗結(jié)果基本一致。
此外,本文在增加訓(xùn)練語料實驗的過程中抽取部分句對樣例進(jìn)行對比分析。在此抽取了14 994,151 988, 207 975語料規(guī)模的3種實驗的句對樣例進(jìn)行對比分析,因為這三個實驗的皮爾遜相關(guān)系數(shù)具有明顯的區(qū)分度。輸出樣例如表8所示。
表8 不同訓(xùn)練語料規(guī)模下跨語言實驗句對樣例
從表8中的句對可以看出,增加訓(xùn)練語料后,模型對句對相似度值的判定更接近人工標(biāo)注值,也進(jìn)一步證明了本文在藏漢跨語言文本剽竊檢測研究中針對缺少訓(xùn)練語料的問題,提出的基于數(shù)據(jù)增強的訓(xùn)練語料擴(kuò)充方法的有效性。但該方法在擴(kuò)充訓(xùn)練語料的同時也在藏漢文本剽竊檢測模型中引入了噪聲,當(dāng)噪聲累積到一定程度時,對系統(tǒng)性能造成了負(fù)面影響。
本文提出基于數(shù)據(jù)增強的訓(xùn)練語料擴(kuò)充方法生成21萬句對帶有相似度值標(biāo)簽的訓(xùn)練語料。實驗結(jié)果表明,訓(xùn)練語料的增加對藏漢跨語言文本剽竊檢測模型性能的提升有明顯的作用,實驗在訓(xùn)練語料為21萬句對時實驗的皮爾森相關(guān)系數(shù)為0.547 6,相比于未擴(kuò)充訓(xùn)練語料時的1萬句對的實驗結(jié)果有大幅度的提升。最終,藏漢跨語言文本剽竊檢測模型對藏漢文本的檢測結(jié)果與人工標(biāo)注的藏漢句對的相似度值可達(dá)到中等程度的相關(guān),證明了本文所提出方法的有效性。在藏文單語文本剽竊檢測研究任務(wù)中,針對藏文語料稀疏、分詞結(jié)果存在錯誤等問題,本文使用藏文音節(jié)向量的方法,緩解了藏文詞向量帶來的誤差,提高了藏文剽竊檢測模型的效果,基于藏文音節(jié)實驗的皮爾森相關(guān)系數(shù)可達(dá)到0.678,表明基于注意力機制的孿生長短時記憶網(wǎng)絡(luò)模型輸出的句對相似度值與人工標(biāo)注的句對相似度值達(dá)到強相關(guān)程度。