許 笛 王 健 林鴻飛
(大連理工大學(xué)計算機科學(xué)與技術(shù)學(xué)院 遼寧 大連 116024)
?
基于用戶興趣和需求的問句推薦新方法
許笛王健林鴻飛
(大連理工大學(xué)計算機科學(xué)與技術(shù)學(xué)院遼寧 大連 116024)
問句推薦在CQA中主要是針對用戶提出來的新問題進行需求分析,然后在歷史問答對中找到與用戶原始問題最相關(guān)的問題,從而在不能給用戶提供精確結(jié)果的情況下,為用戶帶來更多的選擇,從而提高用戶的體驗。提出一種基于用戶興趣和需求的問句推薦方法,主要是利用PLSA模型根據(jù)用戶歷史回答問題的記錄去發(fā)現(xiàn)用戶的興趣,同時采用基于翻譯模型根據(jù)用戶的查詢預(yù)測用戶的需求。結(jié)合用戶的興趣和需求在問答語料庫中推薦最相關(guān)的問句。實驗在Yahoo! Answers上抽取的真實標注數(shù)據(jù)集上進行,對比實驗結(jié)果表明,該方法在性能上得到了較好的結(jié)果。
社區(qū)問答問句推薦翻譯模型
隨著Web2.0的快速發(fā)展,社區(qū)問答系統(tǒng)已經(jīng)成為比較流行的在線獲取信息和知識分享的平臺。例如雅虎問答,目前最大的社區(qū)問答系統(tǒng)之一,已經(jīng)積累了超過兩千三百萬的問答對,這些問題和答案都是由社區(qū)的用戶提供的。并且,每天將會有數(shù)以千計的問題被提出。然而隨著數(shù)據(jù)指數(shù)級的增長,用戶將花費大量的時間去尋找他們感興趣的問題,因此,對于問題的提出者,將會等待很長的時間才能得到問題的答案。
在社區(qū)問答系統(tǒng)中,為了縮短用戶得到高質(zhì)量答案的等待時間,需要從歷史問題語料庫中找到與用戶查詢最相近問題所對應(yīng)的最佳答案。如果根據(jù)一個查詢能清楚地得到用戶的興趣,那么就可以很輕松地根據(jù)用戶的興趣去找尋與用戶興趣最相關(guān)的問句所對應(yīng)的答案。問句檢索和問句推薦都是為了找到與用戶查詢最相關(guān)的問句或潛在興趣相同的問句。對于用戶的查詢,問句檢索是從問答語料庫中找到和查詢語義最相似的問句。作為問句檢索的補充,問句推薦是找到和用戶原始查詢信息需求最相似和相近的問句。
為了幫助用戶找到他們感興趣的問題,從而能夠發(fā)現(xiàn)新提出來的問題,并進行回答。在雅虎問答系統(tǒng)中我們看到了一些問句推薦技術(shù)的應(yīng)用,比如在用戶主頁將會看到一些的自動生成的基于某些特征的問題列表,例如基于問題提出時間和等級。但是這些系統(tǒng)從本質(zhì)上來說并不是典型的推薦系統(tǒng),因為他們沒有考慮用戶的興趣,本文采用PLSA模型根據(jù)用戶之前回答的問題去分析用戶的興趣,同時采用翻譯模型根據(jù)用戶之前回答的問題去分析用戶的需求,然后綜合兩者信息根據(jù)用戶的興趣和需求去生成一個細粒度的問句推薦列表。
在社區(qū)問答系統(tǒng)中,對于新提出的問題,在系統(tǒng)原始語料庫中可能不存在和新提出問題比較相關(guān)的問題。在這種情況下,問句推薦作為問句檢索的補充,就發(fā)揮了相當(dāng)重要的作用。
1.1問句檢索
問句檢索和問句推薦研究的領(lǐng)域從本質(zhì)上來說達到的效果是一樣的,都是給用戶提供與用戶提問問句最相近的問句。在問句檢索中,對于一個查詢問句,問句檢索主要是從問句的語義信息的角度去對比兩個問句之間的相似性,側(cè)重于從問句與問句之間詞語的角度去對比。
問句檢索最早是應(yīng)用在自動問答系統(tǒng)(FAQ)中。 Burke等人[1]提出了結(jié)合統(tǒng)計相似性和語義相似性來對FAQ中的問句進行排序,并取得了不錯的效果,其中統(tǒng)計相似性采用傳統(tǒng)的向量空間模型來計算,而語義相似性則采用WordNet[2]來進行估計。Sneiders等人[3]提出了基于模板的常見問題檢索系統(tǒng)。Lai等人[4]提出了一種自動從Web中獲取常見的自動問答系統(tǒng)中的問題,但是沒有研究收集問題集以后的研究。
隨著Web2.0時代的到來,問句檢索技術(shù)的研究主要集中于社區(qū)問答系統(tǒng)中,眾多學(xué)者積極參與進來,并涌現(xiàn)出來一些不錯的模型和方法。Shtok等人[5]采用統(tǒng)計的方法,統(tǒng)計歷史問答語料庫中的信息,根據(jù)歷史中已經(jīng)解決的問題,來盡可能多地回答還沒有解決的問題。Riahi等人[6]主要從主題模型的角度出來研究問句主題,并與LDA相比,在性能上有了一定的提高。Jeon等人[7, 8]則綜合比較了現(xiàn)有的多種檢索模型,其中包括向量空間模型、語言模型和翻譯模型等,并把這些模型在相同數(shù)據(jù)集中做了詳細的比較和分析。他們[9]隨后提出了基于翻譯的語言模型,并且把問句對象的相關(guān)答案信息也融入到了模型中,取得了不錯的效果。以上這些方法雖然在社區(qū)問答系統(tǒng)中從不同的角度都表現(xiàn)出了良好的性能,但是這些方法僅僅以特征向量為處理對象,難以表示結(jié)構(gòu)化的特征,存在數(shù)據(jù)稀疏問題,有待進一步的加強。
1.2問句推薦
相當(dāng)于問句檢索,問句推薦的研究相對來說要少一些,同時也表明這個領(lǐng)域有很大的潛力,近幾年吸引了眾多學(xué)者積極投身這一領(lǐng)域的研究,并涌現(xiàn)出一些不錯的推薦方法。Wu等人[10]基于潛在概率語義分析提出了一種自動增加的問句推薦模型。問句推薦在他的工作中被認為包含用戶的興趣和相關(guān)反饋。Duan等人[11]使用tree-cut模型根據(jù)問句中的特征詞把問句表示成一個圖模型。Chen等人[12]從機器學(xué)習(xí)的角度出發(fā),采用機器學(xué)習(xí)的方法根據(jù)文本和元數(shù)據(jù)特征建立預(yù)測模型來預(yù)測用戶問題的意圖,并根據(jù)用戶意圖推薦相關(guān)的答案,表現(xiàn)出來良好的性能。
以上這些問句查詢和問句推薦是從兩個不同的角度,從問答語料庫中檢索到相應(yīng)的相似問句。但是他們沒有考慮到根據(jù)用戶的興趣和需求去考慮問句的相似性和多樣性。本文提出的方法主要是站在用戶的角度,采用PLSA模型根據(jù)用戶之前回答的問題去分析用戶的興趣,并采用翻譯模型根據(jù)用戶之前回答的問題去分析用戶的需求,然后綜合兩個信息根據(jù)用戶的興趣和需求去生成一個細粒度的問句推薦列表,這樣能更加符合用戶的要求,同時也能更加激起用戶回答問題的欲望。
為了提高社區(qū)問題系統(tǒng)中的效率,問句推薦技術(shù)應(yīng)該給用戶推薦他們感興趣的問題,這樣才有助于新提出問題能快速等到答案,從而讓提問問題的用戶不必等待過久的時間。因此解決問句推薦技術(shù)的關(guān)鍵是獲取用戶的興趣。在本文中,我們提出了一種根據(jù)用戶以前回答問題的記錄去分析用戶的興趣。在一個典型的問答周期中,用戶總是在不知不覺中回答哪些關(guān)于同一個主題的問題或者是回答的問題之間的主題比較接近。眾所周知PLSA模型具有獲取現(xiàn)在主題的能力,正好適合我們的問題。潛在的變量在PLSA模型中表示相應(yīng)問句的主題,因此,對于一個給定的問句集合,用戶和他回答的分布可以用如下公式表示:
(1)
其中u∈u1,u2,…,un表示用戶集合,q∈q1,q2,…,qm表示問句集合,t∈t1,t2,…,tk表示k個主題,對于每個用戶獲取一個主題。
然而,在一個真實的社區(qū)問答系統(tǒng)中,對于社區(qū)問答系統(tǒng)中的每一個用戶所回答的問題數(shù)量在問題集合中的比例是很小的,這將意味著由式(1)計算出來的Pr(u,q)將會是零。為了解決這個稀疏問題,我們把計算用戶和問句的概率轉(zhuǎn)換成用戶到問句中特征詞的概率,因此式(1)將改寫為如下的式(2)表示:
(2)
其中w∈w1,w2,…,wL是問句集合中的特征詞集合,需要注意的是在PLSA模型中允許每個用戶有多個主題,反應(yīng)的事實是每個用戶可以有多個興趣。
因此對于問句集合的對數(shù)似然估計L如下:
(3)
其中c(u,w)表示在用戶u所回答問題集合中特征詞w的個數(shù)模型參數(shù)的學(xué)習(xí)可以使用EM算法在問句集合中去找到一個最大的對數(shù)似然估計:
(4)
(5)
(6)
(7)
然后我們的模型向用戶推薦問句作為后驗概率Pr(u|q),也就是說,用戶u可能回答問題q的概率。根據(jù)貝葉斯法則,我們將計算Pr(u|q)∝Pr(u,q),它的結(jié)果將作為包含特征詞q的生成概率,用句子長度進行歸一化:
(8)
其中wi表示問句q中的特征詞,|q|表示問句的長度。因此,根據(jù)這個等分對用戶的問句列表進行排序,然后推薦前n個問句給用戶。
3.1基本思想
本文之所以去預(yù)測用戶的信息需求,主要是基于兩點思想:首先是在社區(qū)問答系統(tǒng)中有一些問句沒有問句的主題部分,因此我們需要一個模型去預(yù)測用戶的信息需求,并且根據(jù)用戶的需求去計算出相應(yīng)的問句推薦列表。其次是信息需求的預(yù)測不僅在社區(qū)問答中扮演了一個重要的部分,并且在信息檢索中也至關(guān)重要。因為本文提出一種基于翻譯模型的方法來預(yù)測用戶的信息需求。
3.2統(tǒng)計機器翻譯模型
統(tǒng)計機器翻譯模型的定義如下首先是需要一個平行的語料庫。設(shè)(f(s),e(s)),s=1,2,…,s是一個平行語料庫。在一個句子對(f,e),源語言字符串,f=f1f2…fJ含有J個特征詞,并且e=e1e2…eI含有I個特征詞。a=a1a2…aJ表示源字符串到目標字符串的映射信息。
統(tǒng)計機器翻譯模型主要是估計Pr(f|e),從源字符串e到目標字符串f的轉(zhuǎn)移概率為:
(9)
這里EM算法又來訓(xùn)練校正模型來估計參數(shù)詞典p(f|e)。
在E步,對每一個句對(f,e):
(10)
Pr(a|f,e)=Pr(f,a|e)/Pr(a|e)
(11)
在M步,詞典參數(shù)將變成:
(12)
不同的校正模型比如IBM-1到IBM-5和HMM模型對于Pr(f,a|e)提供不同的分解方式。對于不同的校正模型對于相應(yīng)的校正和參數(shù)提供不同的方法。
3.3信息需求預(yù)測模型
我們對統(tǒng)計轉(zhuǎn)移概率預(yù)測完后,對每個特征詞w根據(jù)p(w|Q)進行排序,從特征詞生成問句Q的概率為:
(13)
對于特征詞到特征詞之間的轉(zhuǎn)移概率Ptr(w|t)是特征詞w在問句Q中使用翻譯模型從特征詞a到t的轉(zhuǎn)移概率。上述的公式采用線性平滑,公式后半部分可以看出是語言模型。其中λ是平滑參數(shù)。P(t|Q)和p(t|C)是利用最大似然估計等到的值。
需要注意的一個重點是在使用統(tǒng)計翻譯模型第一次估計Pr(f|e)和計算Pr(e|f)要使用貝葉斯最小排序誤差。
(14)
前面介紹了基于PLSA的用戶興趣預(yù)測模型和基于翻譯模型的用戶需求預(yù)測模型,從中可以看出對于問句推薦,如果能有效地利用用戶的興趣和用戶的需求,那么問句推薦算法將能更加準確、有效地進行推薦。那么如何有效地利用者兩種有效的信息,本文采用線性加權(quán)的方式去融合這兩種信息,之所以采用這種方式,是因為采用線性加權(quán)簡單有效,并且效率較高。結(jié)合式(8)和式(13)可得到如下公式:
Score(u,q)=(1-α)Pr(u,q)+αPr(w|q)
(15)
其中Score(u,q)是最后的推薦得分,Pr(u,q)是式(8)的結(jié)果,Pr(w|q)是式(13)的結(jié)果。
5.1實驗數(shù)據(jù)
為了獲得實驗所使用的語料,我們抓取了Yahoo! Answershttp://answers.yahoo.com的五個類別的數(shù)據(jù),分別是關(guān)于環(huán)境、健康、運動、旅行和社會科學(xué)。首先對抓取的數(shù)據(jù)集進行預(yù)處理(去停用詞、詞干化等),同時過濾掉5個類別中只有一個答案的問句,同時5個類別的問句在都標記了最佳的答案。數(shù)據(jù)集的統(tǒng)計如表1。對于每一個類別,我們用該類別中的85%的問答對集合(其中包含問句和相應(yīng)大答案)作為訓(xùn)練。剩余的25%作為測試集合。同時我們根據(jù)經(jīng)驗選擇潛在的概率變量為100。
表1 相關(guān)語料集的統(tǒng)計信息情況
5.2實驗結(jié)果與分析
為了評價本文檢索推薦的性能,采用P@N和MAP (Mean Average of Precision)兩個指標對實驗進行評價,同時采用了5種不同的問句推薦系統(tǒng)進行對比實驗,表2是4種不同方法的描述,其中(1)和(2)分別是文獻[13]和文獻[14]中提出的方法,采用相關(guān)類中的實驗結(jié)果如表3所示。
表2 實驗方法和表述
表3 在相關(guān)語料集上4種模型的MAP和P@1值
從表3結(jié)果可以看出:
(1) 采用基于問句類別信息的語言模型(LM+C)比傳統(tǒng)的語言模型在MAP和P@10上都有所的提高,是因為采用基于類別信息的語言模型除了擁有傳統(tǒng)語言模型的優(yōu)勢外,還考慮了句子本身的類別信息,從中也可以看出問句的類別信息對于問句的推薦還是很有用處的,對于一個問句首先確定其類別,然后根據(jù)問句類別再進行相應(yīng)的推薦。
(2) 采用基于PLSA的問句推薦算法不僅在MAP上比基于問句類別信息的語言模型提高了0.0313,而且在P@10上提
高了0.0243,表明基于PLSA的問句推薦算法要優(yōu)于基于問句類別信息的語言模型的方法。其主要原因在于基于PLSA的問句推薦算法根據(jù)用戶以前回答的問題,從中分析出用戶的興趣,然后根據(jù)用戶的興趣進行定向的推薦??梢钥闯鲇脩舻呐d趣在問句推薦中起著十分重要的作用。
(3) 采用翻譯模型的問句推薦方法比基于問句類別信息的語言模型的方法在MAP和P@10上都有所提高,可以看出用翻譯模型來預(yù)測用戶的需求信息,根據(jù)用戶的需求進行定向的推薦,效果要好于基于類別的語言模型的方法。但是,采用翻譯模型的問句推薦方法比基于PLSA的問句推薦算法在MAP和P@10上都有所降低,表明在問句推薦中用戶的興趣起到的作用要高于用戶的需求,或者說從用戶歷史回答的問題中更容易找到用戶的興趣。
(4) 本文提出的基于用戶興趣和需求的問句推薦算法從實驗結(jié)果中可以看出,相對于其他方法在MAP和P@10上都有所提高。同時由于在實驗中我們發(fā)現(xiàn)在問句推薦中用戶的興趣起的作用要高于用戶的需要,因此在本文提出的方法中,我們在參數(shù)設(shè)定上讓α=0.7來偏重用戶的興趣。實驗結(jié)果也證明本文提出方法是一個有效的方法。
社區(qū)問答系統(tǒng)作為新興的知識獲取平臺,擁有大量的用戶群,每天產(chǎn)生大量的問題與答案,如何有效地利用這些資源成為眾多學(xué)者關(guān)注的問題。本文研究的問句推薦是社區(qū)問答系統(tǒng)中必不可少的一部分,主要探討社區(qū)問答系統(tǒng)中的問句推薦方法,提出了一種基于用戶興趣和需求的問句推薦方法,對于用戶的興趣的發(fā)現(xiàn)采用PLSA模型,而對于用戶信息需要的預(yù)測采用的基于翻譯的模型。多角度對比的實驗結(jié)果表明,本文提出的方法能夠有效地解決社區(qū)問答系統(tǒng)中句子推薦的問題。當(dāng)然,本文描述的方法尚存在著速度等方面的問題,這需要在今后的研究中加以改進,也是以后要研究的重點。
[1] Burke R D, Hammond K J, Kulyukin V A, et al. Schoenberg. Question answering from frequently asked question files:Experiences with the faq finder system[J]. AI Magazine,1997,18(2):57-66.
[2] Miller G A. WordNet:A Lexical Database for English[J].COMMUNICATIONS OF THE ACM, 1995,38(11):39-41.
[3] Sneiders E. Automated Question Answering Using Question Templates That Cover the Conceptual Model of the Database[J].NLDB, 2002,45(5):110-119.
[4] Lai Y, Fung K, Wu C. Faq mining via list detection[J].Proc. of the Workshop on Multilingual Summarization and Question Answering, 2002,56(3):168-184.
[5] Shtok A, Dror G, Maarek Y. Learning from the past: answering new questions with past answers[C]//Proceedings of the 21st international conference on World Wide Web. ACM New York, NY, USA,2012:759-768.
[6] Riahi F, Zolaktaf Z, Shafiei M. Finding expert users in community question answering[C]//Proceedings of the 21st international conference companion on World Wide Web. ACM New York, NY, USA,2012:791-798.
[7] Jeon J, Croft W B, Lee J H. Finding semantically similar questions based on their answers[C]//SIGIR,2005:617-618.
[8] Jeon J, Croft W B, Lee J H. Finding similar questions in large question and answer archives[C]//CIKM, 2005:84-90.
[9] Xue X, Jeon J, Croft W B. Retrieval models for question and answer archives[C]//SIGIR, pages,2008:475-482.
[10] Collins M, Duffy N. Convolution Kernels for Natural Language[C]//Advances in Neural Information Processing Systems 14, MIT press,2001:625-632.
[11] Wang K, Ming Z Y, Chua T S. A syntactic tree matching approach to finding similar questions in community-based QA services[C]//SIGIR’09: Proceedings of the 32nd international ACM SIGIR conference on Research and development in information retrieval, Boston, MA, USA,2009:187-194.
[12] Chen L, Zhang D, Mark L. Understanding user intent in community question answering[C]//WWW’12 Companion Proceedings of the 21st international conference companion on World Wide Web. ACM New York, NY, USA,2012:823-828.
[13] Zhai C, Lafferty J D. A study of smoothing methods for language models applied to information retrieval[J]. ACM Trans. Inf. Syst., 2004, 22(2):179-214.
[14] Cao X, Cong G, Cui B, et al.The use of categorization information in language models for question retrieval[C]//CIKM’09: Proceeding of the 18th ACM conference on Information and knowledge management, Hong Kong, China, 2009:256-274.
A NEW QUESTION SENTENCE RECOMMENDATION METHOD BASED ON USER INTERESTS AND NEEDS
Xu DiWang JianLin Hongfei
(SchoolofComputerScienceandTechnology,DalianUniversityofTechnology,Dalian116024,Liaoning,China)
Questions recommendation in CQA is mainly the demand analysis for new questions ask by user, then to find in history question-answer pairs the problems most correlated to the original question of users, therefore to bring forward to users more choices under the condition of unavailable to provide users with accurate results, so that to improve users experience. This paper proposes a question recommendation method, it is based on user interests and needs, and mainly uses PLSA model to find users’ interests according to user historical records of answering questions. At the same time it predicts the needs of users according to their queries based on translation model. Then it combines user’s interest and need to recommend the most relevant questions in Q&A corpus. The experiments are conducted on truly labelled dataset extracted from Yahoo! Answers. The comparison of experimental results shows that the proposed method achieves a better result in performance.
Community question and answeringQuestion recommendationTranslation model
2015-03-16。國家自然科學(xué)基金項目(60673039,60973068);國家社科基金項目(08BTQ025);教育部留學(xué)回國人員科研啟動基金和高等學(xué)校博士學(xué)科點專項科研基金課題(20090041110002,20110041110034)。許笛,碩士生,主研領(lǐng)域:文本挖掘,社區(qū)問答系統(tǒng)。王健,副教授。林鴻飛,教授。
TP391
A
10.3969/j.issn.1000-386x.2016.08.011