Lucene排名-如何使用新的4.0评分模型

2023-12-20

我正拼命地尝试在 Lucene 中实现一项新功能,所以我向您求助。 基本上,在此 JIRA ISSE 中,一些额外的评分模型已添加到 Lucene 中:https://issues.apache.org/jira/browse/LUCENE-2959 https://issues.apache.org/jira/browse/LUCENE-2959

请原谅我的无知,但我真的不明白如何获得该链接中描述的 lucene 的“版本”,以便我可以根据自己的需要使用它。该链接中的作者提到他们已经实现了新的排名模型,例如 BM25,但我不知道从哪里获取源代码,也不知道如何实现或运行具有这些新功能的 Lucene。如果您有这方面的专业知识,我们将非常感谢您的帮助。

提前致谢,

Nik


正如 sdolgy 所提到的,您应该进行夜间构建:

Lucene: http://lucene.apache.org/core/developer.html http://lucene.apache.org/core/developer.html Solr: http://wiki.apache.org/solr/NightlyBuilds http://wiki.apache.org/solr/NightlyBuilds

至于如何使用这些模型,非常简单。

从 Lucene 中,在 IndexSearcher 上设置相似度:

indexSearcher.setSimilarity(new BM25Similarity());

从 Solr 中,在 schema.xml 中设置相似度:

<similarity class="solr.BM25SimilarityFactory"/>

可以进行更高级的配置(例如设置参数、每个字段的配置等)。

对于 Lucene,首先从包文档中进行概述:https://builds.apache.org/view/G-L/view/Lucene/job/Lucene-trunk/javadoc/core/org/apache/lucene/search/similarities/package-summary.html https://builds.apache.org/view/G-L/view/Lucene/job/Lucene-trunk/javadoc/core/org/apache/lucene/search/similarities/package-summary.html

对于Solr,看一下各个工厂的javadoc:https://builds.apache.org/view/G-L/view/Lucene/job/Solr-trunk/javadoc/org/apache/solr/search/similarities/package-summary.html https://builds.apache.org/view/G-L/view/Lucene/job/Solr-trunk/javadoc/org/apache/solr/search/similarities/package-summary.html

如果您需要更高级的 Solr 配置示例,请查看中的测试http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/ http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/

例如,这个测试文件使用SchemaSimilarityFactory在不同字段上配置不同的DFR模型,以便它可以轻松测试各种组合是否有效,(我是not建议您为每个字段配置完全不同的评分系统,除非您知道自己在做什么,这是可能的,并且有一些如何配置工厂的示例):http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-dfr.xml http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-dfr.xml

