999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于句向量的文本相似度計算方法

2020-07-14 00:51:58劉繼明于敏敏
科學技術與工程 2020年17期
關鍵詞:語義

劉繼明,于敏敏,袁 野

(重慶郵電大學經濟管理學院電子商務與現代物流重點實驗室,重慶 400065)

為了提高問答系統的性能,對于用戶輸入的常問問題,通常采用面向常見問題集FAQ(frequently asked questions)庫的問答策略。基于FAQ庫的限定域自動問答系統由于更具實用性而成為自然語言處理領域的研究熱點,而問題之間的相似度計算是FAQ中最關鍵的技術。問答系統中的句子相似度是指兩個問題的匹配符合程度,相似度用0~1之間的數值表示,數值越大兩個句子越相似[1]。

目前常見的計算句子相似度的方法有基于統計的、基于語義的、基于句法結構的、基于編輯距離的以及詞向量的方法[2]。基于統計的方法以詞頻-逆文檔頻率(term frequency-inverse document frequency, TF-IDF)算法及其改進算法為主,根據詞頻衡量該詞在句子中的重要程度并以此賦予權重,通過計算向量距離表示句子之間相似度。該方法主要從詞的表面特征進行匹配,計算復雜度低,速度快,但缺點是沒有考慮詞的語義本身,無法識別同義詞或近義詞[3]。基于語義信息的方法通過《同義詞詞林》《知網》、WordNet等語義資源對通用詞匯進行擴展,識別問句中的同義或近義信息,從而提高問句的匹配度。但該方法受限于知識源,不適用特定領域,且對人力成本和語言學知識要求高。基于句法結構的方法通過分析一個句子中的各個成分的依存關系得到有效配對,再計算有效配對之間的相似度得到句子之間相似度[4]。該方法引入句法特征,體現了句子內部的結構,但沒有考慮語義在句子中的作用,現有的依存句法分析準確率并不高。基于編輯距離的方法以詞串之間變化所需要的最少的編輯操作次數作為變量,衡量句子之間的相似度。雖然考慮了詞語順序,但是這種關系變化太過機械,無法體現出詞語在語句中不同位置對語義的影響。基于詞向量(word embedding)的方法[5]在大規模語料庫中訓練詞向量,然后將問句轉化為由詞向量構成的句向量計算問句的相似度。通過訓練特定領域的語料獲得的詞向量模型,能有效克服詞典在特定領域作近義詞查詢時準確度不高的問題。

基于詞向量的方法充分考慮語義特征并且解決了維度災難問題,具有良好的性能。基于神經網絡的word2vec在大規模語料條件下訓練出的詞向量包含了詞本身的含義以及詞與其他詞之間的聯系,是詞向量計算的有力工具。在進行句子相似度計算時,往往需要將詞向量轉化為句向量進行相似度比較,平滑反頻率(smooth inverse frequency,SIF)算法能夠將詞向量通過加權算法轉化為句向量,其核心思想是通過加權和去除噪聲得到句向量來計算句子相似度,相對于簡單平均加權和TF-IDF加權具有絕對優越性[6]。然而SIF算法主要從語義和詞頻角度進行加權計算,未考慮詞性與詞序因素,因此,提出基于word2vec與SIF改進的文本相似度計算方法,提高相似度計算的準確度。

1 相關研究

1.1 詞向量表示

傳統的詞表示方式為獨熱表示(one-hot representation),它將語料中所有非重復詞語數量作為向量的維數,每一個詞對應該向量的一個維度,對應位置的值為1,其余位全為0。假設詞表中有n個詞語,“集裝箱”在詞表中處于第1個,那么“集裝箱”詞向量表示為[1 0 0 0 …],“碼頭”在此表中處于第2個,其詞向量表示為[0 1 0 0 0…],即詞表中的n個詞都有唯一的離散向量表示。One-Hot編碼方法簡單,但缺點是容易引起維數災難,且詞向量孤立,無法判別語義關系。1986年Hinton[7]基于Harris的分布假說(distributional hypothesis)提出詞的分布式表示(distributional representation),能夠刻畫語義之間的相似度并且用維度較低的稠密向量表示詞語,即具有相似上下文的詞,應該具有相似的語義。例如“鐵路”“公路”和“蛋糕”3個詞中“鐵路”和“公路”相關性較大,這兩個詞對應的詞向量距離就小。另外分布式表示通過使用較低維度的特征刻畫詞語,大大降低了計算的復雜性。

