在python中评估搜索查询的结果:排名列表与一个手动标记的正确文档



给定以下预测的文档排名列表:

query1_predicted = [1381, 1637, 646, 1623, 774, 1764, 92, 12, 642, 463, 613, ...]

而这手动标记了最佳选择:

query1_manual = 646

在python中已经实现了来自信息检索的任何合适指标来对这个结果进行排名吗?

我不认为 NDCG 对我有用,因为我缺少真实且完全排名的文档列表。我假设召回率、精度、F 分数和 MAP 也不起作用,只要我没有每个查询的手动排名结果的完整列表来指示文档的相关性。

顺便说一下:预测列表的长度等于我收藏中的文档总数:

len(query1_predicted) = len(documents)

提前感谢您的帮助!

一个想法是将精度和召回率指标结合起来。例如,如果您的查询返回一个列表,其中正确的文档位于第一个位置,则可以说您的精度和召回率为 100%。如果它排在第二位,你再次拥有 100% 的精度,但你的召回率下降到 50%,依此类推。我知道这种方法并不完美,但它可以通过众所周知的指标很好地了解您的结果。

最新更新