其他模型工厂的类似测试也存在于该目录中:http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-bm25.xml http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-bm25.xml, http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-ib.xml http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-ib.xml, http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-lmdirichlet.xml http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-lmdirichlet.xml, http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-lmjelinekmercer.xml http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-lmjelinekmercer.xml, http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-tfidf.xml http://svn.apache.org/repos/asf/lucene/dev/trunk/solr/core/src/test-files/solr/conf/schema-tfidf.xml

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Lucene排名-如何使用新的4.0评分模型 的相关文章

  • 如何为 PhraseQuery 搜索设置 Lucene 标准分析器?

    Lucene 上的各种教程给我的印象是 如果我这样做 IndexWriter writer new IndexWriter indexPath new StandardAnalyzer Version LUCENE CURRENT true
  • Lucene中的geohash索引是如何工作的

    在 lucene space 4 中 我想知道 geohash 索引在幕后是如何工作的 我理解 geohash 的概念 它基本上需要 2 个点 纬度 经度 并创建一个 字符串 哈希 索引只是一个 字符串 索引 r 树或四叉树 还是类似的东西
  • Lucene 查询解析器在查询条件中带有“/”

    当我尝试在 Lucene 中搜索诸如 解决方法 修复 之类的内容时 它会抛出此错误 org apache lucene queryparser classic ParseException Cannot parse workaround f
  • 使用 Apache Lucene 对 MySQL 数据库建立索引,并保持它们同步

    当MySQL中添加一个新项目时 它也必须被Lucene索引 当现有项目从 MySQL 中删除时 它也必须从 Lucene 的索引中删除 这个想法是编写一个脚本 通过调度程序 例如 CRON 任务 每 x 分钟调用一次 这是保持 MySQL
  • Lucene中SpanQuery的用途是什么?

    有人可以解释一下什么是SpanQuery是 它的典型用例是什么 The 文档 https lucene apache org core 7 7 3 core org apache lucene search spans SpanQuery
  • 在哪里可以找到 Apache Lucene/Solr 的性能基准

    是否有任何针对大型数据集上 Lucene Solr 性能基准的链接 资源 500GB 5TB以上范围的数据集 Thanks Lucene 提交者 Mike McCandless 运行基准 http people apache org mik
  • 如何在 Orchard CMS 上使用 lucene 查询语法

    我想使用完整的Lucene 查询语法 http lucene apache org core 2 9 4 queryparsersyntax html在基于 Orchard CMS 的网站上 目前 启用后索引和搜索 http docs or
  • 如何在 Lucene 6 中对数字字段进行排序

    我想根据数字字段对搜索结果进行排序 在下面的示例代码中 我想根据 年龄 字段进行排序 我从使用以下答案开始 如何在 Lucene 6 中对 IntPont 或 LongPoint 字段进行排序 https stackoverflow com
  • ElasticSearch 全文搜索

    我尝试在elasticsearch java api 中使用正则表达式运行全文搜索 我的过滤器是这样的 FilterBuilder qFilter FilterBuilders regexpFilter all text 但它只匹配一个单词
  • Elasticsearch 6.2 / Kibana查询:一字段必须存在,一字段不能存在

    我的愿望是搜索 field 存在且 fields b 不存在的文档 有没有办法使用 Kibana 中的 Lucene 查询语法 Kibana 的 发现 部分中的 搜索 字段 来执行此操作 我尝试过使用 缺失 字段 b没有成功 exists
  • 将 Nutch 爬虫与 Solr 结合使用

    我可以将 Apache Nutch 爬虫程序与 Solr 索引服务器集成吗 Edit 我们的一位开发人员从这些帖子中提出了一个解决方案 运行 Nutch 和 Solr http wiki apache org nutch RunningNu
  • 如何从 Solr 查询中获取 tf 和 idf 分数?

    以下 Solr 文档 https cwiki apache org confluence display solr Function Queries https cwiki apache org confluence display sol
  • 在 lucene 中搜索 UUID 不起作用

    我有一个 UUID 字段 以以下格式添加到我的文档中 372d325c e01b 432f 98bd bc4c949f15b8 但是 当我尝试通过 UUID 查询文档时 无论我如何尝试转义表达式 它都不会返回它们 例如 uuid 372d3
  • 仅根据lucene中term出现次数较多的文档来计算分数

    我开始研究基于 lucene net 引擎的简历检索 文档 组件 它工作得很好 它会获取文档并根据 VSM 背后的理念是 查询词出现在 a 中的次数 文档相对于数量 该术语出现在所有 集合中的文档越多 该文件的相关内容是 询问 Lucene
  • 在具有多个 Web 服务器的现有 .NET / SQL Server 堆栈上实施 Lucene

    我想考虑使用 Lucene 为我当前管理的网站提供全文搜索解决方案 该网站完全基于 SQL Server 2008 C NET 4 技术构建 我要索引的数据实际上非常简单 每个记录只有几个字段 并且只有其中一个字段实际上是可搜索的 我不清楚
  • Solr 过滤查询 - 字符串与整数

    假设我正在尝试查询一堆具有类别的文档 并且我想将查询限制为指定的类别 据我所知 这只是使用 fq 参数 过滤器查询 我想知道将参数设置为整 数而不是字符串或数据通常的情况是否会提高性能 我只是会在右侧犯错 但我想我应该仔细检查一下 以防万一
  • 在 Solr 中实现术语关联挖掘的最简单方法是什么?

    关联挖矿似乎为检索提供了良好的结果相关术语在文本语料库中 有很多关于这个主题的著作 其中包括著名的LSA http en wikipedia org wiki Latent semantic analysis方法 挖掘关联最直接的方法是构建
  • 在elasticsearch中转义特殊字符

    我正在使用Elasticsearch python 客户端 https elasticsearch py readthedocs io en master 对我们托管的 elasticsearch 实例进行一些查询 我注意到一些字符需要转义
  • Lucene.Net 下划线导致令牌分裂

    我已将 MsSqlServer 数据库表 视图和存储过程编写到目录结构中 然后使用 Lucene net 对其进行索引 我的大多数表 视图和过程名称都包含下划线 我使用标准分析器 如果我查询名为 tIr 的表例如 发票 tnWtn01 我收
  • Solr协会

    最近几天我们正在考虑使用 Solr 作为我们选择的搜索引擎 我们需要的大多数功能都是开箱即用的或者可以轻松配置 然而 我们绝对需要的一项功能似乎在 Solr 中被很好地隐藏 或缺失 我将尝试用一个例子来解释 我们有很多实际上是企业的文件