2013年Mikolov等[8]開發的Word2vec作為深度學習模型中的一種分布式表達(distributed representation),能夠從大規模未經標注的語料中高效地生成詞的向量形式,且可以較好地適用于中文處理。其基本思想是通過訓練將每個詞映射成高維實數向量,通過詞之間的距離判斷它們之間的語義相似度。word2vec包含兩種語言模型:CBOW(continuous bag-of-words model)和Skip-Gram(continuous skip-gram model),如圖1所示。CBOW和Skip-gram模型都包括輸入、投影和輸出3層,其中輸入與輸出層表示詞向量。不同的是,CBOW的目標是根據上下文來預測當前詞語的概率,Skip-gram則是根據當前詞語來預測上下文的概率。CBOW模型能夠獲取更好的語法信息,因此主要采用word2vec的CBOW模型訓練詞向量。

圖1 CBOW模型與Skip-gram模型Fig.1 CBOW model & Skip-gram model

1.2 句向量表示

關于詞向量(word embedding)的研究相對較早,目前分布式表示方式已經相對成熟并得到廣泛應用[9]。但從詞向量向句向量(sentence embedding)乃至段落向量(paragraph embedding)等的擴展卻仍處于探索階段。詞向量可以通過均值模型或加權模型轉化為句向量。其中,最簡單直接的方法是將句子中所有詞向量的平均值作為句向量,但這種方法的缺點是忽略了詞頻對句子的影響,認為句子中的所有詞對于表達句子含義同樣重要。加權模型考慮到詞頻的影響,其效果要明顯優于均值模型。TF-IDF加權平均詞向量以TF-IDF為權重,對所有詞向量加權得到句向量[10];SIF改進了TF-IDF加權平均詞向量方法,它以SIF為權重對所有詞的詞向量加權平均,最后從中減掉第一主成分(principal component)的投影得到句向量[6]。

SIF模型以簡潔的思想和優異的性能成為句向量領域最新的強大基線。其句向量表示為

(1)

式(1)中:vS表示去除主成分前的句向量;S表示句子中詞的總數;vw表示詞向量;a/[a+p(w)]表示句子S中詞w的權重,其中a為平滑系數,取0.001;p(w)為(估計的)詞頻。式(1)表明頻率越低的詞權重越大,其在句子中的重要性也越大。

vS←vS-uuTvS

(2)

式(2)中最終的句子S的句向量vS為式(1)中的句向量減去句子中的共有信息(主成分)。其中uuTvS表示vS的最大主成分向量;u為去“所有構成vs的矩陣”通過奇異值分解的特征矩陣;uT為u弘的轉置。即減去所有句子的共有信息,使得句子確保留下來的句子向量更能夠表示本身意思。

1.3 相似度算法

兩個句子的相似度可用歐式距離、余弦距離、杰卡德系數等公式計算[11],其中余弦距離應用較為廣泛。余弦相似度指利用向量空間中兩個向量夾角的余弦值表示兩個個體間差異的大小程度,余弦值在0~1之間越接近0,兩個向量越相似。

2 算法設計

目前,對SIF算法計算出的句向量進行相似度計算能夠準確地匹配到FAQ庫中相似問句,取得較好的效果。SIF算法兼顧詞頻與語義信息,但缺點是未考慮詞性與詞序因素。因此,綜合考慮詞性、詞序、句法結構、詞頻、語義信息,從詞性和詞序方面提出基于句向量的句子相似度計算方法。具體步驟如下。

