劉 嬌,崔榮一,趙亞慧
(延邊大學 計算機科學與技術(shù)學院 智能信息處理研究室,吉林 延吉 133002)
互聯(lián)網(wǎng)包含的海量數(shù)據(jù)使人們足不出戶依然可以深入了解全球多元文化。在這樣的環(huán)境下,對不同語言形式的數(shù)據(jù)進行綜合分析和利用成為不可或缺的信息需求。作為跨語種文檔處理方法的基礎(chǔ),不同語種文檔之間的相似度計算是在不同語種文檔間建立語義等價關(guān)系的基礎(chǔ)性工作。近年來對跨語種文檔的相似度計算方法一直在突破中,它被廣泛應用于跨語種文獻抄襲檢測、多語種網(wǎng)頁去重、跨語言檢索等任務。
Barrón等人[1]的CL-ASA算法結(jié)合概率翻譯,通過統(tǒng)計雙語字典和相似性分析,在字詞級別對齊文檔基礎(chǔ)上形成平行語料庫,可將任意文檔與語料庫中的文檔進行匹配計算。Potthast等[2]在維基百科多語種概念庫的基礎(chǔ)上提出了CL-ESA算法,即任意文檔都用長度為N的語言無關(guān)向量表示,計算給定文檔與N個wiki概念間的相關(guān)程度,用計算所得向量之間的余弦距離來代表文檔間的相似度。由于每個wiki概念都表示為多語種形態(tài),所以任意文檔都可在維基百科這個可比語料庫中計算[3],但是若要獲得高精度的計算結(jié)果需要規(guī)模比較大的語料庫。Franco等人[4]提出的CL-KGA算法根據(jù)文檔內(nèi)容生成跨語種的語義網(wǎng)絡,這個網(wǎng)絡是一個加權(quán)和標記過的圖譜,可以與一組詞表示的原始概念聯(lián)系起來,加以擴展可表示與上下文之間的關(guān)系,從而在語義空間中實現(xiàn)了衡量跨語種文本的相似度?;跈C器翻譯[5]的跨語種相似度計算方法則使用機器翻譯方法將不同語種的信息統(tǒng)一到同一個空間中,再借用單語言領(lǐng)域的相似度計算方法進行計算。Mikolov等人[6]通過構(gòu)造關(guān)于不同語種空間的結(jié)構(gòu)模型,證實了不同語種空間中詞和詞之間的線性關(guān)系可以用作機器翻譯,對英語和西班牙語的翻譯準確率高達90%。
本文結(jié)合Mikolov和Potthast的思想,利用翻譯語料庫獲得隸屬于不同語種的各個詞語在每篇文檔中的權(quán)重,得到每個詞語關(guān)于各個文檔的權(quán)重向量。這個向量是語言無關(guān)的詞向量,而最相關(guān)的兩個詞向量在各個文檔中的分布相似,可認為它們共現(xiàn)。即兩個不同語種的詞若互為共現(xiàn)詞,則它們在各自的語種空間中的分布也相近。利用翻譯語料庫獲得不同語種間詞的共現(xiàn)信息,對給定的兩個不同語種的文檔,利用詞共現(xiàn)關(guān)系[7-8],將其中一個文檔向量映射到另一語種空間中,再將文檔投射到潛在語義空間中。映射和投射的過程保留了文檔的語義信息,最終使兩個文檔得以在同一語種空間中計算相似度。該方法不需借助外部詞典、語言學知識和人工標注語料的指導,計算快速簡便,即使在小規(guī)模語料庫中也可獲得較好的效果。
基于語料的共現(xiàn)詞獲取方法是基于分布性假設[9],它基于大規(guī)模語料庫,將詞語在各個文檔中的分布表示成向量,通過計算向量間的相關(guān)度來選取共現(xiàn)詞。在語料庫中,若兩個詞通常共現(xiàn)在同一篇文檔中,則可認為這兩個詞在語義上相互關(guān)聯(lián)。共現(xiàn)詞的概念大都被應用于信息檢索的查詢擴展中,當一篇文檔與查詢要求相關(guān)但是不包含查詢詞語的時候,可以通過查詢擴展即共現(xiàn)詞作為相關(guān)信息進行查詢[10-11]。本文將共現(xiàn)詞應用于跨語種文檔相似度的計算中,在其他語種的文檔中統(tǒng)計出對應于各個英語詞語的共現(xiàn)詞。共現(xiàn)詞對不同于詞典中的翻譯詞對,互為共現(xiàn)詞不一定能直譯,但是語義高度相關(guān)。例如,“考試”的共現(xiàn)詞可能不是“exam”,而是“paper”,它代表對出現(xiàn)“考試”這個詞的文檔來說,它所對應的英文文檔極可能會出現(xiàn)“paper”。因此,我們可通過對不同語言間的共現(xiàn)詞進行權(quán)重映射來獲得相似度計算結(jié)果。
對各語種的文檔集表示的向量空間模型構(gòu)成如下形式的詞項—文檔矩陣,如式(1)所示。
(1)
每個語種的文檔集都可表示成如上形式,每一列代表文檔集中的文檔向量,每行代表一個詞向量,n為文檔數(shù)目,m為單詞數(shù)目,wmn為第m個詞在第n個文檔中的tf-idf權(quán)重[12],那么語種A和語種B向量空間模型的詞項—文檔矩陣可以用CA和CB表示,這兩種語言之間的共現(xiàn)詞獲取遵循以下二元關(guān)系,如式(2)所示。
(2)
其中,
(3)
其中,VA和VB分別表示語種A和語種B文檔集的詞項序號集。B-index(j)的值為語種B文檔集中與語種A文檔集的第j個單詞共現(xiàn)的詞項序號。在式(3)中調(diào)換語種標示符號A和B,即可獲取語種A文檔集中對應于語種B文檔集第j個單詞的共現(xiàn)詞序號A-index(j)。通過式(2),可以得到一個共現(xiàn)詞表。
針對t篇測試集文檔(待計算相似度的文檔)向量進行共現(xiàn)詞映射,將語種A的文檔向量映射為語種B的文檔向量,如式(4)所示。
f:R|VA|×t→R|VB|×t
(4)
在此映射下,語種B的文檔向量通過語種A的文檔向量確定,兩個語種文檔向量的詞項—文檔矩陣元素關(guān)系如式(5)所示。
(5)
映射(4)并不是一一對應映射,CB的元素可能沒有原像或者有不同的多個原像。沒有原像的CB元素值置為0。這對應于多個A語種單詞對應的共現(xiàn)詞為同一個B語種單詞的情況,如圖1所示。CB中某位置已有元素的情況下再產(chǎn)生映射,該位置會被后映射的元素覆蓋。所以A語種文檔向量映射為B語種向量時,向量會變得非常稀疏,這勢必會影響相似度的計算。
圖1 共現(xiàn)詞映射過程
解決前述稀疏向量的方案是將向量投影到語種B的潛在語義空間中,在這個空間中,通過降維方式來壓縮缺失的部分向量,即對語種B的矩陣做奇異值分解(singular value decomposition, SVD)。在同一個語義空間中,對矩陣進行的壓縮只是將許多近義項合并,這個過程消除了噪聲,同時也減小了高度稀疏的矩陣對實驗的影響[13],下文中將基于潛在語義分析的同義詞映射簡寫為CO -SVD。在潛在語義分析模型中,詞項—文檔矩陣為C(維數(shù)為M×N),詞項即為特征,一般情況下,特征數(shù)會多于文檔數(shù),即M>N。為了得到語料庫中同一語種空間下的特征之間的相關(guān)性,對C做奇異值分解得式(6)。
C=UΣVT
(6)
設rank(C)=r,則存在l,使l (7) 對這兩個投影結(jié)果計算余弦相似度,如式(10)所示。 (10) SimA-B的結(jié)果代表的是使用式(5)將語義空間從語種A轉(zhuǎn)化到語種B后的向量和同源翻譯向量在語種B潛在語義空間中的相似度,以此來度量不同語種文檔間的相似程度。 Step1將收集的文獻分為訓練集和測試集兩部分,其中訓練集用于構(gòu)建共現(xiàn)詞表和單語言語義空間,測試集用于構(gòu)建映射向量并在某種語義空間中計算文獻的相似度值。 Step2對不同語種的文獻分別進行分詞等預處理操作、特征選擇、特征值計算[14],最后構(gòu)造詞項-文檔矩陣。特征值的計算采用傳統(tǒng)的tf-idf算法[12],三種語言分別對應的三個特征矩陣,三個特征矩陣的文檔語義是按列對齊的。 Step3分別將各個矩陣中的詞向量與其他兩個矩陣的詞向量計算余弦距離,對每個詞向量取最大余弦值所在詞作為共現(xiàn)詞,形成一個包含不同語種的共現(xiàn)詞表。 Step4對三個語種的矩陣分別進行奇異值分解,構(gòu)造單語言語義空間模型,計算出當語義近似度為80%時的潛在語義空間維數(shù)k。 Step5將訓練集構(gòu)成的某語種詞項—文檔矩陣映射到另一個語種空間中,并與該語種空間中的矩陣(翻譯得到的同語義矩陣)一起通過Fold-in方法[15-16]加入到已經(jīng)構(gòu)建的單語言語義空間中,對投影得到的兩個矩陣按列進行向量間的余弦距離計算。 任意兩種語言之間的跨語種計算框架如圖2所示。 圖2 跨語種文獻相似度計算框架 獲取了英文—中文、英文—韓文、中文—韓文的共現(xiàn)詞表,部分結(jié)果如表1所示。 表1 部分共現(xiàn)詞表 在翻譯的過程中,一般會有一個不成文的規(guī)定,即上下文的翻譯盡量不出現(xiàn)重復的詞語,所以某些情況下,共現(xiàn)詞的特征值更能代表另一個語種中詞語的特征值,即它可以合理地運用到跨語種相似度的計算中。 本文實驗主要使用了兩種數(shù)據(jù): (1)Google翻譯的平行語料庫; (2)人工翻譯語料。 Dataset1來源于各個類別文獻的中文資料600篇,使用Google對中文文檔進行翻譯,得到中、英、韓文文檔一共1 800篇,形成了內(nèi)容對齊的翻譯語料庫。其中1 200篇為訓練集,600篇為測試集。Dataset2為人工翻譯的同等規(guī)模的平行語料庫。 為了測試機器翻譯得到的語料與人工語料的異同,分別對這兩個語料庫進行實驗。在實驗過程中,訓練集和測試集不交叉,因此本實驗屬于開放性實驗。 在本實驗中,面臨潛在語義階段的取值問題,SVD降維維數(shù)根據(jù)所保留前l(fā)個奇異值的平方和占總體的百分比p來確定,p一般取80%左右的值,可根據(jù)實驗方法評價其合理性。 將三種語言間的檢索和相似度計算分成三組實驗,每組實驗中包括兩種語言,根據(jù)SVD和CO-SVD算法計算: (1) 兩種算法條件下互相對齊的不同語種文檔之間余弦值的平均值; (2) 兩種算法條件下互相對齊的不同語種文檔之間檢索率的平均值。給定一篇語種A的文檔,在語種B的測試語料庫中逐篇查找譯文。對不同語種的測試文檔之間互相計算相似度,并對計算的相似度值進行降序排序,若不同語種的文檔之間余弦相似度最高的文檔對互為譯文,則認為檢索正確。 圖中橫軸為p的取值,范圍從0.5到0.95,左邊豎軸代表檢索率的大小,右邊豎軸為余弦值。實驗結(jié)果如圖3、圖4所示。 從圖3和圖4中可以看出,p的值越小,對齊的文檔間的余弦值就越大,但是p值的減小會降低對齊文檔的檢索率,這說明p的取值對跨語種文檔相似度的計算非常重要。根據(jù)實驗結(jié)果,當p取0.9時,檢索率總是能保持在最高水平。 圖3 不同p值下Dataset1的檢索率和余弦值 圖3 (續(xù)) 圖4 不同p值下Dataset2的檢索率和余弦值 圖4 (續(xù)) 為了驗證本文方法的有效性,采用三種方式對跨語種相似度的計算進行了實驗測評: (1)在多語種潛在語義空間中計算兩個語種的文獻的相似度[15]; (2)計算映射向量和對齊文檔向量之間的余弦值; (3)結(jié)合共現(xiàn)詞映射與潛在語義分析技術(shù)計算跨語種相似度。 表2中表頭為“英文—中文”的列結(jié)果表示共現(xiàn)詞表是由英文映射到中文的,后幾列的物理意義以此類推,而該列分為兩部分,第一部分是用200個測試集計算余弦值所得的結(jié)果,第二部分是測試集中余弦值大于0.7的測試文檔在測試集中的比重(大于0.7說明文檔信息還原度足夠高[17])。從表中可以看出,用共現(xiàn)詞映射的時候,文檔會丟失一部分信息,這體現(xiàn)在文檔向量的缺失上,所以這種方法計算得到的余弦相似度比較低。而共現(xiàn)詞與潛在語義結(jié)合的方法則體現(xiàn)出了它的優(yōu)勢,相比只用潛在語義空間投影的方法,它考慮到了兩種語言之間的信息共現(xiàn)性,結(jié)果證明,這種方法對同語義的跨語種文檔計算比較合適,信息還原度較高。 表2 跨語種文獻相似度計算結(jié)果 從表3中可以看出共現(xiàn)詞映射的方法對跨語種文檔的檢索能力有明顯提高,共現(xiàn)詞與潛在語義結(jié)合的方法效果更好,檢索到同內(nèi)容文檔的概率接近百分之百,這說明共現(xiàn)詞與潛在語義結(jié)合的方法保證了不同語種的信息在語種空間中自由轉(zhuǎn)換,保留文檔語義的同時實現(xiàn)了跨語種文獻相似度的計算。 表3 跨語種文獻譯文檢索結(jié)果 跨語種文獻的相似度計算對自然語言處理技術(shù)的發(fā)展起到了推進的作用,它跨越了語言的鴻溝,改善了信息交流的方式。本文以中英韓三個語種的文獻為載體,研究不同語種間文獻的相似性比較方法,可以將不同語言放在多語種空間中進行比較,也可以將不同的語種轉(zhuǎn)換到同一語種空間中進行計算。本文就是采用共現(xiàn)詞映射的方式轉(zhuǎn)變文獻的語種空間,再通過潛在語義分析壓縮向量來合并近義項。實驗結(jié)果表明,共現(xiàn)詞映射結(jié)合潛在語義分析可以有效地改進跨語種相似度的計算,也可以非常準確地找出不同語種的譯文。 該算法的優(yōu)點是: 不需要外部詞典或者非常大的平行語料庫,只需要小規(guī)模的文檔集就能得到不同語種的共現(xiàn)詞表,共現(xiàn)詞表不同于雙語詞典,表中不同語種的詞并不是一一對齊的,但是語義高度相關(guān),它的獲取方便而且效率高。此次訓練只針對了三個語種的小規(guī)模文檔集,下一步研究計劃將該應用擴展到其他語言中去,進一步驗證算法的有效性。 [2] Potthast M, Stein B, Anderka M. A wikipedia-based multilingual retrieval model[C]//Proceedings of the UK: Advances in Information Retrieval, European Conference on Ir Research, 2008: 522-530. [3] 胡弘思,姚天昉.基于維基百科的雙語可比語料的句子對齊[J].中文信息學報, 2016(1): 198-203. [4] Franco Salvador M, Gupta P A, Rosso P. Cross-language plagiarism detection using multilingual semantic network[J], Lecture Notes in Computer Science, 2013: 710-713. [5] 胡亞楠, 舒佳根, 錢龍華,等. 基于機器翻譯的跨語言關(guān)系抽取[J]. 中文信息學報, 2013, 27(5): 191-198. [6] Mikolov T, Le Q V, Sutskever I. Exploiting similarities among languages for machine translation[J]. arXiv preprint arXiv: 1309.4168, 2013. [7] 王明文,付翠琴,徐凡,等.基于詞項共現(xiàn)關(guān)系圖模型的中文觀點句識別研究[J].中文信息學報,2015, 29(6): 185-192. [8] 常鵬, 馮楠. 基于詞共現(xiàn)的文檔表示模型[J]. 中文信息學報, 2012, 26(1): 51-57. [9] Harris Z S. Mathematical structures of language[M]. NewYork: Wiley, 1968. [10] Adriani M. Using statistical term similarity for sense disambiguation in cross-language information Retrieval[J]. Information Retrieval, 2000,2(1): 67-78. [11] Pratibha Bajpai, Parul Verma, S Q Abbas. Improved query translation for English to Hindi cross language information retrieval[C]//Proceedings of the International Journal of Innovative Research in Computer and Communication Engineering, 2016. [12] 李國和,岳翔,吳衛(wèi)江,等.面向文本分類的特征詞選取方法研究與改進[J].中文信息學報,2015, 29(4): 120-125. [13] Fei Wang, Cai-hong Li, Jing-shan Wang, et al. A two-stage feature selection method for text categorization by using category correlation degree and latent semantic indexing[J]. Journal of Shanghai Jiaotong University, 2015, 20(1): 44-50. [14] 宗成慶.統(tǒng)計自然語言處理[M].北京: 清華大學出版社, 2013. [15] Mori T, Kokubu T, Tanaka T. Cross-lingual information retrieval based on LSI with multiple word spaces[C]//Proceedings of the 2nd NTCIR Workshop Meeting on Evaluation of Chinese & Japanese Text Retrieval and Text Summarization, 2001. [16] Bradford R, Pozniak J. Combining modern machine translation software with LSI for cross-lingual information processing[C]//Proceedings of the Eleventh International Conference on Information Technology: New Generations, 2014: 65-72. [17] 袁松翔. 基于譯文特征與譯文內(nèi)容的中英文跨語種抄襲識別技術(shù)研究[D].上海: 上海交通大學碩士學位論文, 2011.3 實驗結(jié)果及分析
3.1 實驗過程
3.2 共現(xiàn)詞表獲取結(jié)果
3.3 多語種數(shù)據(jù)集
3.4 跨語種文檔相似度計算結(jié)果
4 總結(jié)