我有一个数据集,我正在开发一个搜索引擎。我成功地做到了这一点。现在我的下一步是计算此搜索引擎的性能。我相信平均精度(MAP)和召回(/ R)是我需要计算的两个指标。我知道这些指标的公式,如果我只是将我的文档标记为与每个查询相关或不相关,我就可以计算它们。但是,我的每个文件的标签都不是二进制文件;相反,这些文档会针对每个查询进行评分。
例如,如果我有查询1,我的数据集表示文档14与此查询最相关(得分:5),文档54有点相关(得分:4),文档33不太相关(得分:3),依此类推,以得分0结束,这意味着该文档完全不相关且不在主题之内。
我的问题是,如何用这种标签计算MAP / R?换句话说,如果我的第二个相关文档首先显示,或者我的最高相关文档显示在第10级等,我该如何评估系统?
请理解我必须使用MAP / R来评估我的搜索引擎。
我希望能够对我的怀疑有所了解。干杯!
答案 0 :(得分:2)
平均平均精度旨在评估具有二元相关函数的信息检索系统。另一方面,您具有分级相关功能。因此,您需要一种不同的方法来评估您的系统。
虽然有generalize the Average Precision evaluation method to handle graded relevance的尝试,但正确的做法是使用The Normalized Discounted Cumulative Gain Measure评估您的系统。
标准化折扣累积增益是针对分级相关概念的情况而设计的。与k的精度一样,它在一些k个顶级搜索结果中进行评估。从某种意义上说,规范化折扣累积增益的作用是根据文档在结果列表中的位置来测量文档的增益。增益从结果列表的顶部累积到底部,每个结果的增益在较低的等级处打折。请参阅上面链接中的实际公式。
如果由于某种原因您必须使用MAP或Recall来评估您的系统,那么您将不得不修改您的相关性度量,使其成为二进制(通过确定超出哪些文档被认为相关的阈值)。但是,要合并封装在评分相关性度量中的信息,您唯一的选择是使用支持评分相关性的评估方法,例如标准化折扣累积增益。