檢索模型與搜索排序
最重要的兩個因素,用戶查詢與網頁相關性,網頁鏈接情況
檢索模型:用戶查詢與網頁相關性
布爾模型,向量空間模型,概率模型,語言模型,機器學習排序算法
布爾模型:數據基礎是集合論,搜索結果過于粗糙,無法量化搜索詞與文檔之前的相關性
向量空間模型:把文檔看做是由T維特征組成的一個向量,最常用的是以單詞作為特征,實際應用中,文檔的維度相當高(成千上萬)
將查詢和文檔之間的內容相似性作為相關性的替代
計算相似性,使用COSINE,計算查詢詞特征權值與文檔中每個特征權值向量的點積
特征權重:由詞頻Tf,逆文檔頻率IDF確定
詞頻Tf:Wtf=a+(1-a)*Tf/Max(Tf)
a取0.4效果較好
逆文檔頻率因子:文檔集合范圍的一種全局因子,特征單詞之間的相對重要性
有研究者進一步分析認為:IDF代表了單詞帶有的信息量的多少(熵),其值越高,說明其信息含量越多,越有價值
IDFk=log(N/nk)
N代表文檔集合中總共有多少個文檔,nk代表特征單詞k在其中多少個文檔中出現過
Weight_word=Tf*IDF,特征權值越大,越可能是好的指示詞
查詢詞在某個文檔中的詞頻越高,在其他文檔中出現的詞頻越低,這個詞的權值越高
向量空間模型是經驗型的模型,靠直覺和經驗不斷摸索完善,缺乏明確的理論指導改進方向
概率排序原理:給定一個用戶查詢,如果搜索系統能夠在搜索結果排序時按照文檔和用戶需求的相關性由高到低排序,那么這個搜索系統的準確性是最優的。
將P(D|R)/P(D|NR)大小進行降序排列,得到搜索相關性排序
二元獨立模型
二元假設:一遍文檔在由特征進行表示的時候,以特征“出現”和“不出現”兩種情況來表示
詞匯獨立假:文檔中出現任意一個詞在文檔的分布概率不依賴于其他單詞是否出現
BMI模型:基于二元假設推導而出,對于單詞特征,只考慮是否在文檔中出現過,而了考慮單詞的權值
P(D|R)/P(D|NR) = pi(1-si)/si(1-pi)
log( pi(1-si)/si(1-pi) )
pi代表第i個單詞在相關文檔集合內出現的概率,在二元假設下,可以用包含這個單詞的相關文檔個數ri除以相關文檔總數R來估算,pi=ri/R
si代表第i個詞在不相關文檔集合內出現的概率,可以用包含這個單詞的不相關文檔個數ni-ri,除以不相關文檔總數(N-R)來估算,si=(ni-ri)/(N-R)
加上平滑處理
log((ri+0.5)/(R-ri+0.5)
/
(ni-ri+0.5)/((N-R)-(ni-ri)+0.5))
其含義:對于同時出現在用戶查詢Q和文檔D中的單詞,累加每個單詞的估值,其和就是文檔D和查詢相關性度量值
BM25模型
在BIM模型的基礎上,考慮了單詞在查詢中的權值及單詞在文檔中的權值,擬合出綜合上述考慮因素的公式,并通過引入一些經驗參數
BM25模型是目前最成功的內容排序模型
k1,k2,K均為經驗設置的參數,fi是詞項在文檔中的頻率,qfi是詞項在查詢中的頻率。
K1通常為1.2,通常為0-1000
K的形式較為復雜
K=
上式中,dl表示文檔的長度,avdl表示文檔的平均長度,b通常取0.75BM25F模型:是典型的BM25改進算法
將文檔內容切換成不同的部分,為不同的部分賦予不同的權重
語言模型方法:借鑒語音識別領域采用的語言模型技術,將語言模型和信息檢索相互融合
為每個文檔建立一個語言模型,語言模型代表了單詞或者單詞序列在文檔中的分布情況
對于查詢中的單詞來說,每個單詞都對應一個抽取概率,將這些單詞的抽取概率相乘就是文檔生成查詢的總體概率
一般采用數據平滑方式解決數據稀疏問題
用戶提交查詢Q,文檔集合內所有文檔都計算生成Q的概率,然后按照生成概率值由大到小排序,就是搜索結果
HMM,隱馬爾科夫語言模型、相關模型、翻譯模型是在基本語言模型的改進
語言模型檢索方法效果略優于精調參數的向量空間模型,與BM25等概率模型效果相當
通過理論推導,可以得出:語言模型檢索方法的排序公司符合概率模型的概率排序原理,類似向量空間模型Tf*IDF
機器學習排序
為何興起較晚:
1、其他模型和方法,考慮的因素較少,人工進行公式擬合完全可行,效果尚可
2、機器學習需要大量訓練數據,用戶點擊記錄可以當做機器學習方法訓練數據的一個替代品
機器學習排序系統的4個步驟:
人工標注訓練數據:用戶點擊記錄來模擬人工打分機制
文檔特征抽取:查詢詞在文檔中的詞頻、查詢詞的IDF信息,網頁入鏈數量,網頁出鏈數量,網頁PageRank值,網頁URL長度,查詢詞的Proximity值(文檔中多大的窗口內可以出現所有查詢詞)
學習分類函數
在實際搜索系統中采用機器學習模型
機器學習方法
1、單文檔方法
對單獨的一篇文檔轉換為特征向量,機器學習系統根據從訓練數據中學習到的分類或回歸函數對文檔打分,打分結果為最后得分
在訓練過程中,當打分大于一定的閾值,為相關文檔,否則為不相關文檔。
2、文檔對方法
通過訓練,對文檔順序關系是否合理進行判斷,判斷兩個文檔的得分
使用SVM,BOOST,神經網絡,都可以做為學習方法
缺點,只考慮了兩個文檔對的相對先后順序,卻沒有考慮文檔出現的搜索列表中的位置
不同的查詢,相關文檔數量差異很大,對機器學習系統的效果造成評價困難
3、文檔列表方法
將每個查詢對應的所有搜索結果列表作為一個訓練實例
通過搜索結果排列組合的概率分布,訓練評分函數
搜索質量評價標準:對于搜索引擎更加關注精確率
精確率:本次搜索結果中相關文檔所占本次搜索返回的所有文檔的比例
招回率:本次搜索結果中相關文檔占整個集合中所有相關文檔的比例
P@10指標:在搜索結果排名最先前的頭10個文檔中有多大比例是相關的
MAP:AP兼顧了排在前列的相關性和系統招架率,MAP多組查詢的AP平均值
posted on 2013-11-04 12:56
胡滿超 閱讀(596)
評論(0) 編輯 收藏 引用 所屬分類:
搜索引擎