汪一百, 陳 實, 葉劍鋒
(1.新型藥物制劑研發(fā)湖南省重點實驗室培育基地,湖南 長沙 410219; 2.長沙醫(yī)學院 信息工程學院,湖南 長沙 410219;3.南京航空航天大學 機電學院,江蘇 南京 210016)
隨著互聯(lián)網(wǎng)技術和計算機硬件設計的快速發(fā)展,以及各類新業(yè)務、新需求的不斷涌現(xiàn),現(xiàn)代社會的數(shù)據(jù)信息呈現(xiàn)爆發(fā)式增長.在這些海量數(shù)據(jù)中,信息共享程度越來越高,給人們的工作和生活帶來極大便利的同時,也給識別、區(qū)分和查找有效數(shù)據(jù)帶來了非常大的困難.如何鑒別信息的相似性已經(jīng)成為了海量數(shù)據(jù)文本處理中亟待解決的課題[1].
文本相似度是表示兩個及以上文本之間匹配程度的一個度量,其取值的大小反映了文本相似程度的高低.取值越小,文本相似度越低;取值越大,文本相似度越高.一般來說,文本相似度計算可以分為兩個方面:語義相似度計算和非語義相似度計算.文本相似度計算是自然語言處理中的基礎問題,在信息檢索、自動問答和機器學習等領域應用廣泛[2].目前,已有很多成熟的研究方法可用于非語義文本相似度的計算.然而,語義文本相似度計算仍然有很多工作要做[3].
文獻[4]針對傳統(tǒng)文本相似度計算的缺點,提出了一種考慮文本向量空間模型相似度比較、文本長度參數(shù)和互信息特征次抽取的改進算法,有效提高了文本相似度計算的準確性和有效性.文獻[5]在DNA序列比對算法的啟發(fā)下,提出了一種基于詞位置與序列匹配的相似度計算方法(文本流算法),實驗結(jié)果表明了所提算法在釋義檢測、文本蘊涵識別和文檔聚類中的優(yōu)越性.文獻[6]提出了一種基于字袋特征和多層語義特征的新型文本分類方法,通過將在線線性辨別分析擴展為多層主題模型,即可實現(xiàn)文本的語義要素提取.文獻[7]針對生物醫(yī)學領域中的句級語義相似度計算,提出了字符串相似度、分布式向量、一般及特定領域本體等多種檢測算法,并綜合這些算法研發(fā)了基于監(jiān)督回歸的相似度計算模型.文獻[8]利用DNA計算技術實現(xiàn)了磨損刀具圖片的相似度檢測,為圖片文本的模式識別提供了一種解決方案.文獻[9]針對臨床決策支持系統(tǒng)中的文本相似度計算問題,提出了一種考慮語義相似關鍵詞和文本相似關鍵詞對文本相似度所產(chǎn)生的影響的改進方法,提高了計算結(jié)果的準確性.
本文在上述研究的基礎上,提出一種基于神經(jīng)網(wǎng)絡深度學習和高頻詞濾波的文本相似度計算方法:在建立詞向量模型的基礎上,利用深度學習算法計算文本語義相似度,并利用高頻詞濾波降低詞頻對文本相似度的干擾,從而提高計算精度,保證計算效率.此外,通過對大量中文詞庫中的內(nèi)容進行訓練驗證了所提方法的有效性.
為了計算文本相似度[10],首先必須對文本中的詞進行建模,因此首先給出包括輸入層、中檢測、輸出層的詞向量模型建立方法.文本中的句子S可以表示為詞的向量W,即
S→W=(W1,W2,…,Wn),
式中Wi代表詞的權(quán)重,i=1,2,…,n.通過求取詞W的上下文[11]Con(W),即可得到包括r個詞向量的輸入層R,即
通過對輸入層R中的向量進行累積求和,即可得到中間層M:
此時,利用下式即可計算得到詞向量的輸出:
(1)
由于公式(1)得到的詞向量還存在一定的冗余,因此需要對其進行優(yōu)化.此時,通過把區(qū)間[-5,5]進行500等分,得到x1,x2, …,x500,計算每個xk(k=1, 2, …, 500)的Logistic函數(shù):
此時,即可利用下式對公式(1)所示的輸出層詞向量進行訓練,得到向量T:
式中a為訓練次數(shù).最后,通過下式刪除T中的高頻詞,即可得到優(yōu)化后的輸出層詞向量F:
式中γ為高頻濾波常數(shù).通過這些優(yōu)化措施,即可實現(xiàn)輸出層詞向量免受干擾影響,并大幅度降低信息冗余.
在計算文本相似度之前,需要計算表征詞一致性程度的語義距離[12],其取值越大表明詞一致性程度較高,反之則較低.詞向量Y=(y1,y2, …,yn)、Z=(z1,z2,…,zn)之間的語義距離為:
在利用詞向量計算語義文本相似度的基礎上,即可通過計算特征詞語義相似度來比較文本的相似度,這是文本相似度計算的主要方法.文本相似度U計算公式如下:
U=2θ/(θY+θZ),
式中θ代表文本長度.
表1 語料庫
表2 語義距離結(jié)果
為了驗證所提方法的有效性,利用網(wǎng)絡爬蟲從“百度新聞”“新浪新聞”“騰訊新聞”等多個網(wǎng)站獲取語料庫,用于實驗分析(如表1所示),并與傳統(tǒng)的、基于漢明距離的文本相似度計算方法[13]進行了對比.
在表1所示語料庫中選擇約2 000 000個中文句子進行詞向量訓練,獲得約800 M詞向量文件,同時選擇中心詞“房價”來計算語義距離,得到表2所示的結(jié)果.
從上述結(jié)果可以看出,越靠近中心詞的單詞,語義距離就越大.然而部分詞從直觀上講與中心詞的語義距離應該不會很大,但計算結(jié)果卻變得比較大,這可能是由于語料中存在關聯(lián)單詞導致的.因此,語料庫的選定對詞向量的訓練結(jié)果有著重要的影響.
在分析完語義距離計算的相關問題后,開始利用基于漢明距離的算法和提出的算法分別計算純文本的文本相似度.測試文本由網(wǎng)絡爬蟲從新浪新聞網(wǎng)站獲得,包括8 500組需要進行比較的純文本和10組需要比較的語義文本,計算結(jié)果分別如圖1、2所示.
對于純文本來說,基于漢明距離算法計算的文本相似度為0.576,而利用提出的算法計算的文本相似度為0.915.對于語義文本來說,基于漢明距離算法計算的文本相似度為0.358,而利用提出的算法計算的文本相似度為0.952.
由此可知,對于純文本,當文本的相似度較高或者較低時,這兩種算法的計算結(jié)果幾乎相同;而當文本部分相似時,這兩種方法則存在比較明顯的區(qū)別.這是因為漢明距離算法只能處理相同關鍵詞的關聯(lián)關系,而提出的算法則可以處理文本中的所有詞.對于語義文本,提出的方法明顯好于漢明距離算法.這是因為漢明距離算法只能處理相同的關鍵詞,而當這些相同的關鍵詞較少或較多時,計算結(jié)果會變得很差.但是,詞向量方法則可以直接計算出語義距離,從而簡化了文本相似度計算復雜度,大大提升了計算精度.
本文提出一種基于深度學習方法的文本相似度計算方法,通過與基于漢明距離的算法進行實驗對比,證明提出的基于深度學習的詞向量方法不僅保證了非語義文本的相似度計算的準確性,而且提高了語義相關文本之間的相似度計算精度.
參考文獻
[1] 高雪霞, 炎士濤. 基于WordNet詞義消歧的語義檢索研究[J]. 湘潭大學自然科學學報, 2017, 39(2): 118-121.
[2] 曹海, 彭龑. 一種基于圖像內(nèi)容的對應關系在語義檢索中的應用[J]. 湘潭大學自然科學學報, 2017, 39(2):122-126.
[3] 武永亮, 趙書良, 李長鏡,等. 基于TF-ID F和余弦相似度的文本分類方法[J]. 中文信息學報, 2017, 31(5): 138-145.
[4] WANG J,YANG L,YAN T, et al. Text similarity computing method based on vector space model[J]. Science Mosaic, 2017(2):9-13.
[5] MRABET Y,KILICOGLU H,DEMNER-FFSHMAN D. TextFlow: a text similarity measure based on continuous sequences[C]//Acl: the Conference of the Association of Computational Linguisitics, 2017: 118-125.
[6] CHEN H C,GUO X H,LIU L Q, et al. A short text similarity measure based on hidden topics[C]//International Conference on Computer Science & Technology, 2017: 1101-1108.
[7] SOGANCIOGLU G, ?ZTüRK H, ?ZGüR A. BIOSSES: a semantic sentence similarity estimation system for the biomedical domain[J]. Bioinformatics, 2017, 33(14): 41-49.
[8] D’ADDONA D M,ULLAH A M M S,MATARAZZO D. Tool-wear prediction and pattern-recognition using artificial neural network and DNA-based computing[J]. Journal of Intelligent Manufacturing, 2017, 28(6): 1-17.
[9] WANG W,JIANG Q,LV T, et al. An improved text similarity algorithm research for clinical decision support system[C]//International Conference on Cloud Computing & Intelligence Systems, 2016: 155-159.
[10] 邢長征, 趙全穎, 王偉,等. 基于優(yōu)化密度的耦合空間LDA文本聚類算法研究[J]. 計算機應用研究, 2017, 34(7): 1966-1970.
[11] CHEN Y,LIN Z, ZHAO X, et al. Deep learning-based classification of hyperspectral data[J]. IEEE Journal of Selected Topics in Applied Earth observations & Remote Sensing, 2017, 7(6): 2094-2107.
[12] 黨紅恩,趙爾平,劉煒,等.利用數(shù)據(jù)變換與并行運算的閉頻繁項集挖掘方法[J]. 湘潭大學自然科學學報, 2018, 40(1): 119-122.
[13] 胡維華, 鮑乾, 李柯. 結(jié)合漢明距離及語義的文本相似度量方法研究[J]. 杭州電子科技大學學報, 2016, 36(3): 36-41.