随机推荐

  • Android 上 libjpeg-turbo 的集成或构建说明

    在互联网上可以找到各种提到 Android 版 libjpeg turbo 的页面 example http comments gmane org gmane linux linaro devel 6967 他们都指向存储库here htt
  • 如何仅在 Swift 中将一个视图控制器的方向锁定为纵向模式

    因为我的应用程序支持所有方向 我想仅将纵向模式锁定到特定的 UIViewController 例如假设它是选项卡式应用程序 并且当登录视图以模态方式出现时 我只希望登录视图仅处于纵向模式 无论用户如何旋转设备或当前设备方向如何 当你有一个复
  • 模板智能感知

    我主要使用 C 而 VSCode 中缺少的一件事是 Angular 2 模板中的 IntelliSense 我发现这个问题有解决办法here https github com microsoft typescript issues 6508
  • 用于理解 OpenGL 中的视图、投影、“虚拟相机”或一般图形的资源 [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我注意到大多数资源要么假设您已经了解很多 要么假设您了解专业水平的数学 要么假设您将找到其他资源来填补空
  • 如何从 Python 以隐身模式打开 chrome

    这在 powershell 中有效 Start Process chrome exe ArgumentList incognito www foo com 如何通过 Python 实现这一点 使用网络浏览器在 chrome 中打开隐身模式的
  • 在 jQuery mousedown 处理程序中添加覆盖层后,Internet Explorer 泄漏单击事件

    In a mousedowndiv 的事件处理程序创建另一个新 div 并将其附加到主体 这个新的div有position fixed 也可以是position absolute 并且具有 100 宽度和 100 高度 因此它立即覆盖触发鼠
  • 更新 Flutter 项目中的 Gradle

    我有这个项目Flutter 但由于 Gradle 版本的原因 我已经有几周无法构建 apk 了 我已经尝试了所有方法 但 Flutter 总是返回以下错误 我已经安装了我发现的每个更新 尽管它显示 Gradle 版本是 4 10 2 颤动构
  • 读取 Excel Open XML 会忽略空白单元格

    我正在使用此处接受的解决方案 https stackoverflow com questions 3321082 from excel to datatable in c with open xml将 Excel 工作表转换为数据表 如果我
  • 将主机名解析为 IP 地址

    我开发了一个客户端 服务器模拟应用程序 我在两台不同的 Windows XP 计算机上部署了客户端和服务器 不知何故 客户端无法向服务器发送请求 我尝试了以下选项 使用 IP 地址从客户端成功 Ping 通服务器计算机 使用 IP 地址成功
  • 访问者模式 - 添加新的 ConcreteElement 类很难吗?

    我读了一本关于访客模式的书 它给出了与中相同的类图oodesign 的网站 http www oodesign com visitor pattern html 它说添加新的 ConcreteElement 类很困难 但我不明白为什么 据我
  • CORS 请求 - 为什么未发送 cookie?

    我有一个跨域 AJAX GET 它已成功预检 但 cookie 未附加到 GET 请求 当用户单击登录按钮时 会发出 POST 来使用户登录 这可以在跨域中正常工作 JavaScript 是 ajax signin url type POS
  • Lucene.net 模糊短语搜索

    我自己已经尝试了相当长的一段时间 并在网络上到处寻找 但一直无法找到任何通过 Lucene NET 2 9 2 进行模糊短语搜索的示例 C 是否能够建议如何详细执行此操作和 或提供一些示例代码 我将非常感谢任何帮助 因为我完全陷入困境 我假
  • 检查 Swift 中两个字符串表达式之间的相似度

    我扫描了文字 Mils chiiese wh ite ch col te 和表达式列表 例如 cheese bread white chocolate etc 我需要将损坏的表达式与我的列表中的表达式进行比较 例如 白巧克力 和 wh it
  • 如何解析“Build:‘Promise’仅指一种类型,但在此处用作值。”

    在打字稿中 我收到构建错误 提示 Build Promise 仅指类型 但在此处用作值 我的项目目标是 ES5 从这个帖子中 我可以通过将其更改为 ES6 来解决该问题 有没有办法在不改变目标的情况下解决问题 typescript 错误 T
  • 从 Swagger 文档生成 Yaml 或 Json 文件

    我使用 swagger springmvc 注释开发了一些由 swagger 记录的 Rest Web 服务 现在 我想使用 swagger editor 生成客户端 Rest Web 服务代码 但 swagger editor 需要 Ya
  • Java ME 双空格中的字符串替换

    如何在 Java ME 中将 a b 替换为 a b The replace 方法不接受字符串 只接受字符 由于双空格包含两个字符 我想我有一个小问题 你觉得这个怎么样 我自己尝试过一个 private String replace Str
  • Windows 上 Python 的长路径

    我在 Windows 下运行 Python 编程时遇到问题 我需要使用长度超过 256 个或任何限制字符的文件路径 现在 我基本上阅读了两种解决方案 使用 kernel32 dll 中的 GetShortPathName 并以这种方式访问
  • C# ValueTuple 属性命名

    我正在尝试 C 中的 ValueTuple 类 我对属性命名有疑问 让我们看看 如果实例化一个 ValueTuple 并声明该对象 如下所示 var tuple1 Name Name1 Age 25 我们可以命名属性 但是 像这样 Valu
  • 将 .plist 文件与 iCloud 同步

    我正在尝试弄清楚如何同步 Mac 沙盒应用程序中 应用程序支持 文件夹中的 plist 文件 我知道我可以使用 iCloud 键值存储 但每个应用程序有 64KB 的限制 这可能会或可能不会达到 具体取决于用户向应用程序添加了多少内容 我已
  • Lucene排名-如何使用新的4.0评分模型

    我正拼命地尝试在 Lucene 中实现一项新功能 所以我向您求助 基本上 在此 JIRA ISSE 中 一些额外的评分模型已添加到 Lucene 中 https issues apache org jira browse LUCENE 29