專利名稱:一種基于語言模型的排序算法的制作方法
技術領域:
本發(fā)明涉及信息檢索領域,特別是涉及信息檢索領域的排序算法.
背景技術:
隨著信息檢索技術的不斷發(fā)展和信息處理技術的進步,人們對信息檢索精度的要 求越來越高,信息檢索中的算法也層出不窮.在信息檢索領域,評價一個排序算法的好壞的重要標準就是能夠快速的讓用戶找 到所需的信息,既與用于搜索主題相關的信息.所謂的檢索結果的相關性就是用戶的檢索 詞與頁面的相關程度,通常相關性是排序的一個重要依據.計算頁面相關性的主要方法有 google的PageRank、百度的超鏈接分析等。它們的基本原理就是根據網頁的引用情況進行 排序。PageRank算法使用的是文檔之間明確的鏈接引用關系而沒有考慮語義內容,但是實 際在檢索中,文檔的語義內容很重要,因此如何借助語義內容建立隱式鏈接關系來輔助排 序以提高排序性能是我們關注的話題。基于概率的語言模型關注語義內容,因此我們提出 基于語言模型的排序算法。
發(fā)明內容
本發(fā)明提供了一種基于語言模型的排序算法,使得排序結果更加貼近用戶的需 求。本發(fā)明提出的基于語言模型的排序算法包括下列步驟對用戶輸入的查詢進行預 處理,包括進行中文分詞和過濾停用詞;建立倒排索引單元,將候選文檔進行預處理后建立 倒排索引,以便快速定位;將預處理得到的關鍵詞分布在關鍵詞索引中進行查找,以確定包 含所述關鍵詞的初始文檔集合;利用生成概率在初始文檔集合上建圖得到每篇文檔的中心 性權重;得到查詢與候選文檔的生成概率;確定查詢與候選文檔的總權重;按照總權重對 所述各待排序的文檔進行排序。本發(fā)明提出的基于語言模型的排序算法包括預處理單元,對用戶輸入的查詢進 行預處理,包括進行中文分詞和過濾停用詞;建立倒排索引單元,將候選文檔進行預處理后 建立倒排索引,以便快速定位;獲取初始文檔集合單元,將預處理得到的關鍵詞分布在關鍵 詞索引中進行查找,以確定包含所述關鍵詞的初始文檔集合;確定中心性(靜態(tài))權重單 元,利用生成概率在初始文檔集合上建圖得到每篇文檔的中心性權重;確定動態(tài)權重單元, 得到查詢與候選文檔的生成概率;確定總權重單元,確定查詢與候選文檔的總權重;排序 單元,按照總權重對所述各待排序的文檔進行排序。
具體實施例方式本發(fā)明中對用戶輸入的查詢進行預處理,將候選文檔進行預處理后建立倒排索 引,將預處理得到的關鍵詞分布在關鍵詞索引中進行查找,以確定包含所述關鍵詞的初始 文檔集合,利用生成概率在初始文檔集合上建圖得到每篇文檔的中心性權重,得到查詢與候選文檔的生成概率作為動態(tài)權重,確定查詢與候選文檔的總權重,按照總權重對所述各 待排序的文檔進行排序。由于總權重中考慮了查詢與文檔的動態(tài)權重以及候選文檔之間的 靜態(tài)權重,所以按照總權重對候選文檔進行排序能夠更 加貼近用戶的需求。
權利要求
一種基于語言模型的排序算法,其特征在于包括下列步驟預處理單元,對用戶輸入的查詢詞和候選文檔進行分詞和過濾停用詞處理;建立倒排索引單元,對候選文檔建立倒排索引,以方便快速定位;靜態(tài)權重確定單元,既中心性迭代計算單元,利用初始候選文檔建圖,迭代得到靜態(tài)權重;動態(tài)權重確定單元,用戶將查詢與候選文檔之間利用語言模型得到的權重就是動態(tài)權重;總權重確定單元,用于確定查詢在候選文檔中的總權重;排序單元,用于按照總權重對所述各待排序的網絡資源進行排序。
2.如權利要求1所述的方法,其特征在于在建立倒排索引之前還包括對候選文檔進行 預處理部分。首先要過濾停用詞,使得類似“的”、“了”、“呢”、“之”之類無效詞過濾掉,這樣 可以減少檢索代價;其次要進行中文分詞,常用的方法有正向最大匹配算法,反正最大匹配 算法,雙向最大匹配算法等,我們采用了正向最大匹配算法。
3.如權利要求1所述的方法,其特征在于,在用戶輸入查詢之前還包括對候選文檔建 立倒排索引的過程,以詞為單位的詞典文件,包含該詞頻率的頻率文件,該詞在文檔中所處 位置的位置文件。其中詞典文件不僅保存有每個關鍵詞,還保留了指向頻率文件和位置文 件的指針,通過指針可以找到該關鍵字的頻率信息和位置信息,以實現快速定位。
4.如權利要求1所述的方法,其特征在于,確定候選文檔集合包括以下步驟以對查詢進行分詞處理所得的分詞分別在倒排索引中進行查找,找到每個分詞所屬的 文檔集合取各所述集合的交集,作為候選文檔集合。
5.如權利要求1所描述的方法,排序算法由兩部分組成,靜態(tài)權重和動態(tài)權重。如權利 要求1所述的方法,其特征在于,將用戶的輸入查詢進行預處理得到關鍵詞之后,可以利用 權利要求3中建立的倒排索引,快速定位包含查詢關鍵詞的文檔當作初始候選結果集,這 里可以利用語言模型得到查詢與候選文檔之間權重,這個權重就是動態(tài)權重,記為Pd(q)。
6.如權利1要求所描述的方法,其特征在于,將動態(tài)權重得到的初始候選結果集利用 語言模型建圖。語言模型建圖的過程就是構建非真實鏈接關系的PageRank,并且迭代得到 每個文檔的最終值作為排序算法中的靜態(tài)權重,也稱為中心性,記作Cen(d,G),則中心性的 計算方法為<formula>formula see original document page 2</formula>其中 wt (o — d) = pd(o)。
7.如權利要求1所描述的方法,其特征在于排序算法可以表示為 Cen(d,G) *pd(G)
8.如權利要求6所述,建圖的過程是通過語言模型來實現的。而語言模型就是計算生 成概率的過程,有兩種估計計算方法,通過最大似然概率的方法和Dirichlet-smoothed方 法。最大似然概率的方法可以描述為給定句子s,是s中的一個詞,那么w關于s的最大似然概率(MLE)可以表示為<formula>formula see original document page 3</formula>其中tf (w G s)代表w在s中出現的頻率。 Dirichlet-smoothed方法可以表示為其中平滑參數y控制著詞語在整個候選文檔集合c和文檔s中的相關度。
9.如權利要求1所述的方法,其特征在于,按照總權重由高至低的順利對所述各待排 序的候選文檔進行排序,并將排序結果正向呈現給用戶。
全文摘要
本發(fā)明提出的一種基于語言模型的排序算法包括下列步驟對用戶輸入的查詢進行預處理,包括進行中文分詞和過濾停用詞;建立倒排索引單元,將候選文檔進行預處理后建立倒排索引,以便快速定位;將預處理得到的關鍵詞在倒排索引中進行查找,以確定包含所述關鍵詞的初始文檔集合;利用生成概率在初始文檔集合上建圖得到每篇文檔的中心性(靜態(tài))權重;利用生成概率得到查詢與候選文檔的生成概率作為候選文檔的動態(tài)權重;確定查詢與候選文檔的總權重;按照總權重對所述各待排序的文檔進行排序。由于總權重中考慮了查詢與文檔的動態(tài)權重以及候選文檔之間的靜態(tài)權重,所以按照總權重對候選文檔進行排序能夠更加貼近用戶的需求。
文檔編號G06F17/30GK101826075SQ20091006804
公開日2010年9月8日 申請日期2009年3月6日 優(yōu)先權日2009年3月6日
發(fā)明者劉金莉 申請人:劉金莉