使用记录器计算lucene中的精度和召回率

时间:2012-05-06 12:38:37

标签: java lucene information-retrieval precision-recall

我使用lucene基准来测量精度和召回率 在原始代码中有两个文件,主题文件:

QualityQuery qqs[] = qReader.readQueries( new BufferedReader(new FileReader(topicsFile)));

和qrelsFile:

Judge judge = new TrecJudge(new BufferedReader(new FileReader(qrelsFile)));

这两个文件是我理解的文本文件。但是我不知道我需要填写这两个文件,是由我手动编写还是有一些代码用他们填充所需信息。

我需要在lucene程序中使用这种精确度和召回测量的任何帮助

感谢

1 个答案:

答案 0 :(得分:1)

TrecJudge的Javadocs http://lucene.apache.org/core/old_versioned_docs/versions/3_4_0/api/all/org/apache/lucene/benchmark/quality/trec/TrecJudge.html

给出:

判断给定文档是否与给定质量查询相关,基于Trec格式进行判断。

TREC(http://trec.nist.gov/)是一系列为信息检索提供竞赛的会议。

我怀疑你可能需要做一些自己的侦探工作,但这对我很感兴趣,我可能会增加一些信息。

一般来说,基准测试策略将类似于:

  • 提供与您感兴趣的领域相关的语料库
  • 注释其中的一部分以指示应该召回的内容。这可能是两组 - 一组有信息(正面),一面没有(负面)
  • 将其分为两部分 - 一部分用于训练您的应用程序,另一部分用于测试它(有更复杂的方法需要更多)
  • 在您的测试集上运行评估软件。

我怀疑你需要提供TREC格式的格式。