步驟1:將預處理后的文本sn和sm采用詞集合s′n和s′m表示。

步驟2:采用word2vec獲得每個詞的詞向量,采用詞性消減因子為每個詞賦詞性調節權重因子wp;最終權重為wp與SIF原始權重之積。

步驟3:利用調節后的權重將每個文本的詞向量相加,獲得句向量。

步驟4:利用余弦距離公式計算用戶輸入問句與FAQ問題庫中每個問句的相似度并獲取前5%相似句集合T。

步驟5:采用詞序的方法計算T中的句子與測試句子的詞序相似度simo并與SIF方法進行線性加權,得到最終相似度得分。基于SIF問句相似度算法的基本流如圖2所示

圖2 基于SIF問句相似度算法的基本流程Fig.2 Basic flow based on SIF question similarity algorithm

2.1 引入詞性消減因子調節關鍵詞權重系數

除詞頻外,詞性也是判斷詞語重要性的重要指標。漢語詞語中實詞有6類:動詞、名詞、形容詞、量詞、數詞和代詞,虛詞也有6類:介詞、副詞、助詞、嘆詞、語氣詞和連詞。一般情況下,動詞、名詞和形容詞是句子的核心詞,應該給予更高的權重,其中動詞在句子中的作用尤為重要。同時,查詢的意圖往往依賴于動詞的位置,動詞越接近句子的末尾,越能代表整個句子的意思,其重要程度也相對越高[12],因此還應該考慮動詞所處句子的位置。例如:“我/可以/申請/退貨/嗎”,“申請”和“退貨”都是動詞,“退貨”位于“申請”之后,更能反映整個句子的意思。為了表示詞語位置與權重關系,按逆序法分析詞語和句子。若句子中的詞為動詞、名詞、形容詞,則詞性調節權重因子為

wp={scoremin,score-decay}, 0

(3)

式(3)既考慮了不同詞性的重要程度,也考慮了不同位置的詞的重要性,即越靠近句尾的詞語更能說明句子的意圖。其中,wp為詞性調節權重因子,其大小取決于詞性及詞在句中的位置;scoremin表示每類詞給定的下限值,它保證了所有詞性的詞的最低權重大于0,不同詞性的下限值設定為:1>動詞>名詞>形容詞>其他>0;decay為詞性消減權重,表示句子中的關鍵詞隨著單詞接近句首而變小的幅度。以動詞為例,“我/可以/申請/退貨/嗎”,假定decay=0.2,那么按照逆序法,“退貨”一詞為第一個動詞,假定其權重為1,那么“申請”一詞的詞性權重為1-0.2=0.8。句向量的權重系數awp/[a+p(w)],句向量表示為

(4)

2.2 融合詞序相似度優化相似度值

人類很容易處理詞序信息,然而對于計算機來說,在理解自然語言的計算方法中加入詞序信息是一個很大的挑戰。詞序是指詞在詞組或句子里的先后次序,它包含了句子所傳達的語義和語法信息。在漢語中,即使包含完全相同詞語的兩個句子,若詞語位置發生微調,他們所表達的意思也會發生改變。以下面兩句為例。

S1:那些北京來的客人很熱情。

S2:那些客人來北京很熱情。

S1和S2所包含的詞相同,但由于詞序存在差異,兩句話所表達的意思明顯不同。由于SIF加權算法僅僅將詞頻作為句向量加權的依據,不考慮句子中詞語順序信息,因此通過SIF加權后得到的S1和S2的句向量完全相同。這種情況下,計算兩個句子之間相似度時考慮詞序問題會使結果更加精確。

關于詞序相似度,一種是通過找出兩個句子中既是相同詞語又在相同位置的詞語來計算詞序相似度[13]。另一種使用較多的是基于向量距離的詞序算法[14]。基于這兩種計算詞序的思想,提出一種新的詞序相似度算法,其核心是S2中與S1重疊的詞的個數越多并且S2達到S1順序所需交換的次數越少,則兩句話的詞序相似度越大。公式表示為

