Fast BM25
1.0.0
Python 中 BM25 的快速實作。
BM25是一個簡單快速的搜尋引擎排名功能,用於對單字(令牌)進行操作。
它不能很好地處理拼寫錯誤,因此僅在拼寫錯誤不成問題的情況下使用它。
基本 BM25 實作來自 dorianbrown/rank_bm25。
透過向 BM25 傳遞語料庫(也稱為標記化文件(字串清單)上的迭代器)來初始化 BM25。
from fast_bm25 import BM25
# Load your corpus
corpus = ...
bm25 = new BM25 ( corpus )
results = bm25 . get_top_n ([ "largest" , "city" , "in" , "Japan" ], corpus );
它不是一個python包,如果你想使用它,請複製該文件
在文字語料庫中,最常見的單字(the、a、an...)通常資訊量最少。
透過將它們從查詢中分離出來並僅搜尋至少包含查詢單字的文檔,BM25 獲得了很大的速度,同時損失了很少的精度。
這種權衡由參數alpha
控制:更高的 alpha => 更快的速度和更多的單字截斷。
在