布爾模型
出自 MBA智库百科(https://wiki.mbalib.com/)
目錄 |
布爾模型是基於集合論和布爾代數的一種簡單檢索模型,是早期搜索引擎所使用的檢索模型。它的特點是查找那些對於某個查詢詞返回為“真”的文檔。在該模型中,一個查詢詞就是一個布爾表達式,包括關鍵詞以及邏輯運算符。通過布爾表達式,可以表達用戶希望文檔所具有的特征,例如必須包含哪些關鍵詞,不能包含哪些關鍵詞等等。例如我們希望查找那些既含有“清華”又含有“大學”的網頁,那麼查詢詞可以寫作“清華AND大學”。由於文檔必須嚴格符合檢索詞的要求才能夠被檢索出來,因此布爾檢索模型又被稱為“完全匹配檢索”(Exact-Match Retrieval)。
布爾模型的分析[1]
傳統的布爾檢索是將用戶查詢與文獻進行邏輯的(而非數值的)比較而獲得結果的檢索。布爾檢索模型的突出優點在於這種結構化的提問方式與用戶的思維習慣相一致。同時,這種模型把複雜的檢索過程簡單化,能夠將較複雜的情報提問按其概念組面的邏輯關係描述出來,從而變成可以由電腦執行的邏輯運算,變成機器根據事先確定的程式進行自動匹配的過程,這種運算上的簡單易行是布爾檢索系統的又一突出特征。此外,用布爾檢索進行操作的某些系統允許用戶通過給他使用的一個有結構的詞典來縮小或擴大檢索。所謂有結構的詞典是指對任何一個給定的標引詞都存儲了與之相關的更一般的(上位)或更精確的(下位)關鍵詞的詞典。布爾檢索很容易利用這些相關項來改進檢索。
布爾檢索在理論上存在的一些缺陷也是不容忽略的,具體包括下列幾個方面。
(1)布爾邏輯式的構造不易全面準確反映用戶的需求。
(2)匹配標準存在不合理的地方,嚴格的匹配可能導致檢出的文檔過多或過少,難以控制結果輸出量的大小。
(3)對檢索結果平等對待,不能按照用戶定義的重要性排序輸出。
(4)對用戶的檢索技能有較高的要求。
布爾模型的邏輯算符[2]
首先我們簡單介紹一下布爾模型中的三個主要邏輯算符及其含義。
- 1.邏輯與
“邏輯與”一般用“AND”算符表示。它表示如果其兩個變數的值都為“真”,則結果為“真”,否則結果為“假”。我們通過一個例子說明“邏輯與”的作用。假設用戶希望檢索關於“清華大學招生”的有關信息,它包含了“清華大學”和“招生”兩個主要的概念,因此需要用“邏輯與”組合,即“清華大學AND招生”表示這兩個概念應同時包含在檢索返回的網頁里。“邏輯與”組合結果如圖所示,A橢圓代表包含“清華大學”的頁面,B代表包含“招生”的頁面,那麼A、B相交的部分(陰影部分)則為同時包含“清華大學”和“招生”兩個關鍵詞的網頁數。使用“邏輯與”可以縮小檢索範圍,提高準確率。
- 2.邏輯或
“邏輯或”一般用“OR”算符表示。它表示如果其兩個變數中有一個值為“真”,則結果為“真”,否則結果為“假”,規則如表所示。例如用戶要檢索“北京大學”的相關信息,“北京大學”這個概念可用“北京大學”或“北大”兩個同義詞來表達,因此需要採用“邏輯或”組合,即“北京大學OR北大”,表示要求返回的網頁只需要包含這兩個關鍵詞中的至少一個即可。“邏輯或”組合結果如上圖所示,A代表含有“北京大學”的頁面,B代表含有“北大”的頁面,那麼A和B中的所有頁面(陰影部分)均為“AORB”應返回的頁面。使用“邏輯或”可以擴大檢索範圍、提高召回率。
A | B | AND | OR | A | B | AND | OR |
真 真 | 真 假 | 真 假 | 真 真 | 假 假 | 真 假 | 假 假 | 真 假 |
- 3.邏輯非
“邏輯非”的運算結果是將變數的值取反,在信息檢索中表示“不含有某個關鍵詞的網頁”,一般用“NOT”算符表示。例如用戶希望檢索“除招生外的清華大學信息”,那麼檢索中需要在“招生”前採用“邏輯非”操作,即“清華大學NOT招生”,表示在含有“清華大學”的網頁中排除含有“招生”的網頁然後返回檢索結果。“邏輯非”組合結果如上圖所示,A代表含有“清華大學”的頁面,B代表含有“招生”的頁面,那麼A中剔除屬於B的頁面即為“除招生外的清華大學信息”。從上面的介紹和例子我們可以看出,布爾模型的基本思想是將查詢詞中關鍵詞的“與”、“或”、“非”組合轉化成關鍵詞對應的倒排文檔集合之間的“與”、“或”、“非”操作。布爾模型目前主要應用於文獻檢索。