0≤simo(S1,S2)≤1

(5)

首先,寫出待比較句子的特征順序向量。將句子S1=(w1,w2,w3,…,wn)的向量特征項順序作為標準順序,其對應的特征順序向量為v1=(v1,v2,v3,…,vn)=(1,2,3,…,n),那么S2=(w1,w2,w3,…,wm)所對應的順序特征向量v2是向量空間S2按照特征項在S1中生成的,沒有相同特征的位置用0表示[15]。以上述例句為例,將文本S1的向量特征順序作為標準順序S1=(那些,北京,來,的,客人,很,熱情),其對應的特征順序向量v1=(1,2,3,4,5,6,7),那么S2=(那些,客人,來,北京,很,熱情)對應的特征順序向量v2=(1,5,3,2,6,7)。

3 實驗

3.1 實驗數據及性能指標

3.1.1 實驗數據

詞向量訓練常用質量較好的中文語料庫為維基百科的中文語料庫,它具有質量高、領域廣泛而且開放的優點,因此本文采用2017年10月發布的維基百科中文數據作為word2vec的訓練集。過濾掉標點符號和其他無關符號等數據清洗之后,通過張華平等[16]研究的中文分詞工具NLPR漢語分詞系統(又名ICTCLAS)進行分詞,形成提供學習訓練的文本數據集,然后使用基于python語言的自然語言處理庫Gensim中word2vec模塊,采用CBOW模型,維度為200、窗口大小為10等參數對該文本數據集進行學習訓練得到詞向量模型文件。

FAQ庫語料來源由3部分組成共1 200個問答對。①廈門科技局提供的真實問答語料。②根據科技政策有關的等相關辦事指南及法律條文人工編寫的問答對。③網絡爬取相關語料。隨機抽取300條語料進行人工改寫相似問句用于測試。

3.1.2 評價指標

在智能問答系統方面,中國研究起步相對較晚,評價標準相對也不是很完善。召回率(recall)、準確率(precision)和F測度值是檢測問答系統中常用的3個參數[17]。召回率是匹配到的相關問題數目與FAQ庫中所有相關問題數目的比率,衡量問答系統的查全率;準確率是匹配到的相關問題數目與匹配到的問題總數的比率,衡量問答系統的查準率;F測度值是把召回率和準確率的函數兩個參數結合起來的綜合評價指標。

從FAQ數據集中進行問句匹配時,把文檔分成4組:A組為系統匹配到的相關問句;B組為系統匹配到的不相關問句;C組為相關但系統沒有匹配到的問句;D組為不相關且系統未匹配到的問句。召回率與準確率如圖3所示。

圖3 召回率與準確率Fig.3 Recall rate and precision rate diagram

3.2 實驗結果及分析

基于word2vec詞向量和SIF句向量模型提出一種融合詞性和詞序的句子相似度算法,為驗證方法的有效性,分別采用基于SIF的方法、結合詞性消減因子調節SIF權重的方法、結合詞序的方法以及融合詞性和詞序的方法對條測試問句進行相似度測試,測試問題個數為300個。實驗結果如表1和圖4所示。

表1 4種相似度算法的實驗對比Table 1 Experimental comparison of four similarity algorithms

圖4 4種句子相似度計算方法結果比較Fig.4 Comparison of results of four sentence similarity calculation methods

從以上試驗結果可以看出,通過使用基于SIF的改進算法,其所得的結果在準確率、查全率和查準率方面均要高于基準SIF算法。同時,由于加入了詞性和詞序因素,算法的復雜性也相對提高,平均用時增加了0.13 s,在正常范圍內。這說明不同詞的詞性對詞的重要程度有一定影響,詞序相似度在句子相似度計算中也發揮了作用,使計算結果更加準確。

4 結論

