首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Lucene中索引文档时增加特定术语(例如标题)的权重

在Lucene中索引文档时增加特定术语(例如标题)的权重
EN

Stack Overflow用户
提问于 2011-02-16 14:19:47
回答 1查看 900关注 0票数 1

我有一些和Lucene一起索引的文件。这些文档基本上有一个标题(文本)和正文(文本)。目前,我正在使用Lucene Document创建一个索引,其中包含一个可搜索字段,基本上是title+" "+body。这样,如果您搜索在标题或正文中发生的任何内容,您将找到文档。

然而,现在我已经了解到新的要求,即标题中的匹配应该使文档比正文中的匹配“更相关”。因此,如果有一个标题为“软件设计”的文档,并且用户搜索“软件设计”,那么该文档在搜索结果中的位置应该高于一个称为“其他东西”的文档,该文档在正文中经常提到软件设计。

我真的不知道如何开始实现这个需求。我知道Google例如将文档的某些部分视为“更相关”(例如<h1>标记中的文本),这里的每个人都假设Lucene支持类似的东西。

然而,

  • 文档类的Javadoc明确指出,字段包含文本,即不包含某些部分比其他部分“更重要”的结构化文本。
  • 这个博客帖子声明“使用Lucene,不可能在文档中增加或减少单个术语的权重。”

我不知道该去哪找。你有什么建议?

任何特定的信息(例如指向Lucene文档的链接)都会很有帮助(例如,指向Lucene文档的链接),坦率地声明这样的事情是而不是可能的,那么我就不需要花更多的时间去寻找如何去做了。(这个软件已经用Lucene编写了,所以我们现在不会重写它,所以如果Lucene不支持它,那么任何人(我的老板)对此都无能为力。)

EN

回答 1

Stack Overflow用户

发布于 2011-02-16 14:33:24

您可能应该将合并字段分别拆分为标题和正文,然后使用运行时增强来增加标题字段的相关性。

运行时查询将类似于

代码语言:javascript
复制
title:apache^20 body:apache

见- 0/queryparsersyntax.html#促进%20a%20 20Term

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5017537

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档