章露露 呂曉偉
摘要:查詢擴(kuò)展是信息檢索領(lǐng)域重要研究?jī)?nèi)容。為了解決信息檢索過(guò)程中用戶提交查詢時(shí)描述不準(zhǔn)確以及查詢?cè)~不匹配的問(wèn)題,提出一種基于Word2vec的語(yǔ)義查詢擴(kuò)展方法。使用分布式神經(jīng)語(yǔ)言概率模型Word2vec訓(xùn)練低維詞向量,選取擴(kuò)展詞候選集,利用面向擴(kuò)展詞的查詢向量生成方法過(guò)濾候選集,使選取的擴(kuò)展詞能更有效地體現(xiàn)整個(gè)查詢的語(yǔ)義及語(yǔ)法相關(guān)性。實(shí)驗(yàn)結(jié)果表明基于Word2vec的語(yǔ)義查詢擴(kuò)展方法使查全率及查準(zhǔn)率均有提高,因此該方法能很好地應(yīng)用于查詢擴(kuò)展領(lǐng)域。
關(guān)鍵詞:查詢擴(kuò)展;分布式神經(jīng)語(yǔ)言概率模型;Word2vec;面向擴(kuò)展詞;語(yǔ)義相關(guān)性
DOIDOI:10.11907/rjdk.181044
中圖分類號(hào):TP301
文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào)文章編號(hào):16727800(2018)009004804
英文標(biāo)題Semantic Query Expansion Method Based on Word2vec
--副標(biāo)題
英文作者ZHANG Lulu,LV Xiaowei
英文作者單位( Faculty of Information Engineering and Automation,Kunming University of Science and Technology,Kunming 650500,China)
英文摘要Abstract:Query expansion is an important research issue in the field of information retrieval.In order to solve the problem of inaccurate description and mismatch when users submit queries,we propose a new semantic query expansion method based on Word2vec.The distributed neural language probability model word2vec is used to train the low dimensional word vectors to select the expansion term anthology,and a new query vector generation method based on extended words is proposed to filter candidate sets,so that the selected extended words can be reflected more effectively in the semantic and grammatical correlation of the whole query.The experimental results show that the semantic query expansion method based on Word2vec has improved both the recall rate and the precision ratio.Therefore,the semantic query extension method based on Word2vec can be applied to the domain of query extension well.
英文關(guān)鍵詞Key Words:query expansion; distributed neural language probability model; Word2vec; expansion oriented words; semantic relevance
0引言
完整的信息檢索系統(tǒng)通常包括數(shù)據(jù)庫(kù)(數(shù)據(jù)庫(kù)中包含若干文檔),將每篇文檔與詞項(xiàng)相關(guān)聯(lián)的索引以及匹配機(jī)制,該機(jī)制由詞語(yǔ)組成的用戶查詢和相關(guān)文檔形成映射。建立信息檢索系統(tǒng)的主要目的是能在給定的索引數(shù)據(jù)庫(kù)中找到包含搜索者所需信息的文檔[1]。
傳統(tǒng)信息檢索系統(tǒng)處理用戶給定的查詢時(shí),要求用戶描述精確并輸入查詢。但是通常情況下,用戶對(duì)想要查詢的信息并不能精確描述,因此信息檢索系統(tǒng)可能會(huì)返回大量非預(yù)期的結(jié)果,導(dǎo)致“詞典問(wèn)題”(Dictionary Problem)[23]。想要解決詞典問(wèn)題,用戶需要在提交查詢時(shí)使用足夠多的關(guān)鍵詞描述搜索內(nèi)容,信息檢索系統(tǒng)才能返回滿意的結(jié)果。但是據(jù)調(diào)查顯示,用戶更傾向于少量關(guān)鍵詞搜索[4]。根據(jù)Encarta在線百科全書網(wǎng)站兩個(gè)月的用戶查詢?nèi)罩颈砻鳎?9%的用戶在描述查詢時(shí)僅使用一個(gè)單詞,33%的用戶查詢時(shí)使用兩個(gè)單詞,描述查詢的平均單詞只有1.4個(gè)[3,5],因此通過(guò)增加查詢關(guān)鍵詞的數(shù)量解決詞典問(wèn)題在實(shí)際應(yīng)用中意義不大。
除了用戶對(duì)查詢描述不精確的影響因素外,查詢?cè)~不匹配也是影響查詢效率的一個(gè)不可忽略的因素。由于信息在當(dāng)前系統(tǒng)中都是以字、詞或者詞組的形式表示,所以只有當(dāng)文檔包含用戶查詢的信息時(shí)才能被檢索出來(lái)[6]。但是在自然語(yǔ)言中,一般對(duì)同一個(gè)概念的表達(dá)方式有多種,例如用戶查詢“automobile”時(shí),包含“FORD”、“car”等也都與查詢直接相關(guān),這種情況下即使用戶提出了準(zhǔn)確的查詢描述,可由于還有其它不同表達(dá)方式[6],也會(huì)導(dǎo)致一些文檔不能被檢索出來(lái),影響查詢結(jié)果。
1查詢擴(kuò)展相關(guān)研究
由于用戶描述不準(zhǔn)確和查詢?cè)~不匹配問(wèn)題,用戶有時(shí)不得不使用足夠多的詞描述查詢或是變換查詢?cè)~才能找到所需信息。為了減輕用戶查詢負(fù)擔(dān),信息檢索系統(tǒng)可以自動(dòng)選擇一些與用戶查詢關(guān)鍵詞相關(guān)的其它詞項(xiàng)加入到原查詢中,從而組成更長(zhǎng)、更全面的查詢,這種輔助查詢即為查詢擴(kuò)展技術(shù)。在信息檢索領(lǐng)域,目前的查詢擴(kuò)展方法主要分為基于語(yǔ)義知識(shí)詞典的方法、全局分析方法以及局部分析方法。
1.1基于語(yǔ)義知識(shí)詞典的方法
基于語(yǔ)義知識(shí)詞典的方法根據(jù)基于語(yǔ)義的語(yǔ)言學(xué)知識(shí)構(gòu)建擴(kuò)展詞表[79],選出與查詢?cè)~存在一定語(yǔ)義關(guān)聯(lián)的詞進(jìn)行擴(kuò)展。該方法一般借助大規(guī)模的手工詞典,如通過(guò)WordNet、HowNet等選取查詢?cè)~的上下義詞、同義詞,但是過(guò)分依賴完備的語(yǔ)義體系,而且獨(dú)立于待檢索的語(yǔ)料集,因此選出來(lái)的擴(kuò)展詞難以反映語(yǔ)料集特性。
1.2全局分析方法
全局分析查詢擴(kuò)展方法[10]首先對(duì)全部文檔中的詞或詞組進(jìn)行相關(guān)分析,計(jì)算每對(duì)詞的關(guān)聯(lián)程度,然后再將與查詢?cè)~關(guān)聯(lián)性最高的詞加入到初始查詢中生成新的查詢。該方法可以最大限度探求詞之間的關(guān)系,特別是在建立詞典之后能以較高的效率進(jìn)行擴(kuò)展,但是當(dāng)文檔很大時(shí),詞典要建立全部的詞關(guān)系不論在時(shí)間還是空間上都不可行,而且改變文檔集的更新的代價(jià)也很大。
1.3局部分析方法
局部分析方法[1112]主要利用二次檢索方法解決擴(kuò)展問(wèn)題,利用初次給定的查詢直接檢索,得到與原查詢最相關(guān)的 n 篇文檔作為擴(kuò)展詞來(lái)源,在n篇文檔里尋找與原查詢最相關(guān)的詞加入到初始查詢中并建立新的查詢。目前比較流行的基于局部分析的查詢擴(kuò)展方法是偽相關(guān)反饋,它是在相關(guān)反饋[1314]的基礎(chǔ)上發(fā)展而來(lái)的。這兩種反饋的不同在于相關(guān)反饋對(duì)初次檢索的結(jié)果需要由用戶判定,將用戶認(rèn)為的相關(guān)文檔作為擴(kuò)展詞來(lái)源,而偽相關(guān)反饋不需要與用戶交互,直接將返回的前 n 篇文檔認(rèn)為是相關(guān)文章。雖然局部分析方法是目前應(yīng)用最廣泛的查詢擴(kuò)展方法,但存在的問(wèn)題是,對(duì)用戶的查詢進(jìn)行初次檢索后,在返回的文檔中,如果排在前面的文檔與原查詢相關(guān)度不大時(shí),容易將大量無(wú)關(guān)的詞加入查詢,造成“查詢漂移”問(wèn)題。
近年來(lái)Word2vec技術(shù)在自然語(yǔ)言處理領(lǐng)域引起了眾多研究者的關(guān)注。 通過(guò) word2vec提供的訓(xùn)練模型得到的詞向量反映了自然語(yǔ)言中語(yǔ)義和語(yǔ)法關(guān)系,可以通過(guò)計(jì)算詞向量之間的余弦值判斷詞項(xiàng)之間相似性,因此可很好地用于查詢擴(kuò)展。
2Word2vec模型介紹
Word2vec是Google在2013年開(kāi)源的一種將詞表征為實(shí)數(shù)值向量的工具,主要利用兩個(gè)重要模型:CBOW模型(Continuous Bag-of-Words Model)和Skip-gram模型(Continuous Skip-gram Model),Mikolov[15]在文獻(xiàn)中給出了模型示意圖,如圖1所示。
從圖中可以看出,CBOW模型是利用詞語(yǔ)的上下文信息預(yù)測(cè)詞語(yǔ),而Skip-gram模型正好相反,它利用詞語(yǔ)預(yù)測(cè)上下文。本文實(shí)驗(yàn)使用CBOW模型,故下文僅介紹該模型。
CBOW模型的網(wǎng)絡(luò)結(jié)構(gòu)包括3層:輸入層、投影層和輸出層,如圖2所示。①輸入層:包括當(dāng)前詞語(yǔ)前后各c個(gè)詞;②映射層:將輸入層的每個(gè)詞語(yǔ)詞向量進(jìn)行累加;
③輸出層:以語(yǔ)料庫(kù)所有詞語(yǔ)為葉節(jié)點(diǎn)的一個(gè)二叉樹(shù)。
3基于word2vec的語(yǔ)義查詢擴(kuò)展方法
3.1問(wèn)題定義
假設(shè)用戶初始的查詢預(yù)處理之后表示為Q={q1,q2,....,qn},擴(kuò)展詞表為T,T中所有詞即為擴(kuò)展詞集,記為Qexp。待檢索的文檔集為D,共有N篇文檔,D的詞匯表為V={v1,v2,....,vV}。對(duì)V中的每個(gè)詞項(xiàng)建立倒排索引,假設(shè)文檔集的倒排索引集為ID。擴(kuò)展后新的查詢?yōu)镼new,在索引集中匹配包含Qnew的文檔,最后利用檢索模型計(jì)算并返回包含用戶查詢信息且相關(guān)度較高的文檔。
3.2擴(kuò)展詞候選集選取
對(duì)于處理后的查詢Q={q1,q2,....,qn}生成一個(gè)初始擴(kuò)展詞集,通過(guò)Word2vec訓(xùn)練詞向量,計(jì)算向量間相似度,找到每個(gè)關(guān)鍵詞語(yǔ)義或語(yǔ)法相似詞,生成擴(kuò)展詞候選集,將擴(kuò)展詞候選集表示為C:
C=∪qi∈QKNN(qi)(1)
其中,KNN(qi)是與qi最相似的K個(gè)詞項(xiàng)集合。例如對(duì)預(yù)處理之后的查詢 Q={automobile,maintenance}中的兩個(gè)關(guān)鍵詞,選擇K(K=5)個(gè)最相似的詞,如表1所示。表中擴(kuò)展詞后面的數(shù)值表示與查詢關(guān)鍵詞的相似度。
3.3擴(kuò)展詞表建立
C中所有候選詞選取的標(biāo)準(zhǔn)是各個(gè)查詢關(guān)鍵詞的相似詞,標(biāo)注的相似度也只是與對(duì)應(yīng)關(guān)鍵詞的相似度,不能體現(xiàn)與整個(gè)查詢的相關(guān)性。一般情況下,通過(guò)計(jì)算擴(kuò)展詞與原查詢的平均余弦相似度評(píng)估與擴(kuò)展詞和整個(gè)查詢的相似度,計(jì)算公式如下:
sim(t,Q)=∑qi∈Qcos(t,qi)|Q|(2)
根據(jù)平均余弦相似度的高低對(duì)C中所有詞項(xiàng)重新排序、篩選擴(kuò)展詞。但是對(duì)查詢?cè)~qi的某個(gè)擴(kuò)展詞而言,其它查詢?cè)~對(duì)該擴(kuò)展詞的影響不應(yīng)該和qi對(duì)該擴(kuò)展詞的影響相當(dāng),因此本文提出了一種面向擴(kuò)展詞的查詢向量生成方法篩選擴(kuò)展詞、從而建立擴(kuò)展詞表的方法。該方法以擴(kuò)展詞對(duì)應(yīng)的查詢關(guān)鍵詞為中心,針對(duì)整個(gè)查詢生成一個(gè)查詢Q相對(duì)于該查詢關(guān)鍵詞的查詢向量,代替該查詢關(guān)鍵詞的向量,以此計(jì)算查詢?cè)~對(duì)應(yīng)的擴(kuò)展詞與整個(gè)查詢的相似度,重新計(jì)算得到的相似度表示的是與Q的相似度,而不是與其對(duì)應(yīng)關(guān)鍵詞的相似度,從而更能體現(xiàn)整個(gè)查詢的相關(guān)性。查詢Q相對(duì)于查詢關(guān)鍵詞qi的查詢向量生成方法如下:
vec(Qqi)=∑|Q|j=0vec(qj)*sim(qi,qj)(3)
其中vec(Qqi)表示查詢Q相對(duì)于qi的查詢向量,sim(qi,qj)表示qi和qj的相似度。
按式(4)計(jì)算C中qi對(duì)應(yīng)的每個(gè)候選詞t與查詢Q的相似度:
sim(t,Q)=cos(vec(t),vec(Qqi))(4)
依此類推,不同查詢關(guān)鍵詞的擴(kuò)展詞得到的都是其與整個(gè)查詢的相似度,然后根據(jù)相似度的高低再對(duì)C中所有擴(kuò)展詞進(jìn)行篩選,選取閾值范圍內(nèi)的擴(kuò)展詞構(gòu)建擴(kuò)展詞表,記為T。
綜上所述,得到本文建立擴(kuò)展詞表的步驟如下所示:
輸入:初始查詢 維基百科語(yǔ)料庫(kù)
輸出:擴(kuò)展詞集
Step1:利用word2vec的CBOW模型訓(xùn)練維基百科語(yǔ)料庫(kù),得到詞向量文件。
Step2:對(duì)Q中的每個(gè)關(guān)鍵詞qi,根據(jù)詞向量得到前K個(gè)最相似的詞,記為C。
Step3:forQ中的每個(gè)關(guān)鍵詞qi:
vec(Qqi)=∑|Q|j=0vec(qj)*sim(qi,qj)
生成Q相對(duì)于qi的查詢向量。
Step4:forC中的擴(kuò)展詞t:
sim(t,Q)=cos(vec(t),vec(Qqi))
Step5:根據(jù)相似度對(duì)C中的候選詞重新排序,選取與整個(gè)查詢的相似度在指定閾值τ內(nèi)的候選詞,建立擴(kuò)展詞表T,得到擴(kuò)展詞集Qexp 。
4實(shí)驗(yàn)設(shè)計(jì)與結(jié)果
本文采用Jelinek Mercer的平滑算法[16]計(jì)算擴(kuò)展后的查詢Qnew與文檔d的相關(guān)度R(Qnew,d)。
R(Qnew,d)=λR(Q,d)+(1-λ)R(Qexp,d)(5)
其中λ為調(diào)節(jié)參數(shù),R(Q,d)為原查詢與文檔的相關(guān)度,R(Qexp,d)為擴(kuò)展詞集與文檔的相關(guān)度,計(jì)算公式如下:
R(Q,d)=∑w∈Qtfw,d·idfw(6)R(Qexp,d)=∑w∈Ttfw,d·idfw(7)
4.1語(yǔ)料訓(xùn)練參數(shù)
本文使用Word2vec的CBOW模型訓(xùn)練的語(yǔ)料庫(kù)選擇英文維基百科作為語(yǔ)料,訓(xùn)練的詳細(xì)信息如表2所示。
4.2數(shù)據(jù)集及評(píng)測(cè)方法
實(shí)驗(yàn)數(shù)據(jù)主要來(lái)自維基百科的英文語(yǔ)料集和Cran數(shù)據(jù)集。維基百科的英文語(yǔ)料集主要用于訓(xùn)練詞向量,Cran數(shù)據(jù)集是一個(gè)包括查詢集、文檔集以及查詢-文檔的關(guān)聯(lián)集,用于評(píng)估查詢擴(kuò)展性能。
其中查詢集中共包含365個(gè)查詢,文檔集中共有1400篇文檔,關(guān)聯(lián)集中是查詢-文檔關(guān)聯(lián)的標(biāo)注。
采用的評(píng)測(cè)指標(biāo)為查全率(Recall)和查準(zhǔn)率(Precision):
Recall=檢索到的相關(guān)文檔數(shù)文檔集中與查詢相關(guān)的總文檔數(shù)×100%(8)
Precision=檢索到的相關(guān)文檔數(shù)檢索到的文檔總數(shù)×100%(9)
4.3檢索結(jié)果
根據(jù)式(5)的檢索模型計(jì)算用戶提交的查詢并返回檢索結(jié)果。本文對(duì)原始查詢預(yù)處理,去掉停用詞并進(jìn)行詞干還原得到查詢Q。初始擴(kuò)展候選集設(shè)定K值為10,相似度閾值τ=0.7,調(diào)節(jié)參數(shù)λ=0.6。按該方法計(jì)算擴(kuò)展后的查詢與文檔的相關(guān)度并排序,選取前100個(gè)相關(guān)度較高的文檔對(duì)結(jié)果進(jìn)行評(píng)估。實(shí)驗(yàn)結(jié)果如圖3所示。
由圖3可以看出,與不擴(kuò)展查詢方法進(jìn)行比較,本文方法獲得了較好的效果。
5結(jié)語(yǔ)
本文提出的基于Word2vec的語(yǔ)義查詢擴(kuò)展方法,通過(guò)神經(jīng)網(wǎng)絡(luò)訓(xùn)練模型的使用,與不進(jìn)行擴(kuò)展查詢方法相比,查詢效果明顯上升,但還有一些問(wèn)題尚未解決,如擴(kuò)展詞的個(gè)數(shù)設(shè)定多少效果最佳?預(yù)處理查詢時(shí)選取多少個(gè)詞進(jìn)行擴(kuò)展效果能達(dá)到最優(yōu)效果?CBOW模型訓(xùn)練詞向量時(shí)窗口詞個(gè)數(shù)的不同對(duì)結(jié)果是否有影響?這些問(wèn)題還需進(jìn)一步的探索研究。
參考文獻(xiàn)參考文獻(xiàn):
[1]CARPINETO C,ROMAMO G.A survey of automatic query expansion in information retrieval[J].ACM Computing Surveys,2012,44(1):150.
[2]FURNAS G W,LANDAUER T K,GOMEZ L M,et al.The vocabulary problem in humansystem communication[J].Communication of ACM,1987,30(11):964971.
[3]崔航,文繼榮,李敏強(qiáng).基于用戶日志的查詢擴(kuò)展統(tǒng)計(jì)模型[J].軟件學(xué)報(bào),2003,14(9):15931599.
[4]REICHERT M,LINCKELS S,MEINEL C,et al.Student's perception of a semantic search engine[C].Cognition and Exploratory Learning in Digital Age,2005:139147.
[5]WEN J R,NIE J Y,ZHANG H J.Clustering user queries of a search engine[C].Proceedings of the 10th International World Wide Web conference,2001:162168.
[6]張敏,宋睿華,馬少平.基于語(yǔ)義關(guān)系查詢擴(kuò)展的文檔重構(gòu)方法[J].計(jì)算機(jī)學(xué)報(bào),2004,27(10):13951401.
[7]RICHARDSON R,SMEATON A.Using WordNet in a knowledgebased approach to information retrieval[EB/OL].http://pdfs.semanticscholar.org/af2b/62f6bd6ba5204ad00a24829ac49807f0a757. pdf.
[8]SMEATON A,BERRUT C.Thresholding postings lists,query expansion by wordword distances and POS tagging of Spanish text[C].Gaithersburg:the 4th Text Retrieval Conference,1996.
[9]MILLER G A,BECKWITH R,F(xiàn)ELLBAUM C,et al.Introduction to wordnet:an online lexical database[J].International Journal of Lexicography,1990,3(4):235244.
[10]田萱,杜小勇,李海華.語(yǔ)義查詢擴(kuò)展中詞語(yǔ)——概念相關(guān)度的計(jì)算[J].軟件學(xué)報(bào),2008,19(8):20432053.
[11]丁國(guó)棟,白碩,王斌.一種基于局部共現(xiàn)的查詢擴(kuò)展方法[J].中文信息學(xué)報(bào),2006,20(3):8491.
[12]吳秦,白玉昭,梁永禎.一種基 于 語(yǔ) 義 詞 典 的 局 部 查 詢 擴(kuò) 展 方 法[J].南京大學(xué)學(xué)報(bào):自然科學(xué),2014,50(4):526533.
[13]BUCKLEY C,SALTON G,ALLAN J,et al.Automatic query expansion using SMART [C].Text Retrieval Conference,1994:6980.
[14]BAEZAYATES R A,RIBEIRO NETO B .Modern information retrieval[M].England:Pearson Education Limited,1999.
[15]MIKOLOV T,LE Q V,SUTSKEVER I.Distributed representations of words and phrases and their compositionality[C].Proceedings of NIPS,2013:31113119,
[16]ZHAI C,LAFFERTY J.A study of smoothing methods for language models applied to information retrieval[J].ACM Transaction on Information System,2004,22(2):179214.
責(zé)任編輯(責(zé)任編輯:江艷)