我正在做一个项目,其中要排名的每个实体不是单个文档,而是实际上是一组文档。
因此排名不仅涉及标准搜索引擎评分参数,还涉及实体/组内文档的关联。更准确地说,组内文档的关联也有助于排名得分。
关联的计算是特定于问题的东西,我已经有一个工作代码。
我刚刚开始使用Lucene,因此我不知道是否可以使用 Lucene 实现此功能。
可以使用 Lucene 完成吗?
索尔?
如果没有,请给我一个同样的出路。
我正在做一个项目,其中要排名的每个实体不是单个文档,而是实际上是一组文档。
因此排名不仅涉及标准搜索引擎评分参数,还涉及实体/组内文档的关联。更准确地说,组内文档的关联也有助于排名得分。
关联的计算是特定于问题的东西,我已经有一个工作代码。
我刚刚开始使用Lucene,因此我不知道是否可以使用 Lucene 实现此功能。
可以使用 Lucene 完成吗?
索尔?
如果没有,请给我一个同样的出路。
在 solr 中,如果您使用 dismax 或 edismax 查询解析器,则可以使用有效负载。我们在 solr 3.6 中取得了不错的效果。作为一个起点,我建议: solr payload和:solr paylaod 2 希望这会有所帮助。
Yes you can do this in Lucene. For more information look at Function queries. You can find a good deal of information in Lucene in Action Book (starting page 185).
你可以组是 solr。group=on&group.field=字段。
默认情况下,它将返回一个单独的组列表。而不是将组作为主要结果返回。
您可以使用自己的系统进行评分和提升某些字段等。我不确定您将如何获得该组内文档的总分。或者如果需要,但 solr 4 有 group.func
http://wiki.apache.org/solr/FieldCollapsing
如果不是抱歉,希望对您有所帮助:)
You probably need to dig deeper into the Lucene scoring code. Maybe you can calculate you association score and combine it with the regular lucene scoring.
http://lucene.apache.org/core/3_6_0/api/core/org/apache/lucene/search/package-summary.html#scoring