【问题标题】:Boost fresh documents with Lucene使用 Lucene 提升新文档
【发布时间】:2011-06-11 02:25:08
【问题描述】:

Lucene 是否提供了一种增加新文档的方法?

例如,假设 Lucene 文档包含一个日期字段。是否有可能在不让用户改变她的查询的情况下,以更高的分数呈现最新的文档?

我不想采用粗略的“按日期排序”解决方案,因为它会完全取消评分算法。

【问题讨论】:

    标签: java lucene information-retrieval


    【解决方案1】:

    将文档放入索引时使用 Document.setBoost(float value)。

    您可以不断地重新调整现有文档的值,或者拥有一个随日期递增的浮点值,这样您只需将其应用于插入文档的时间。

    例如,从第 1 天文档的提升值 0 开始。每天,boost 递增 1。它是一个浮点值,每年递增 365 会持续很长时间。

    您可能需要尝试增强的强度才能获得您想要的效果。

    【讨论】:

    • 感谢您的回答。它在理论上非常聪明,但我必须彻底测试它是否真的有效。无论如何,确实非常聪明,这提出了为什么它没有记录的问题。人们会期望在食谱或其他东西中找到它..
    【解决方案2】:

    您可以看到 Lucene 的实际应用。在第二版中,第 页。 187 他们提供了一种方法来做到这一点。基本上,您会想要编写自己的查询来扩展CustomScoreQuery,并增加一个提升。

    【讨论】:

    • 回答也不错!感谢您的提示!
    猜你喜欢
    • 2011-02-15
    • 2011-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多