【问题标题】:Can Lucene be used where each entity to be ranked is a set of documents?Lucene 可以用在每个要排名的实体都是一组文档的情况下吗?
【发布时间】:2012-08-16 13:13:19
【问题描述】:

我正在开展一个项目,其中每个要排名的实体不是单个文档,而是实际上一组文档

因此排名不仅涉及标准搜索引擎评分参数,还涉及实体/组内文档的关联。更准确地说,组内文档的关联也有助于排名得分

关联的计算是特定于问题的,我已经有一个工作代码。

我刚刚开始使用 Lucene,因此我不知道是否可以使用 Lucene 实现此功能。

可以使用 Lucene 完成吗?

Solr?

如果没有,请给我一个相同的出路。

【问题讨论】:

    标签: java search solr lucene search-engine


    【解决方案1】:

    您可能需要更深入地研究 Lucene 评分代码。也许您可以计算您的关联分数并将其与常规 lucene 评分相结合。

    http://lucene.apache.org/core/3_6_0/api/core/org/apache/lucene/search/package-summary.html#scoring

    【讨论】:

    • 这正是目的。我只是想知道是否有人玩过评分功能
    【解决方案2】:

    你可以组是 solr。 group=on&group.field=field.

    默认情况下,它将返回一个单独的组列表。而不是将组作为主要结果返回。

    您可以使用自己的系统进行评分和提升某些字段等。我不确定您将如何获得该组内文档的总分。或者如果需要,但 solr 4 有 group.func

    http://wiki.apache.org/solr/FieldCollapsing

    如果不是抱歉,希望对您有所帮助:)

    【讨论】:

      【解决方案3】:

      是的,您可以在 Lucene 中执行此操作。有关更多信息,请查看函数查询。您可以在 Lucene in Action Book(起始页 185)中找到大量信息。

      【讨论】:

        【解决方案4】:

        在 solr 中,如果使用 dismax 或 edismax 查询解析器,则可以使用有效载荷。我们在 solr 3.6 中取得了不错的效果。作为起点,我建议: solr payload 和:solr paylaod 2 希望这会有所帮助。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2013-06-30
          • 1970-01-01
          • 2022-10-05
          • 1970-01-01
          • 1970-01-01
          • 2012-02-24
          • 2020-05-25
          • 2022-12-22
          相关资源
          最近更新 更多