我可以在搜索时得到每个文档的 whoosh 计算的分数吗?
Can I get the scores calculated by whoosh for each document while searching?
我正在尝试实施 Okapi BM25 以使用 python whoosh 库通过查询来搜索文档。
我的理解是whoosh根据query使用BM25对每篇文档进行评分,然后进行排序,给出最好的结果。
我用
results = searcher.search(query)
获取与查询最匹配的文档。
如何获得每个文档的分数?
BM25排名还有其他方式获取分数吗?
您可以使用 score
属性获取计算分数:
for r in results:
print r, r.score
您可以获得不同的评分记录或检索。
例如 Tf-IDF、频率、BM25。
如果你想要得分,那么这里是方法。
results = searcher.search(query)
for hit in results:
print("the Score", hit.score)
print("the rank", hit.rank)
print("the document number", hit.docnum)
我正在尝试实施 Okapi BM25 以使用 python whoosh 库通过查询来搜索文档。
我的理解是whoosh根据query使用BM25对每篇文档进行评分,然后进行排序,给出最好的结果。
我用
results = searcher.search(query)
获取与查询最匹配的文档。
如何获得每个文档的分数? BM25排名还有其他方式获取分数吗?
您可以使用 score
属性获取计算分数:
for r in results:
print r, r.score
您可以获得不同的评分记录或检索。
例如 Tf-IDF、频率、BM25。
如果你想要得分,那么这里是方法。
results = searcher.search(query)
for hit in results:
print("the Score", hit.score)
print("the rank", hit.rank)
print("the document number", hit.docnum)