2

我试图破译发现结果中的passage_score 和result[].score 的含义(以百分位数表示)。这样我们就可以过滤掉不满足最小置信度阈值的段落和结果。

例如在这个结果集中:

{
...
"passages": [
    {
        "document_id": "AA",
        "passage_score": 14.303232050575723,
        ...
    },
    {
        "document_id": "BB",
        "passage_score": 14.089714658115533,
        ...
    }
],
"results": [
    {
        "id": "AA",
        "score": 1.5188946,
        ...
    },
    {
        "id": "BB",
        "score": 1.5188946,
        ...
    }
]

}

我如何将分数转换为百分位数进行比较?在 RnR 中,我曾经使用 ranker.confidence 字段来执行此操作。

4

2 回答 2

2

段落分数和文档分数不是置信度分数,也不是归一化分数。它是根据查询以及文档与用户提交的查询相关的“好”程度计算得出的分数。

比较多个不同查询之间的分数是不正确的,并且规范化虽然可以做到,但不适用于我们生成的分数。您可以尝试对分数进行标准化,但是如果您从索引中添加或删除文档,您提出的任何标准化因素都将被丢弃。

分数计算完全取决于文档以及这些文档与特定查询的相关性。换句话说,它是根据文档中的词频(单词出现的频率)以及对分数进行的一些其他复杂的算法调整来计算的。它是特定于查询的分数,使用一种算法计算得出,该算法试图预测文档与查询最相关的“可能性”。它不是一个标准化的分数。

相反,我建议使用前 n 个文档作为更合理的阈值,其中 n 是您返回给用户的最大文档数。Passages 使用其他算法,这些算法也专注于为特定查询生成最佳段落。分数再次针对查询计算。

有计划在未来提高重新排序的文档的分数。

于 2017-09-08T18:11:05.350 回答
0

根据有关 Watson Discovery 的官方文档,这些段落是由复杂的 Watson 算法生成的,用于从.query

我想也许你可以使用highlight参数highlight:一个布尔值,它指定返回的输出是否包含一个高亮对象,其中键是字段名称,值是包含由 HTML标记突出显示的查询匹配文本段的数组。*

top_hits参数:返回按查询或扩充的分数排序的文档。可以与任何查询参数或聚合一起使用。此示例返回术语聚合的 10 个热门点击。

  • 检查查询构建参考中有关使用发现的查询的列表。
  • 检查这些:文章 1文章 2使用 Watson Discovery 以及更多示例。
  • IBM 使用 Watson Discovery 制作的播放列表。
于 2017-09-07T17:38:42.233 回答