全文搜尋與倒排索引

2021-08-20 17:47:24 字數 963 閱讀 2437

全文搜尋是指計算機搜尋程式通過掃瞄文章中的每乙個詞,對每乙個詞建立乙個索引, 指明該詞在文中出現的次數和位置,當使用者查詢時,搜尋程式就根據事先建立的索引進行查詢,並將查詢的結果反饋給使用者。這個過程類似於通過字典中的搜尋字表查字的過程,lucene是目前全球使用最廣的全文搜尋引擎開源庫。

倒排索引源於實際應用中需要根據屬性的值來查詢記錄。這種索引表中的每一項都包括乙個屬性值和具有該屬性值的各記錄的位址,由於不是由記錄來確定屬性值,而是由屬性值來確定記錄的位置,因而稱為倒排索引(inverted index)

帶有倒排索引的檔案我們稱為倒排索引檔案,簡稱倒排檔案(inverted file)

現在有的是文章內容,即乙個字串,先要找出字串中的所有單司,即分詞。

英文單詞由於用空格分隔,比較好處理。中文單詞間由於是連在一起的,所以需要特殊的分詞處理。

文章中的「in」 「once」 「too」等詞沒有什麼實際意義,中文中的「的」 「是」等字通常也無具體含義,這些不代表概念的詞是可以過濾掉的。

使用者通常希望查「live」時能把含「lives」和「lived」的文章也找出來,所以需要 把 「lives」,「lived」 還原成 「live」 。

文章中的標點符號通常不表示某種概念,也可以過濾掉。

文章1和文章2經過倒排後的對應關係

文章號tony

1live

1,2chongqing1i

1he2shanghai

1,2

文章好[出現頻率]

出現位置

tony

1[1]

1live

1[2]

2,52[1]

2chongqing

1[2]

3,6i

1[1]4he

2[1]

1shanghai

2[1]3

倒排索引與全文檢索

乙個未經處理的資料庫中,一般是以文件id作為索引,文件內容作為記錄 而倒排索引指的是,將單詞或記錄作為索引,將文件id作為記錄,這樣便可以方便地通過索引來查詢到其所在的文件 例如 流程 將資料庫中的結構化資料資料轉換為非結構化資料 然後將非結構化資料轉化為分詞結構 配置與使用 syl setting...

倒排索引與全文檢索

乙個未經處理的資料庫中,一般是以文件id作為索引,文件內容作為記錄 而倒排索引指的是,將單詞或記錄作為索引,將文件id作為記錄,這樣便可以方便地通過索引來查詢到其所在的文件 例如 流程 將資料庫中的結構化資料資料轉換為非結構化資料 然後將非結構化資料轉化為分詞結構 配置與使用 syl setting...

倒排索引原理 機器學習基礎 倒排索引與搜尋引擎

在介紹倒排索引之前,我們先來看看什麼是索引。索引是資料庫當中的概念,維基百科中的說法是 資料庫索引,是資料庫管理系統中乙個排序的資料結構,以協助快速查詢 更新資料庫表中資料 可以簡單地把索引當成是字典裡的檢索目錄,我們比如我們要查乙個叫 index 的單詞,通過目錄,可以快速地找到字母i開始的位置。...