一種基于微博數(shù)據(jù)的多維度檢索排序優(yōu)化算法和工具的制作方法
【專利摘要】一種基于微博數(shù)據(jù)的多維檢索排序優(yōu)化算法和工具,該算法從數(shù)據(jù)特征、用戶特征和應用特征三個維度對Lucene原始檢索排序結(jié)果進行優(yōu)化,使優(yōu)化后的排序結(jié)果在體現(xiàn)數(shù)據(jù)特征、符合用戶查詢意圖和契合應用主題等方面得到提升。多維度檢索排序優(yōu)化工具,完成基于金融微博數(shù)據(jù)的實現(xiàn),分為三個模塊,每個模塊完成一個維度的優(yōu)化。數(shù)據(jù)特征的排序優(yōu)化模塊實現(xiàn)維度一數(shù)據(jù)特征優(yōu)化;用戶特征的排序優(yōu)化模塊實現(xiàn)維度二用戶特征優(yōu)化,其包括兩個子模塊——檢索標簽和檢索日志的優(yōu)化子模塊;應用特征的排序優(yōu)化模塊實現(xiàn)維度三應用特征優(yōu)化。該工具適合優(yōu)化所有Lucene的基本檢索結(jié)果,可在某系統(tǒng)檢索模塊中實現(xiàn)Lucene原始檢索結(jié)果的優(yōu)化排序,給予用戶更好的檢索體驗。
【專利說明】一種基于微博數(shù)據(jù)的多維度檢索排序優(yōu)化算法和工具
【技術(shù)領域】
[0001]本發(fā)明涉及一種多維度檢索排序優(yōu)化算法,從檢索數(shù)據(jù)特征、檢索用戶特征和系統(tǒng)應用特征三個維度對Lucene的檢索排序結(jié)果進行優(yōu)化,實現(xiàn)了基于金融微博數(shù)據(jù)的Web系統(tǒng)的檢索優(yōu)化工具。
【背景技術(shù)】
[0002]社交網(wǎng)絡數(shù)據(jù)正成為人們重要的消息來源,而微博數(shù)據(jù)在社交數(shù)據(jù)中占有非常重要的地位,面對互聯(lián)網(wǎng)上的海量數(shù)據(jù),利用數(shù)據(jù)檢索系統(tǒng)進行信息檢索是必要和重要的。針對某幾個關鍵詞,數(shù)據(jù)檢索系統(tǒng)通過查找索引,返回包含這些關鍵詞的結(jié)果數(shù)據(jù)。一般,數(shù)據(jù)檢索系統(tǒng)會利用一定的公式計算這些結(jié)果數(shù)據(jù)與檢索關鍵詞的相關度,相關度高的則以較靠前的位置返回給用戶。例如,在谷歌中輸入關鍵詞“上海自貿(mào)區(qū)”,進行檢索,返回結(jié)果的第一條數(shù)據(jù)就應該是按照谷歌的數(shù)據(jù)檢索系統(tǒng)的得分公式計算出來的、與檢索關鍵詞相關度最高的結(jié)果,往下檢索結(jié)果與檢索關鍵詞的相關度依次遞減。
[0003]這個檢索結(jié)果的排序具有重要的意義,因為調(diào)查表明大部分用戶只會查看前兩頁或者前30條檢索結(jié)果,而且前10條檢索結(jié)果是查看的重點,直接關系到用戶對此檢索服務的用戶體驗和評價。所以,如何保證檢索結(jié)果的有效排序,使對用戶更有價值的檢索結(jié)果排在前位,這是數(shù)據(jù)檢索領域的一個研究熱點。
[0004]微博數(shù)據(jù)數(shù)據(jù)具有不同于傳統(tǒng)數(shù)據(jù)的特點,例如數(shù)據(jù)長度一般有限制、數(shù)據(jù)具有較強的時效性、價值密度比較低、具有許多附加信息屬性等等,這些數(shù)據(jù)特點對檢索結(jié)果的排序具有重要的作用。例如,針對檢索出的微博數(shù)據(jù),具有相同的檢索關鍵詞信息,如果某一條微博的發(fā)布時間更近,應該認為這條微博具有更好的時效性,也具有更高的價值,排名應該靠前。顯然,單一的詞頻位置加權(quán)的檢索排序算法不能滿足以上的需求。
[0005]同時,除了數(shù)據(jù)特點之外,用戶檢索行為的特點也是檢索結(jié)果排序需要考慮的重要方面。針對相同的關鍵詞,用戶的真實檢索意圖可能是不同的,還是“上海自貿(mào)區(qū)”這個檢索詞,有的用戶希望找到的最近自貿(mào)區(qū)發(fā)生的新聞,而有的用戶希望檢索自貿(mào)區(qū)的相關位置。如果能夠有效識別出用戶的檢索意圖,就可以將更加符合用戶意圖的檢索結(jié)果排位放前,這無疑會改善用戶的檢索體驗。
[0006]再次,大部分檢索服務是作為一個大系統(tǒng)的一部分進行工作的,它依賴于這個系統(tǒng)中已經(jīng)獲取并存儲的數(shù)據(jù),一般情況下,這個大系統(tǒng)有某一個特定方向的主題,例如金融、科技等等。系統(tǒng)的主要用戶既然選擇使用這個系統(tǒng)的檢索服務,在很大概率上是希望能夠檢索到與系統(tǒng)主題相關的數(shù)據(jù)?;谝陨系募僭O,如果檢索結(jié)果與系統(tǒng)的主題相關,它應該是更有價值的,排名也應該更靠前。
【發(fā)明內(nèi)容】
[0007]有鑒于此,本發(fā)明的目標是針對社交網(wǎng)絡中的微博數(shù)據(jù)檢索,提出一種多維度檢索排序優(yōu)化算法和工具,此算法基于Lucene簡單詞頻位置加權(quán)排序算法,綜合考慮檢索數(shù)據(jù)特點、用戶檢索行為特點和系統(tǒng)應用特點,將排序結(jié)果進行優(yōu)化。優(yōu)化后的檢索排序結(jié)果,將更加體現(xiàn)微博數(shù)據(jù)的數(shù)據(jù)特征,更加契合用戶的真實檢索意圖,同時也更加貼近系統(tǒng)應用的主題。此多維度檢索排序優(yōu)化工具,完成基于金融微博數(shù)據(jù)的實現(xiàn)。本算法的設計與工具的實現(xiàn),將會增加檢索結(jié)果排名前列的數(shù)據(jù)的綜合價值,將會極大的提高數(shù)據(jù)檢索的用戶體驗。
[0008]本發(fā)明提出的多維度檢索排序優(yōu)化算法將在Lucene檢索結(jié)果的基礎上,對一個大系統(tǒng)的檢索模塊的排序結(jié)果進行優(yōu)化。優(yōu)化主要從三個維度進行:檢索數(shù)據(jù)特征,檢索用戶特征,系統(tǒng)應用特征。三個維度優(yōu)化模塊的具體定義如下:
[0009]維度一數(shù)據(jù)特征優(yōu)化模塊:檢索數(shù)據(jù)特征表示被檢索數(shù)據(jù)的特征,包括長度、語義、附屬信息等等。定義檢索數(shù)據(jù)特征(Data Attributes)為dataAttr= {DAI, DA2, DA3,...DAn},其中DAi表示檢索數(shù)據(jù)的不同特征,主要挖掘數(shù)據(jù)不同于傳統(tǒng)網(wǎng)頁數(shù)據(jù)的且Lucene檢索排序模型沒有考慮到的附屬數(shù)據(jù)信息,例如數(shù)據(jù)的發(fā)布時間、數(shù)據(jù)傳播度、作者信息、數(shù)據(jù)的權(quán)威程度等等。
[0010]維度二用戶特征優(yōu)化模塊:檢索用戶特征表示用戶的真實檢索意圖。定義檢索用戶特征(User Attributes)為 userAttr= {UA1, UA2, UA3,...UAn},其中 UAi 表不用戶的檢索意圖。用戶的查詢意圖是指用戶在進行查詢時,希望搜索引擎服務能夠返回的信息。挖掘不同用戶的真實意圖,針對相同的檢索詞,不同的用戶可能有不同的檢索意圖。例如相同的查詢詞“歐洲史”,用戶A想找到相關的書籍介紹,用戶B希望找到相關的研究學者或者機構(gòu)??梢圆捎枚喾N方法,例如要求用戶輸入額外信息來表明檢索意圖,或者挖掘用戶查詢歷史推測用戶可能的檢索意圖,從而返回給用戶更加符合需求的檢索結(jié)果??梢越柚谟脩舨樵?nèi)罩净蛘卟樵儤撕炌瓿捎脩粽鎸崣z索意圖的挖掘。
[0011]維度三應用特征優(yōu)化模塊:系統(tǒng)應用特征表示應用的特點,定義系統(tǒng)應用特征(App Attributes)為 appAttr= {AA1, AA2, AA3,...AAn}, AAi 表示應用的特征或者主題,挖掘系統(tǒng)應用的特征,不同的系統(tǒng)應用有不同的應用領域、數(shù)據(jù)特征,顯然與應用更相關的查詢結(jié)果是更有價值的,排名應該更靠前??梢酝ㄟ^將查詢結(jié)果分類,對于與應用更相關的那類結(jié)果,認為更加符合查詢需求,適當提高排名。例如,如果一個應用是檢索礦產(chǎn)相關的信息,那么檢索結(jié)果如果屬于礦產(chǎn)類的信息,這類檢索結(jié)果就應該有更高的排名??梢酝ㄟ^分類或者文本相似度方法完成系統(tǒng)應用特征挖掘。
[0012]本發(fā)明在以上三個維度上對Lucene原始的檢索排序結(jié)果進行優(yōu)化,分別從檢索數(shù)據(jù)特征、檢索用戶特征和系統(tǒng)應用特征三方面根據(jù)相應的得分計算公式,計算其排序優(yōu)化得分:
[0013]Optimizescore = f (Σ dataAttr) +g (Σ userAttr) +h (Σ appAttr)
[0014]其中,f()表示數(shù)據(jù)特征優(yōu)化得分的計算公式,g()表示用戶特征優(yōu)化得分的計算公式,h()表示應用特征優(yōu)化得分的計算公式。優(yōu)化后的最終排序得分Finalsc^:
[0015]Finalscore = α+β
[0016]其中α表示調(diào)整后的Lucene排序得分,β表示排序優(yōu)化得分,即0ptimizesc;OTe;。最后返回的檢索結(jié)果排序就依據(jù)Finalsc^進行。
[0017]所述的維度一數(shù)據(jù)特征維度優(yōu)化模塊的功能特點如下: [0018]對數(shù)據(jù)特征進行分析,在基于金融微博數(shù)據(jù)的本工具的實現(xiàn)中,分析微博數(shù)據(jù)特征dataAttr包括但不限于:
[0019]1.微博的文本長度有一定的限制,例如新浪微博的限制為140個漢字(即280個字符),一般以為微博的文本長度越長,可能包含的有用信息越多,價值就越大;
[0020]2.微博除去文本內(nèi)容外,其他附屬信息對微博價值的影響也很重要,這些附屬信息包括一下:
[0021](I)發(fā)布的時間:微博作為社交網(wǎng)絡數(shù)據(jù),價值隨著時間的遞增而遞減,即最新發(fā)布的微博應該具有越大的價值;
[0022](2)評論數(shù)和轉(zhuǎn)發(fā)數(shù):這是微博數(shù)據(jù)數(shù)據(jù)不同于傳統(tǒng)網(wǎng)頁數(shù)據(jù)的重要特征,可以表示著此條微博具有的影響力;兩者數(shù)目越大,表示此條微博傳播的越廣泛,具有的價值也就越大;
[0023]3.微博數(shù)據(jù)是人與人之間的一個巨大關系網(wǎng),其數(shù)據(jù)的作者屬性相比于傳統(tǒng)網(wǎng)頁數(shù)據(jù),對數(shù)據(jù)價值而言,擁有更大的影響因子:
[0024](I)作者的粉絲數(shù):作者的粉絲數(shù)越多,其微博的影響力越廣泛,微博價值更大;
[0025](2)作者的微博數(shù):作者發(fā)布的微博數(shù)越多,表示他在社交網(wǎng)絡中越活躍,其微博就更具有價值。
[0026]基于以上分析,本工具基于一下關鍵屬性進行數(shù)據(jù)特征排序優(yōu)化:`[0027]1.Attr1 文本長度
[0028]2.Attr2*布時間
[0029]3.Attr3評論數(shù)+轉(zhuǎn)發(fā)數(shù)
[0030]4.Attr4作者粉絲數(shù)
[0031 ] 5.Attr5作者已發(fā)布微博數(shù)
[0032]以上五個關鍵屬性,都是越大越好;針對在關鍵屬性上表現(xiàn)更加優(yōu)異的微博,其檢索排序的結(jié)果應該更加靠前。
[0033]設定Lucene關鍵字檢索后,返回相關微博N (設定N=IOO)條,這N條微博的初始排序是按照Lucene檢索打分公式進行排序的?;谖⒉?shù)據(jù)特點的檢索排序優(yōu)化模塊統(tǒng)計N條微博以上I~5五個關鍵屬性的值,然后調(diào)整排序,得到優(yōu)化后的排序結(jié)果。
[0034]經(jīng)過Lucene檢索出的包含Query關鍵詞的微博的ID集合{weibo_id},遠程訪問數(shù)據(jù)庫,根據(jù)微博ID找到微博的詳細信息(包含五條關鍵屬性)。這里以屬性“Attri文本長度”為例進行介紹分析過程,其他屬性處理過程類似:
[0035]分析的準則是屬性Attr值越大,微博的價值越大,排名越靠前。將各微博的Attr屬性值進行排序,按照排序結(jié)果,分配不同的排序影響權(quán)重,最后對Lucene的原始排序結(jié)果產(chǎn)生優(yōu)化調(diào)整。但是考慮到檢索用戶的目標是一個集合的微博,而非只關注個別微博,也就是說排名的前η個(例如η=10)微博的價值對檢索用戶是一致的,都屬于最高的優(yōu)先級,所以本文采用的策略是選擇Attr屬性值最大的η個微博,分配相同的排序影響權(quán)重。
[0036]經(jīng)過屬性統(tǒng)計分析之后,針對上面列出的五個數(shù)據(jù)特征得到如下格式的結(jié)果:
[0037]attrl_max= {id_l_l, id_l_2,…id_l_n}
[0038]attr2_max= {id_2_l, id_2_2,…id_2_n}
[0039]attr3_max= {id_3_l, id_3_2,…id_3_n}
[0040]attr4_max= {id_4_l, id_4_2,…id_l_n}[0041]attr5_max= {id_5_l, id_5_2,...1d_5_n}
[0042]其中(l<=i<=5, l〈=j〈=n)表示第i個屬性的值在所有微博中從大到小排在前η位,不同屬性的集合之間可能存在交集,需要對五個屬性進行綜合的處理,得到所有微博的最后排序影響權(quán)重。
[0043]計算數(shù)據(jù)特征排序優(yōu)化得分:
【權(quán)利要求】
1.一種基于微博數(shù)據(jù)的多維檢索排序優(yōu)化算法,其特征在于:結(jié)合微博數(shù)據(jù)特點,從檢索數(shù)據(jù)特征、檢索用戶特征和系統(tǒng)應用特征三個維度,對Lucene原始檢索排序結(jié)果進行綜合多維度的優(yōu)化調(diào)整,使優(yōu)化后的排序結(jié)果更加體現(xiàn)數(shù)據(jù)特征、更加符合用戶的真實查詢意圖、更加契合應用的主題。多維度檢索排序優(yōu)化工具定義了以下三個維度,使用多維檢索排序優(yōu)化算法,對基于金融微博數(shù)據(jù)Web應用進行檢索排序優(yōu)化的實現(xiàn),最后對基于金融微博數(shù)據(jù)實現(xiàn)的工具進行數(shù)據(jù)測試,證明了此工具的有效性: 維度一是檢索數(shù)據(jù)特征,在此維度上全面考慮數(shù)據(jù)的特點,尤其是微博數(shù)據(jù)不同于傳統(tǒng)數(shù)據(jù)的顯著區(qū)別,基于此區(qū)別對排序結(jié)果進行優(yōu)化; 維度二是檢索用戶特征,主要探究用戶的真實檢索意圖,使更符合用戶檢索意圖的檢索結(jié)果優(yōu)先返回; 維度三是系統(tǒng)應用特征,針對某一應用的特定主題,對檢索結(jié)果進行優(yōu)化,使更契合主題的檢索結(jié)果優(yōu)先返回。
2.根據(jù)權(quán)利要求1所述的檢索數(shù)據(jù)特征維度優(yōu)化,其特征在于:定義檢索數(shù)據(jù)特征(Data Attributes)為 dataAttr= {DAI, DA2, DA3,...DAn},其中 DAi 表不檢索數(shù)據(jù)白勺不同特征,挖掘數(shù)據(jù)不同于傳統(tǒng)網(wǎng)頁數(shù)據(jù)的、且Lucene檢索排序模塊沒有考慮到的附屬數(shù)據(jù)信息,包括但不限于數(shù)據(jù)的發(fā)布時間、數(shù)據(jù)傳播度、作者信息、數(shù)據(jù)的權(quán)威程度等等,這些附屬信息將影響檢索結(jié)果的綜合價值,從而影響最終排序結(jié)果。在此維度的實現(xiàn)中,采用了具體方法計算各檢索數(shù)據(jù)特征對檢索結(jié)果價值的影響度。
3.根據(jù)權(quán)利要求1所述的檢索用戶特征維度優(yōu)化,其特征在于:定義檢索用戶特征(User Attributes)為 userAttr= {UA1, UA2, UA3,...UAn},其中 UAi 表不用戶的檢索意圖。用戶的檢索意圖是指用戶在進行查詢時,希望檢索服務能夠返回的信息。針對相同的檢索詞,不同的用戶可能有不同的檢索意圖。例如相同的查詢詞“歐洲史”,用戶A想找到相關的書籍介紹,用戶B希望找到相關的研究學者或者機構(gòu)。在此維度的實現(xiàn)中,采用了具體方法計算各檢索用戶特征對檢索結(jié)果價值的影響度。
4.根據(jù)權(quán)利要求1所述的系統(tǒng)應用特征維度優(yōu)化,其特征在于:定義系統(tǒng)應用特征(App Attributes)為 appAttr= {AA1, AA2, AA3,...AAn}, AAi 表示應用的特征或者主題,不同的系統(tǒng)應用有不同的應用領域、主題,顯然與應用主題更相關的查詢結(jié)果是更有價值的,排名應該更靠前。例如,如果一個應用是檢索礦產(chǎn)相關的信息,那么檢索結(jié)果與礦產(chǎn)類相關度較大,就應該有更高的排名。在此維度的實現(xiàn)中,采用了具體方法計算各系統(tǒng)應用特征對檢索結(jié)果價值的影響度。
5.根據(jù)權(quán)利要求2所述的檢索數(shù)據(jù)特征維度優(yōu)化,其特征在于基于金融微博數(shù)據(jù),總結(jié)出微博數(shù)據(jù)相對傳統(tǒng)網(wǎng)頁數(shù)據(jù)的不同的特點,dataAttr集合為DAl=文本長度,DA2=發(fā)布時間,DA3=評論數(shù)+轉(zhuǎn)發(fā)數(shù),DA4=作者粉絲數(shù),DA5=作者已發(fā)布微博數(shù);以上五個關鍵屬性,都是越大越好,針對在關鍵屬性上表現(xiàn)更加優(yōu)異的檢索結(jié)果,其在最后的返回頁面中應該更加靠前。分別取出在五個屬性上表現(xiàn)最好的K條微博,形成5個集合,每個集合K條數(shù)據(jù)。按照具體公式計算檢索數(shù)據(jù)特征維度優(yōu)化得分。
6.根據(jù)權(quán)利要求3所述的檢索用戶特征維度優(yōu)化,其特征在于利用兩種方法分析用戶意圖,實現(xiàn)具體的優(yōu)化: 一種是基于檢索標簽的優(yōu)化 ,利用標簽表明用戶的意圖,檢索用戶需要額外給出一些輔助信息,例如上例中的檢索關鍵詞“股票書”,“書”就屬于這類輔助信息,表明用戶想要查找的是與股票相關的書,而非股票大盤走勢等等。 另一種是基于用戶日志的優(yōu)化,記錄所有注冊用戶的查詢?nèi)罩?,其中保存用戶查詢的關鍵詞、點擊行為以及停留的時間。認為點擊次數(shù)越多、停留時間越長的檢索結(jié)果更加符合用戶檢索意圖,基于此建立某一用戶檢索關鍵詞與其檢索意圖的關聯(lián),并利用此關聯(lián)對相似查詢進行優(yōu)化處理。
7.根據(jù)權(quán)利要求6所述的基于檢索標簽的優(yōu)化,其特征在于用戶輸入的檢索信息分為檢索關鍵詞和檢索標簽,工具提供特定的輸入格式區(qū)分兩者。檢索標簽Search Tag(STag),表示查詢的真實意圖。在基于金融微博數(shù)據(jù)的工具的實現(xiàn)中,對于每一條微博數(shù)據(jù),有相應的微博標簽Weibo Tag (WTag)0 WTag主要有微博作者在注冊微博平臺上時填寫的用戶標簽、微博內(nèi)容中標注出的話題、用戶手動添加這三個來源。針對Lucene返回的原始檢索結(jié)果,計算每一條微博的WTag與STag的相關度,判定返回的微博與用戶意圖的相關性,從而對原始排序結(jié)果進行優(yōu)化。
8.根據(jù)權(quán)利要求4所述的系統(tǒng)應用特征維度優(yōu)化,其特征在于對于基于金融微博數(shù)據(jù)的Web應用,數(shù)據(jù)在抓取的過程中已經(jīng)通過分類系統(tǒng)實現(xiàn)了分類,并將分類的結(jié)果作為微博附屬信息的一部分存儲在數(shù)據(jù)庫中。針對每一個檢索結(jié)果,可以得到其分類信息,如果微博的分類屬于金融以及金融以下的任意一個子類,則累加sum (統(tǒng)計參數(shù),統(tǒng)計所有分類在金融下的返回結(jié)果的個數(shù))。按照具體公式計算基于應用特征的排序優(yōu)化得分。
9.根據(jù)權(quán)利要求1所述的對Lucene原始檢索排序結(jié)果進行綜合多維度的優(yōu)化調(diào)整,其特征在于通過權(quán)利要求2、3、4所述的三個維度的優(yōu)化之后,相加計算其排序優(yōu)化總得分Optimizescore0
Optimizescore = f (Σ dataAttr) +g (Σ userAttr) +h (Σ appAttr)` 其中,f()表示檢索數(shù)據(jù)特征優(yōu)化得分的計算公式,g()表示檢索用戶特征優(yōu)化得分的計算公式,h()表示系統(tǒng)應用特征優(yōu)化得分的計算公式。優(yōu)化后的最終排序得分Finalsc^:
Finalscore = α + β 其中ct表不調(diào)整后的Lucene排序得分,β表不排序優(yōu)化得分,即OptimizeseOTe。最后返回的檢索結(jié)果排序就依據(jù)Finalsc^進行。
10.根據(jù)權(quán)利要求1所述的對基于金融微博數(shù)據(jù)實現(xiàn)的工具進行數(shù)據(jù)測試,其特征在于提出了針對三個維度優(yōu)化效果的度量參數(shù),分別為微博數(shù)據(jù)特征參數(shù)AttrParam、檢索用戶特征參數(shù)UserParam、應用特征參數(shù)AppParam。通過比較優(yōu)化前后的三個度量參數(shù)的值,證明優(yōu)化算法的優(yōu)化效果。
【文檔編號】G06F17/30GK103823906SQ201410101816
【公開日】2014年5月28日 申請日期:2014年3月19日 優(yōu)先權(quán)日:2014年3月19日
【發(fā)明者】閆丹鳳, 張麗瑩, 徐佳 申請人:北京郵電大學