田作輝 關(guān)毅
摘要:隨著問答社區(qū)網(wǎng)站的興起,越來越多的用戶生成數(shù)據(jù)積累了起來。這些用戶生成數(shù)據(jù)不僅具有海量的、多樣性的等特點,還有著極高的質(zhì)量和重用價值。為了高效地管理和利用這些數(shù)據(jù),近年來研究人員基于這些數(shù)據(jù)進(jìn)行了大量的研究和實踐,而社區(qū)問答中的問題檢索就是一個被廣泛研究的課題。主要研究了面向大規(guī)模社區(qū)問答數(shù)據(jù)的問題檢索方法。收集來自Yahoo! Answers等社區(qū)網(wǎng)站的超過1.3億問題和10億答案的大規(guī)模數(shù)據(jù),與之前的基于百萬量級的數(shù)據(jù)的問答社區(qū)相關(guān)研究工作相比有著明顯的不同和極高的實用價值。在此數(shù)據(jù)的基礎(chǔ)上,通過查詢自動分類方法來提高每次查詢效率和效果。在問題檢索過程中,提出了應(yīng)用查詢問句和問題的結(jié)構(gòu)信息和語義信息,結(jié)合排序?qū)W習(xí)算法來融合多種不同類別的特征的方法,通過應(yīng)用訓(xùn)練數(shù)據(jù)生成排序模型來提高問題檢索的相關(guān)性和詞語不匹配等問題。實驗表明,本文應(yīng)用Ranking SVM方法來訓(xùn)練的排序模型在不同數(shù)據(jù)集上,其準(zhǔn)確率等評價指標(biāo)上都相比以往的方法有著顯著的提高。
關(guān)鍵詞:社區(qū)問答; 問題檢索; 排序支持向量機(jī)
中圖分類號:TP31113 文獻(xiàn)標(biāo)識碼:A文章編號:2095-2163(2013)06-0063-05
0引言
目前,社區(qū)問答服務(wù)包含了大量用戶生成內(nèi)容(user-generated contents,簡記為UGC)。以Yahoo! Answers為例,目前Yahoo! Answers包含問題涵蓋26大類、1 400多小類,共有超過3億規(guī)模的問題和10億的答案由用戶提出和發(fā)布。如此龐大的數(shù)據(jù)規(guī)模,促進(jìn)了非事實問答研究的大規(guī)模開展,使得問答系統(tǒng)不再局限于對應(yīng)命名實體、日期等較短答案的事實類問題上。
這些用戶生成內(nèi)容不僅具有海量、多樣性等特點,還有著高質(zhì)量和重用的價值,充分利用這些資源可以高效、準(zhǔn)確地滿足人們對信息的需求。如Liu 等[1]研究的發(fā)現(xiàn),在Yahoo! Answers中的四個流行問題分類中,有接近83%的最佳答案可以重用來回答相似的問題。
因此,隨著各類問題數(shù)據(jù)的積累與各項相關(guān)技術(shù)的成熟,研究面向大規(guī)模問答數(shù)據(jù)的問題檢索方法,是一個既具研究挑戰(zhàn)又有應(yīng)用前景的重要技術(shù)課題。
全文共分為五部分,其內(nèi)容具體安排為:第一部分引言,介紹面向問答社區(qū)的問題檢索課題的研究背景和研究意義。第二部分介紹相關(guān)領(lǐng)域的研究現(xiàn)狀。第三部分介紹問題檢索的模型與特征選擇。第四部分介紹實驗和結(jié)果分析。最后第五部分是本文的結(jié)論和對下一步研究的展望。
1相關(guān)工作
問題檢索依賴于已經(jīng)建立的問答對數(shù)據(jù)集,對于給定的查詢問句,自動返回相關(guān)的問題及其對應(yīng)答案。問題檢索任務(wù)的主要挑戰(zhàn)是如何解決已有問題和查詢問句的詞語不匹配問題,因為多數(shù)情況下查詢問句和問題句并不是字面上相同的。
Jeon等[2]比較了不同檢索方法在解決查詢問句與問題的詞匯不匹配問題的效果,所得出的統(tǒng)計機(jī)器翻譯方法最為有效。研究中,構(gòu)造機(jī)器翻譯的平行語料的方式是以問題的答案作為索引,并用答案去查詢其他相似答案。如果某問題的答案與查詢答案的相似度高于一定閾值,則認(rèn)為這兩個答案是相似的,同時又假設(shè)其對應(yīng)問題也是相似的。以此方法構(gòu)造平行語料來訓(xùn)練統(tǒng)計機(jī)器翻譯模型?;谝陨瞎ぷ?,Xue等[3]提出一個統(tǒng)計機(jī)器翻譯[4]加語言模型[5]的混合模型來進(jìn)行問題檢索,通過利用問題句和答案作為平行語料來進(jìn)行機(jī)器翻譯模型的訓(xùn)練。Wang等[6]提出了一個基于句法樹結(jié)構(gòu)的新的檢索方法來處理相似問題匹配任務(wù),可通過句法分析將問題和查詢問句轉(zhuǎn)化為句法樹,再通過句法樹之間的相似度來衡量問題和查詢問句的語義相似度。Bian等[7]提出一個新的問題檢索方法GBrank以及其后續(xù)工作中的GBrank-MR都能夠較好地處理事實性問題,并給出較為滿意的答案。Cao等[8]提出基于葉分類信息進(jìn)行平滑的語言模型來解決詞語之間的不匹配問題。該方法的基本思想是同一分類下的問題通常比不同分類下的問題更相似,于是用同一個分類下的詞分布信息對語言模型進(jìn)行平滑,如此可有效提高問題檢索的相關(guān)性。Zhou等[9]考察了應(yīng)用用戶權(quán)威性和用戶信息評價對于問題檢索相關(guān)性的影響,其結(jié)論是由于問答社區(qū)中的信息過于稀疏,直接應(yīng)用這些信息并不能夠為問題的檢索效果帶來明顯的提升。Duan等[10]應(yīng)用短語級別的問題焦點和主體識別方法來提高問題檢索的相關(guān)度。
2問題檢索的模型與特征選擇
問題檢索的目的是給定一個查詢問句,系統(tǒng)返回與該問句語義相同或者相似的問題,而由于同義問題語言表達(dá)的多樣性特點,僅僅對問句和問題進(jìn)行詞語級別的匹配是遠(yuǎn)遠(yuǎn)不夠的。本文應(yīng)用排序支持向量機(jī)(Ranking SVM)算法作為問題檢索的排序模型。
在進(jìn)行問題檢索前,本文應(yīng)用樸素貝葉斯分類器來構(gòu)建查詢進(jìn)行分類。這樣做法的目的在于相似的問題通常會被分到同一類別當(dāng)中,對查詢問句進(jìn)行分類,而且只查詢與查詢問句分類相同的數(shù)據(jù)就既可以提高檢索的效率,也可在一定程度上增強(qiáng)檢索的效果。
本文利用1.2億的Yahoo! Answers數(shù)據(jù)集訓(xùn)練得到的分類器,將訓(xùn)練數(shù)據(jù)中的120萬的Yahoo! Answers問題句作為測試數(shù)據(jù),可達(dá)到超過85%的預(yù)測準(zhǔn)確率。
2.2 問題檢索的特征選擇
在問題檢索過程中,特征和模型的選擇同樣重要。為了提高問題檢索過程中的詞語不匹配問題的解決能力,本文考察了大量的可用于量測字符串相似度的特征。
2.2.1基于統(tǒng)計分布的特征
基于統(tǒng)計分布的特征是指應(yīng)用社區(qū)問答數(shù)據(jù)中的所有問題的詞語分布信息來調(diào)整問題中每個詞語的權(quán)重信息。
詞頻-反向文檔詞頻TF-IDF:很多的檢索模型都是應(yīng)用IDF這一指標(biāo)來對詞語的權(quán)重進(jìn)行調(diào)整的,如Okapi BM25和向量空間模型VSM(Vector Space Model)。
信息熵:熵是用于表示信息不確定度的計量標(biāo)注,應(yīng)用問題中的類別信息即可計算一個詞語對不同類別下問題的權(quán)重貢獻(xiàn),由此達(dá)到調(diào)整詞權(quán)重的目的。
2.2.2基于結(jié)構(gòu)的特征
基于結(jié)構(gòu)的特征是指應(yīng)用查詢問句和問題中的短語、詞語順序和句法結(jié)構(gòu)等信息來衡量查詢問句和問題相似度的特征。文中涉及的相關(guān)概念如下:
N元文法:由于存儲空間和計算效率的限制,本文只采用了二元文法Bigram。
短語:對于查詢問句和問題,可以應(yīng)用組塊分析技術(shù)抽取其中的名詞短語NP(Noun Phrase),動詞短語VP(Verb Phrase)和介詞短語PP(Prop Phrase)。本文應(yīng)用Jaccard相似度指標(biāo)來計算短語集合的相似度。
命名實體:命名實體NE(Named Entity)是指文本中預(yù)先定義了類別的詞語或結(jié)構(gòu)片段,如人名、地名、機(jī)構(gòu)名等。同樣應(yīng)用Jaccard相似度指標(biāo)來計算命名實體的相似度。
最長公共字串和最長公共子序列:本文利用最長公共字串和子序列與問題長度的比例來衡量查詢問句和問題之間的相似度。
編輯距離:編輯距離是衡量兩個字符串之間差別的一個標(biāo)準(zhǔn)。由于編輯距離和兩個詞序列之間的相似度成反比,故本文選取編輯距離的倒數(shù)來衡量查詢問句和候選答案的相似度。
字符串核函數(shù):本文應(yīng)用了Bu等[11]提出的字符串重寫核函數(shù)(String Re-writing Kernel)來計算查詢問句和問題之間的相似度。
依存分析:依存分析(Dependency Parsing)是通過依存文法對語句進(jìn)行句法分析生成依存句法樹的過程。圖1為語句“Bell, based in Los Angeles, makes and distributes electronic, computer and building products.”的依存句法樹示意圖。
如圖1所示,樹的任意節(jié)點和其子孫節(jié)點都會形成一個依存路徑(Dependency Path)。路徑的長度為路徑中節(jié)點的數(shù)量。本文中統(tǒng)計查詢問句和問題的依存句法樹中的全部長度為2的依存路徑,并加上其中的弧標(biāo)簽。再通過計算兩個依存路徑集合的相似度來得到查詢問句和問題的相似度。
以上基于統(tǒng)計和基于結(jié)構(gòu)的特征可以概括為基于詞的特征,這些特征從最簡單的無結(jié)構(gòu)特征(如關(guān)鍵詞),到淺層結(jié)構(gòu)特征(如N元文法、短語、命名實體等),再到結(jié)構(gòu)化的依存句法樹,分別表示了查詢文件和問題所包含的各個層面的信息。
2.2.3基于語義的特征
為了更好地解決查詢問句和問題的詞語不匹配問題,僅僅利用基于詞的特征是遠(yuǎn)遠(yuǎn)不夠的,本文還考察了基于語義的特征在問題檢索過程中的應(yīng)用。基于語義的特征是指應(yīng)用查詢問句和問題的詞語之外的可以表征語句的語義或語義特點的信息的特征?,F(xiàn)將該技術(shù)中的各類方法綜述如下:
(1)LML:LML應(yīng)用了問題的葉節(jié)點分類信息來調(diào)整語言模型,用以查詢問句與問題之間的相似度。該方法的基本思想是:在Yahoo! Answers的分類系統(tǒng)中,每個大類下面都會分為很多小類,這些分類信息都可以通過一個樹形結(jié)構(gòu)形象表示,而樹中的葉子節(jié)點則代表某問題的最小分類信息,如圖2所示。
在葉節(jié)點分類中,由于話題限定更窄,用戶更傾向于討論相近的問題,如果查詢問句中的詞在某一葉節(jié)點分類中出現(xiàn)的頻率更高,則該分類中的問題便極有可能和查詢問句相似。
(2)翻譯語言模型:模型的關(guān)鍵是訓(xùn)練得出詞到詞的翻譯概率,而用于訓(xùn)練的、可對齊的平行語料卻很難獲得。本文使用基于商業(yè)搜索引擎點擊數(shù)據(jù)中查詢問句和網(wǎng)頁的標(biāo)題而訓(xùn)練得出的詞到詞翻譯概率作為翻譯模型來計算兩個句子的相似度。
(3)復(fù)述模型:復(fù)述(Paraphrasing)是指對相同信息的不同表達(dá)方式,而問題檢索的目的便是要找到與查詢問題一樣或者是查詢問句的復(fù)述的問題。本文應(yīng)用通過商業(yè)搜索引擎的網(wǎng)絡(luò)查詢?nèi)罩径?xùn)練得出的復(fù)述模型判斷查詢問句和問題之間互為復(fù)述的概率。
(4)WordNet語句相似度:WordNet是英文的語義詞典數(shù)據(jù)庫。通過WordNet中同義詞集合語義的關(guān)系,可以應(yīng)用Wu和Palmer提出的相關(guān)性公式來計算兩個詞之間的相關(guān)性。詞a和詞b在WordNet中同義詞的集合關(guān)系如圖3所示,并可由如下公式計算得出:
WordNet(a,b)=depth(lcaa,b)depth(a)+depth(b)(1)
其中,depth為樹中節(jié)點的深度,Icaab為節(jié)點a和節(jié)點b的最近公共祖先。
最后,應(yīng)用查詢問句和問題中每個詞的WordNet相似度進(jìn)行組合,即可得到兩句話間的Wordnet語義相似度。
3實驗和結(jié)果分析
3.1訓(xùn)練數(shù)據(jù)與工具
3.1.1訓(xùn)練工具
本文應(yīng)用Joachims開發(fā)的SVMRank工具包來訓(xùn)練Ranking SVM排序模型,該工具簡單高效,只需將特征文件編寫成其要求的格式作為輸入,并指定誤差容忍度參數(shù)c,運行該工具即可生成模型文件和排序預(yù)測結(jié)果。
3.1.2訓(xùn)練數(shù)據(jù)
為了避免出現(xiàn)訓(xùn)練得到的模型發(fā)生對訓(xùn)練數(shù)據(jù)過度擬合的問題,在訓(xùn)練數(shù)據(jù)中需包含兩個部分:訓(xùn)練集和調(diào)試集。分別論述如下:
(1)訓(xùn)練集:選取商業(yè)搜索引擎的部分查詢?nèi)罩镜臉?biāo)注數(shù)據(jù),所有的查詢都是問題查詢,且用戶輸入查詢后點擊了Yahoo! Answers的頁面。數(shù)據(jù)采用5級標(biāo)注,將標(biāo)注中得分為3及以上的問題視作正例(相關(guān)),good以下的當(dāng)作負(fù)例(不相關(guān))。最后,正負(fù)例共有29 485條。
(2)調(diào)試集:在三百萬的Yahoo! Answers數(shù)據(jù)集上隨機(jī)選出200條問題,并在剩余的數(shù)據(jù)上通過應(yīng)用語言模型進(jìn)行檢索。每個問題取出前100個候選結(jié)果,再對問題的相關(guān)性進(jìn)行標(biāo)注,去掉找不到相關(guān)結(jié)果的問題,最后剩余176個問題,即正負(fù)例共有17 600條。
基于調(diào)試集依次通過比較第一項準(zhǔn)確率(Precision@1),平均準(zhǔn)確率(Mean Average Precision),平均倒數(shù)排名(Mean Reciprocal Rank)三個指標(biāo)來選取排序模型。
3.2 實驗結(jié)果與分析
3.2.1實驗數(shù)據(jù)
本文應(yīng)用了兩組不同的實驗數(shù)據(jù)來驗證問題檢索方法的有效性。
(1)從2012年上半年的商業(yè)搜索引擎查詢?nèi)罩局羞x取200條高頻的查詢問句和100條較長的中等頻度的查詢問句,共300條查詢問句。
(2)Cao等提出LML方法時用到的Yahoo! Answers的問答數(shù)據(jù)。全部數(shù)據(jù)中包含超過三百萬的問題及其答案,其中測試數(shù)據(jù)為252條查詢問句。因其提供的數(shù)據(jù)同時給出了對應(yīng)的每個查詢問句,應(yīng)用其方法即找到相關(guān)問題。
(3)應(yīng)用上一節(jié)中提到的調(diào)試數(shù)據(jù)集對和一些傳統(tǒng)經(jīng)典信息檢索模型進(jìn)行對比。隨機(jī)選取156個問題作為測試集,剩余20個問題作為模型參數(shù)的調(diào)試集。
3.2.2實驗結(jié)果與分析
在搜索引擎日志查詢問句數(shù)據(jù)集1中,對每個查詢問句在全部超過130億的問題數(shù)據(jù)中進(jìn)行檢索,給出10個相似度最高的問題,然后對所有問題進(jìn)行人工標(biāo)注,并計算其Precision@1,MAP和MRR三個評價指標(biāo),實驗結(jié)果如表1所示。
如表1所示,Precision@1、MAP和MRR三個指標(biāo)的結(jié)果比其他的實驗結(jié)果要高出很多,這是因為該測試數(shù)據(jù)集中的查詢問句主要由查詢?nèi)罩局械母哳l查詢組成。應(yīng)用該測試數(shù)據(jù)集的目的是為了檢測本文構(gòu)建的問答系統(tǒng)的實用性,因為大部分用戶提出的問題與查詢?nèi)罩局械牟樵儐柧涠际且恢碌?,這個結(jié)果也說明本文的問答系統(tǒng)具有很高的實用性。
在Cao等實驗數(shù)據(jù)集2中,為了得到真實的對比效果,本文應(yīng)用其小規(guī)模的問答數(shù)據(jù)重新構(gòu)建了一套檢索系統(tǒng),即兩種方法均是在相同的實驗數(shù)據(jù)集上進(jìn)行對比的。表2為實驗對比結(jié)果。
在表2中,R-Prec是Cao等在評測時用到的一個評測指標(biāo)R-Precision,R則指該問題有R個相關(guān)問題標(biāo)注。因為其公開的數(shù)據(jù)中只有一個查詢問句的相關(guān)問題,而并未給出其方法找出的不相關(guān)問題,就使得絕大部分的結(jié)果都是未標(biāo)注的。本文結(jié)果A是指直接應(yīng)用其方法找出的相關(guān)問題,并以其作為相關(guān)問題。這樣相當(dāng)于將全部的未標(biāo)注問題均當(dāng)成不相關(guān)的進(jìn)行處理,就會對結(jié)果產(chǎn)生很大影響,因此結(jié)果中,只有MAP略高于Cao等的方法。本文結(jié)果B是對檢索結(jié)果進(jìn)行了補(bǔ)充標(biāo)注,即評測時不再包含未標(biāo)注問題,從結(jié)果中可以看出,本文在各項指標(biāo)上都要優(yōu)于Cao等的方法,而在MAP和P@5上則有明顯的提高。
在人工標(biāo)注的調(diào)試集3中,本文和傳統(tǒng)的經(jīng)典信息檢索模型進(jìn)行了對比,包括向量空間模型(VSM)、Okapi BM25語言模型(LM)、LML、翻譯模型(TM)。對比結(jié)果如表3所示。
從表3可以看出,其中LML的結(jié)果是應(yīng)用本文的數(shù)據(jù)重新訓(xùn)練生成模型計算得到的,這與數(shù)據(jù)集2中LML直接對照Cao等的實驗結(jié)果是根本不同的。相對于傳統(tǒng)的經(jīng)典信息檢索模型,本文的方法表現(xiàn)了很大的優(yōu)勢,在各個評測指標(biāo)上都有顯著提高。
4結(jié)束語
本文應(yīng)用查詢問句和問題的結(jié)構(gòu)信息和語義信息,并結(jié)合排序?qū)W習(xí)算法來融合多種不同類別的特征的方法,再應(yīng)用訓(xùn)練數(shù)據(jù)生成排序模型來提高問題檢索的相關(guān)性和詞語不匹配等問題。實驗表明,本文的方法在各個數(shù)據(jù)和評價指標(biāo)上都要明顯優(yōu)于基準(zhǔn)方法。在接下來的研究中,本文可利用問題檢索過程中得到的問題及其答案來構(gòu)造高質(zhì)量的問答知識庫,以將其應(yīng)用到信息檢索系統(tǒng)和其他信息服務(wù)當(dāng)中。
參考文獻(xiàn):
[1]LIU Y, LI S, CAO Y, et al. Understanding and summarizing answers in community-based question answering services[C]// Proceedings of the 22nd International Conference on Computational Linguistics - Volume 1, COLING 08, Stroudsburg, PA, USA, 2008: 497–504.
[2]JEON J, CROFT W B, LEE J H. Finding similar questions in large question and answer archives[C]//Proceedings of the 14th ACM international conference on Information and knowledge management. ACM, 2005: 84-90.
[3]XUE X, JEON J, CROFT W B. Retrieval models for question and answer archives[C]// Proceedings of the 17th ACM international conference on Information and knowledge management, 2008:475–482.
[4]BERGER A, LAFFERTY J. Information retrieval as statistical translation[C]//Proceedings of the 22nd Annual International ACM SIGIR Conference on Research and Development on Information Retrieval, 1999: 222–229.
[5]PONTE J M, CROFT W B. A language modeling approach to information retrieval[C]//Proceedings of the 21st annual international ACM SIGIR conference on Research and development in information retrieval. ACM, 1998: 275-281.
[6]WANG K, MING Z, CHUA T S. A syntactic tree matching approach to finding similar questions in community-based qa services[C]//Proceedings of the 32nd Annual International ACM SIGIR Conference on Research and Development on Information Retrieval, Boston, MA, USA, 2009, 187–194.
[7]BIAN J, LIU Y, AGICHTEIN E, et al. A few bad votes too many?: towards robust ranking in social media[C]//Proceedings of the 4th international workshop on Adversarial information retrieval on the web. ACM, 2008: 53-60.
[8]CAO X, CONG G, CUI B, et al. A generalized framework of exploring category information for question retrieval in community question answer archives[C]//Proceedings of the 19th international conference on World wide web. ACM, 2010: 201-210.
[9]ZHOU Z, LAN M, NIU Z, et al. Exploiting user profile information for answer ranking in cQA[C]//WWW '12 Companion Proceedings of the 21st international conference companion on WWW, Pages 767-774.
[10]DUAN H, CAO Y, LIN C Y, et al. Searching questions by identifying question topic and question focus. [C]//Proceedings of 46th Annual Meeting of the Association for Computational Linguistics: Human Language Technologies (ACL:HLT), Columbus, OH, June 2008.
[11]BU F, LI H, ZHU X. String re-writing kernel[C]//Proceedings of the 50th Annual Meeting of the Association for Computational Linguistics: Long Papers-Volume 1. 2012: 449-458.