我的最后一个任务是做一个搜索引擎。我正在使用solr来访问和检索本体中的数据,这些数据稍后将用作语料库。我对这些(信息检索、本体、python和solr)完全陌生。
在信息检索中有一个步骤来评估查询结果。我计划使用Precision、Recall和ROC score来评估这一点。有没有办法使用solr中的函数来计算查准率、召回率和ROC的分数?无论是来自solr界面还是背后的代码都无关紧要。
发布于 2016-05-18 21:11:01
除非我完全错了,否则精确度和召回率分数要求您在将它们与从搜索引擎检索的文档进行比较之前,知道要检索和显示的适当文档是什么。搜索已经返回了它认为与您的查询完美匹配的内容,因此您可以根据预期结果来评估结果(这意味着您知道应该返回哪些文档)。
如果搜索引擎可以自己决定,它总是会在精确度和召回率方面都给出1 (n/n),因为这将是完美的结果。如果它可以评估这些数字是什么,它就根本不需要在搜索结果中包含这些数字。
如果您查询某个术语,Solr将为您提供包含该术语的所有文档(如果您愿意,还可以提供其变体-取决于您的分析链)。调整这种相关性就是你的任务,因为它不能自动完成-因为它依赖于你的业务案例,你必须用已经决定的答案自己实际执行测量。
https://stackoverflow.com/questions/37298702
复制相似问题