提出了一種基于word2vec詞向量和SIF句向量模型的句子相似度計算方法,利用詞性及詞性消減因子調節SIF計算句子向量的參數,并使用詞序相似度進行加權計算,使句子相似度的度量結果更為準確。在實驗所用的語料中顯示,本文方法相比其他傳統的句子相似度算法能夠在相似度測試中獲得更好的效果,更加接近于人的相似排序。但算法對漢語中一些句法結構的考慮還有欠缺,下一步將結合中文句法結構對算法進行改進,繼續提升句子相似度計算的準確率。

猜你喜歡
語義
為什么字看久了就不認識了
語言與語義
“社會”一詞的語義流動與新陳代謝
“上”與“下”語義的不對稱性及其認知闡釋
現代語文(2016年21期)2016-05-25 13:13:44
“吃+NP”的語義生成機制研究
長江學術(2016年4期)2016-03-11 15:11:31
“V+了+NP1+NP2”中V的語義指向簡談
認知范疇模糊與語義模糊
“V+X+算+X”構式的語義功能及語義網絡——兼及與“V+X+是+X”構式的轉換
語言與翻譯(2014年2期)2014-07-12 15:49:25
“熊孩子”語義新探
語文知識(2014年2期)2014-02-28 21:59:18
“深+N季”組配的認知語義分析
當代修辭學(2011年6期)2011-01-29 02:49:50
主站蜘蛛池模板: 色噜噜狠狠色综合网图区| 久青草免费在线视频| 国产jizzjizz视频| 国产午夜无码专区喷水| 99这里只有精品免费视频| 国产精品无码AV中文| 亚洲精品久综合蜜| 亚洲天堂视频网站| 国产日本视频91| 亚洲成av人无码综合在线观看| 九九九精品成人免费视频7| 国产精品手机在线播放| 亚洲国产日韩一区| 又爽又黄又无遮挡网站| 超清人妻系列无码专区| 欧美另类第一页| 免费a级毛片18以上观看精品| 欧美成人免费一区在线播放| 欧美性天天| 久久人妻xunleige无码| 免费看美女自慰的网站| 免费国产无遮挡又黄又爽| 国产精品人莉莉成在线播放| 高潮毛片无遮挡高清视频播放| 日韩av无码精品专区| 激情综合婷婷丁香五月尤物| 强奷白丝美女在线观看| 99精品福利视频| 日本精品视频| 国产理论精品| 中文字幕亚洲乱码熟女1区2区| 国产在线拍偷自揄拍精品| 欧美成人午夜视频| 性色生活片在线观看| 91久久偷偷做嫩草影院| 丝袜国产一区| 欧美区一区| 精品综合久久久久久97超人该| 欧美成人二区| www.91中文字幕| 啪啪啪亚洲无码| 国产一级视频久久| 综合色在线| 久久伊人色| 国产伦精品一区二区三区视频优播 | 婷婷亚洲最大| 亚欧成人无码AV在线播放| 男女男免费视频网站国产| 影音先锋丝袜制服| 亚洲自拍另类| 国产小视频免费| 精品国产一区二区三区在线观看| 亚洲成人黄色网址| 精品国产香蕉伊思人在线| 中文字幕乱码二三区免费| 国产成人综合在线视频| 久久永久精品免费视频| 国产精品jizz在线观看软件| 成人无码一区二区三区视频在线观看| 91小视频在线观看| 98精品全国免费观看视频| 久久久久无码精品| 国产资源免费观看| 美女国内精品自产拍在线播放| 熟女成人国产精品视频| 亚洲AV无码乱码在线观看裸奔| 国产成人夜色91| 精品亚洲麻豆1区2区3区| 色综合天天娱乐综合网| 国产在线专区| 欧美日韩亚洲国产| 综合网天天| 久久精品中文无码资源站| 中文字幕在线日韩91| 国产成人亚洲精品蜜芽影院| 亚洲天堂免费观看| 国产精品七七在线播放| 亚洲香蕉久久| 91精品啪在线观看国产60岁 | 亚洲天堂精品在线| 无码视频国产精品一区二区| 国产综合精品一区二区|