新手學資訊檢索6 談談二值獨立模型

2022-01-24 07:02:19 字數 2200 閱讀 6947

介紹乙個概率檢索模型-二值獨立模型。這個模型我自認為比較扯淡,如有大神在可以指點一下。這個模型用了n多個假設。

假設1:詞項之間的出現是相互獨立的。

這樣文件和查詢都可以向量化,如下:

當詞項t出現在文件或查詢中,則xt或qt的值為1,否則為0。由於我們假設詞項出現是相互獨立的,並且向量取值只取0,1兩個值,故這個模型就叫做二值獨立模型。那麼這個模型是如何進行文件檢索以及排序的呢,接下來就詳細介紹一下。

給定乙個查詢q,文件d與q相關的概率可以用p(r=1|(d,q))表示,不相關的概率可用p(r=0|(d,q))表示。

。那麼我們自然能想到乙個可以用來進行排序的指標:p(r=1|(d,q)),但是實際中常用下面的式子作為排序的指標:

為了方便計算這個函式,做了幾個假設。

那麼可以從式子中去掉不影響排序結果,所以式子又變成如下形式:

接下來引入詞項的獨立性:

上面的式子很好理解,既然每個詞出現時相互獨立的,那麼一篇文件出現的概率自然是每個詞出現的概率的乘積。

我們觀察這個式子發現,如果需要計算這個式子的值必須要計算不在文件內出現的詞的一些資訊,而不出現在文件中的詞的規模是詞典的大小,所以計算起來非常耗時,故又提出乙個假設來避免對不必要的詞進行的計算。

假設3:當t不出現在查詢中時,令pt=ut。

故該項可以略去,不會影響排序效果。並且這個式子中用到了乘法操作,計算過程中很容易產生精度損失,故把其取對數得:

這樣我們就只需考慮同時出現在文件和查詢中的詞進行計算從而提高了效率,並且有效的避免了乘法的精度損失問題。

綜上所述,這個模型好處就是推導過程比較直觀,缺點就是用了很多假設。但是實際中據說這種模型在某些情況下的效果還不錯(我沒做過,所以不好說)。

但是反過頭來,這個模型到底怎麼去使用?有乙個困惑的地方在於:我們說它是乙個檢索模型,但是現在怎麼看它都只是乙個排序函式而已。並且,無法知道文件與查詢的相關性,故pt 與ut是不知道的,這又導致了這個模型在這個時候沒法計算。既然作為檢索模型,那麼就必須單獨使用就可以得到檢索到使用者滿意的文件,而不能依賴於其它的方法。再仔細觀察上面的排序函式的推導過程,我們發現主要難點在於不知道pt 與ut。 如果這兩個東西知道了,那麼後面就自然能得到。說起來比較扯淡,要使用這種模型必須首先自己估計乙個pt 與ut。 而且估計過程類似於乙個迭代的過程。大致過程如下:

(1)初始設定ut=dft/n,pt=0.5

(2)利用初始的估計進行文件的相關性計算,並根據排序函式值進行排序。

(3)預設結果列表中前r個文件是與查詢相關,後面n-r個與查詢不相關。

(4)根據這r個相關文件和n-r個不相關文件重新計算pt 與ut。

其中第4步可以這麼計算:

其中pt=r/r, ut=(dft-r)/(n-r),有時為了避免分母為0,用平滑方法處理得到的這兩個值,就這樣不斷迭代,直到得到使用者的滿意結果為止。可以看到這種檢索方法可能需要很多遍的計算。並且初始值怎麼選取還有r怎麼選取也很是乙個很有爭議的問題,這也是這個模型的最大缺點。

新手學資訊檢索3 詞頻 逆文件頻

首先,什麼是詞頻?詞頻就是一篇文件包含乙個詞的次數。舉個例子,如果一篇文件d中 cat 這個詞出現了5詞,那麼我們就說 cat 的詞頻為5,記做tf cat 5。那麼,什麼是文件頻?這個概念也是對於乙個詞來說的。通俗來說文件頻就是包含乙個詞的文件數目。那麼什麼叫做逆文件頻呢?idf表示逆文件頻,檢索...

新手學資訊檢索2 倒排表與儲存

這篇就說乙個資訊檢索裡面理解最簡單的乙個東西吧,它就叫做倒排表或者倒排索引。但是這只是個名字,我想大家都知道它是什麼就行了,不必糾結於名稱。先說說倒排表張什麼樣子吧 倒排表以詞做索引,內容為包含該詞的文件編號。對於上圖可知,文件1 3 5 7 9包含詞 cat 文件2 5 8 10包含詞 dog 你...

20201303《資訊保安專業導論》第二週學習總結

這個作業屬於哪個課程 2020 2021 1資訊保安專業導論 這個作業要求在 2020 2021 1資訊保安專業導論第一周作業 這個作業的目標 電腦科學概論第1章,第18章,程式設計導論 python計算與應用開發實踐第1章 作業正文 電腦科學概論第一章主要對全書內容做了概述,對計算機和軟體的歷史做...