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