Lucene 评分:在什么情况下使用 queryNorm?

2024-05-05

我对 lucene 的评分策略有点困惑。我知道Lucene的评分公式是这样的:

score(q,d) = coord(q,d) x queryNorm(q) X SUM <t_in_q> ( tf(t_in_d) x idf(t)^2 x t.getBoost() x norm(t,d))

我理解这个公式中的每个组成部分,除了查询范数(q)。正如官方文档所解释的,

queryNorm(q) 是一个标准化因子,用于在 查询具有可比性。该因素不影响文档排名 (因为所有排名文档都乘以相同的因子),但是 而只是尝试从不同的查询中获得分数(甚至 不同指标)具有可比性。

为什么我需要比较不同查询之间的分数?换句话说,你能给出一个example显示在哪个上下文中查询范数(q)有用吗?


好问题,我自己也想知道这个问题。根据这个 ScoreAsPercentages 参数 http://wiki.apache.org/lucene-java/ScoresAsPercentages,尝试比较不同的查询或索引分数,甚至同一查询和索引在不同时间的分数,是一个坏主意,我同意。

我的理解是,虽然queryNorm确实并不会让它们严格具有可比性,但确实有帮助。与不使用默认查询规范相比,它们更接近于具有可比性。

我想它还可以让人们编写自己的相似性,并使用此调用来创建标准化的、可比较的分数,使用适合其特定情况的算法。

已经有一些关于放弃它的讨论 http://lucene.472066.n3.nabble.com/Whither-Query-Norm-td600443.html,您可能会觉得有趣。

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

Lucene 评分:在什么情况下使用 queryNorm? 的相关文章

  • 复杂的 SOLR 查询,包括 NOT 和 OR

    我对 SOLR 搜索有一些相当复杂的要求 我需要针对标记内容的数据库执行这些搜索 我需要首先过滤数据库以获取与我的过滤器标签匹配的结果 任何具有黑名单中的标签的结果都应被删除 除非它们也包含白名单中的标签 假设我想检索所有标记为 森林 或
  • apache solr:group by 产生的数据总和

    我们有一个要求 需要按特定字段对记录进行分组 并获取相应数字字段的总和 前任 select userid sum click count from user action group by userid 我们尝试使用 apache solr
  • 如何实现 IFilter 来索引重量级格式?

    我需要为 Microsoft Search Server 2008 开发一个 IFilter 它执行长时间的计算来提取文本 从一个文件中提取文本可能需要 5 秒到 12 小时 我如何设计这样的 IFilter 以便守护进程不会在超时时重置它
  • 如何为高流量网络应用程序实现“保存搜索”功能?

    我想知道可以在 eBay 等大型网络应用程序上找到的 保存的搜索 功能 您可以做的就是保存搜索 例如 宾得镜头 50mm 1 4 每当有人出售符合搜索条件的新优质标准快速宾得镜头时 您都会收到通知 对我来说 实现此类功能并不是一件简单的事情
  • Solr 过滤查询 - 字符串与整数

    假设我正在尝试查询一堆具有类别的文档 并且我想将查询限制为指定的类别 据我所知 这只是使用 fq 参数 过滤器查询 我想知道将参数设置为整 数而不是字符串或数据通常的情况是否会提高性能 我只是会在右侧犯错 但我想我应该仔细检查一下 以防万一
  • H2数据库排序规则:选择什么?

    经过大量阅读和实验后 似乎我想要主要的搜索强度 但第三或相同的排序强度 主要问题 用 H2 或任何其他数据库 可以实现吗 第二个问题 我是这里唯一的人吗 或者你们中有人也喜欢上述组合吗 一些确认会对我的理智有所帮助 背景 看来排序规则只能在
  • Powershell 错误:方法调用...不包含名为“replace”的方法

    我想使用 PowerShell 搜索并替换 xml 文件中的字符串 我试过这个 gc d test xml replace 1234 xxxx sc d test xml 这对于我的 test xml 文件效果很好 我的 test xml
  • 在 O(n) 时间内找到 n x n 矩阵中的局部最小值

    所以 这不是我的家庭作业问题 而是取自 coursera 算法和数据结构课程的未评分作业 现已完成 You are given an n by n grid of distinct numbers A number is a local m
  • Elasticsearch 关于“空索引”的查询

    在我的应用程序中 我使用了几个elasticsearch索引 它们在初始状态下不包含索引文档 我认为这可以称为 空 该文档的映射是正确且有效的 该应用程序还有一个包含实体的关系数据库 这些实体可能具有在 elasticsearch 中关联的
  • cursorMark是无状态的以及它如何解决深度分页

    作为指定here https cwiki apache org confluence display solr Pagination of Results光标标记是无状态的 但我不明白它是如何解决无状态的深度分页问题的 solr 是否按唯一
  • 如何在 Visual Studio 中搜索并让它忽略注释掉的内容?

    我正在 Visual Studio 2005 中重构 C 代码库 我现在已经完成了这个过程的一半 我已经注释掉了很多旧代码并替换或移动了它 现在我正在搜索 看看下一步必须更改 但搜索功能不断为我带来我不再关心的旧注释掉的内容 我还不想删除旧
  • 在python中删除链表中的节点

    删除链表中的节点 这个实现有什么问题 def delete self val tmp self head prev None while tmp if val tmp data self size 1 if prev None self h
  • JAVA:如何搜索地图?

    我有一个 Map 其键为字符串 其值为集合 包含整数 假设我的钥匙看起来像 苹果 香蕉 橙色 等 用户输入文本 我将其保存为字符串变量 如何在我的地图中搜索相同的密钥 因此 如果用户输入 apple 我如何将该字符串提供给方法并让该方法在我
  • Mono Android 中的搜索对话框

    我正在尝试根据此处的文档在 Mono Android 应用程序中实现搜索对话框 http developer android com guide topics search search dialog html http developer
  • 在elasticsearch中转义特殊字符

    我正在使用Elasticsearch python 客户端 https elasticsearch py readthedocs io en master 对我们托管的 elasticsearch 实例进行一些查询 我注意到一些字符需要转义
  • jQuery Mobile 数据过滤器,以防没有结果

    我目前正在探索 jQuery Mobile 以开发带有订单跟踪信息的移动版仪表板 计划是使用一个包含所有订单的简单无序列表 人们可以单击他们想了解更多信息的链接 由于此列表可能会变得相当大 因此拥有过滤功能非常好 使用 jQuery Mob
  • Lucene 标准分析器与 Snowball

    刚刚开始使用 Lucene Net 我使用标准分析器索引了 100 000 行 运行了一些测试查询 并注意到如果原始术语是单数 则复数查询不会返回结果 我知道雪球分析器增加了词干支持 这听起来不错 不过 我想知道 超过标准的雪球锣是否有任何
  • 利用 Bootstrap 的 typeahead 作为搜索功能

    我的预输入工作得很好 但我对 Javascript 缺乏经验 无法理解如何将输入的结果转换为链接
  • robots.txt 允许除少数子目录之外的所有子目录

    我希望我的网站能够在搜索引擎中编入索引 除了少数子目录 以下是我的robots txt设置 robots txt在根目录下 User agent Allow 分离robots txt在子目录中 被排除 User agent Disallow
  • 我可以使用 vim “star” 搜索来搜索 PHP 类成员和方法吗?

    vim 星号 星号搜索 help star 是一个很棒的功能 它可以让您找到光标所在单词的下一个出现位置 不幸的是 它将美元前缀视为字符串的一部分 因此如果我在类名中的 SearchTerm 上方按 它会在注释中找到 SearchTerm

随机推荐

  • Android - 使用 HttpURLConnection 来 POST XML 数据

    我遇到了一些死胡同 需要一些帮助 请 我对 Android 开发 以及一般编码 非常陌生 基本上我需要使用 HttpURLConnection 将 XML 数据发布到 URL 但无法让它工作 我的应用程序从 GET 请求读取并传递 XML
  • 用于 JAWS 开发的文本控制台?

    我正在开发一个网络应用程序 我希望通过屏幕阅读器使其易于使用 在 JAWS 中测试东西非常耗时 是否可以让 JAWS 显示文本而不是阅读它 我实际上不想听到开发过程中的内容 我只是想看看 JAWS 会读什么 据我所知 大白鲨 没有语音查看器
  • 使用两个图像的平方差作为张量流中的损失函数

    我正在尝试使用两个图像之间的 SSD 作为我的网络的损失函数 h fc2 is my output layer y is my label image ssd tf reduce sum tf square y h fc2 train st
  • 让 GHC 生成“带进位加法 (ADC)”指令

    下面的代码将表示 192 位数字的两个未装箱字三元组添加到新的未装箱字三元组中 并且还返回任何溢出 LANGUAGE MagicHash LANGUAGE UnboxedTuples import GHC Prim plusWord2 Wo
  • Spark Worker 在 Heartbeater 中与 Spark Driver 通信的超时时间为 3600 秒

    我没有配置任何超时值 而是使用默认设置 在哪里配置3600秒超时 怎么解决呢 错误信息 18 01 10 13 51 44 WARN Executor Issue communicating with driver in heartbeat
  • 添加一个favicon到redmine主题

    redmine 使用位于的 favicon usr share redmine public favicon ico 我发现很多代码片段使用cd usr share redmine grep HR favicon app app helpe
  • 单击时获取按钮值并回显它

    我是 php 的初学者 我的第一个任务是构建一个计算器 我在这里询问如何从按钮获取值并在同一页面上回显它 我正在尝试使用 isset 通过方法发布 但能够在同一页面上显示任何值
  • 在 C 中初始化结构体的静态数组

    我正在用 C 实现一个纸牌游戏 纸牌有很多种类型 每种纸牌都有大量信息 包括一些需要单独编写与其关联的脚本的操作 给定这样的结构 并且我不确定我的语法是否适合函数指针 struct CARD int value int cost This
  • GAE、JPA、XG 事务、实体组过多异常

    我知道 GAE 上的 XG 交易有 5 个实体组的限制 但我认为我在一项交易中仅使用 3 个组 商品 类别 商品类别 但仍然遇到此异常 引起原因 java lang IllegalArgumentException 在单个事务中对太多实体组
  • NuGet 未显示任何包

    I ve tried going to the URL listed for the official package source with my browser and I only get an empty list I also t
  • 带有隐藏输入的 Selenium 文件选择器[type=file]

    我有一个图像文件上传并想测试它硒 java 用户有两个选择 他可以通过从本地计算机拖放来推送图像 也可以单击 浏览 按钮 然后出现浏览器指定的文件选择器 In Selenium我尝试了不同的事情 据我所知Selenium不提供浏览器之外的操
  • 覆盖 vuetify 中的 scss 变量

    为了增加 vuetify 的 v switch 的宽度 我想修改 vuetify 的 scss 变量的值 vuetify是通过vue cli配置的 开发的代码如下 src assets css overrides scss font siz
  • Google 文档从脚本调用 ImportXML

    我在 google 文档表中使用 ImportXML 从 sistrix api 获取数据 它工作正常 但我遇到了一张纸中 50 个 ImportXML 命令的限制 因此 我使用了一个脚本 将 ImportXML 命令写入单元格 临时 公式
  • 在javascript中调用c#函数[重复]

    这个问题在这里已经有答案了 可能的重复 从 Javascript 调用 ASP NET 函数 https stackoverflow com questions 3713 call asp net function from javascr
  • Zend_Controller_Router_Route:找不到翻译器

    我正在开发一个多语言应用程序 在引导程序中有路由设置 protected function initRoutes this gt bootstrap frontController router this gt frontControlle
  • 使用 PrimarySearcher.FindAll() 时出现内存泄漏

    我也有一个使用插件和应用程序域长时间运行的服务 并且由于使用目录服务而出现内存泄漏 请注意 我正在使用 system directoryservices accountmanagement 但据我了解 它使用相同的底层 ADSI API 因
  • Spring WebFlux - 通过 webClient 转发 FilePart

    我浏览过类似的门票 即如何在 Spring WebFlux 中从 Multipart form data 流式传输文件 https stackoverflow com questions 70408075 how to stream fil
  • 在 Python 中删除表达式树及其每个子表达式树中第一个元素周围的括号

    目标是实现简化操作 删除表达式树及其每个子表达式树中第一个元素周围的括号 其中表达式作为括在各个括号中的字符串输入给出 这必须适用于任意数量的括号 例如 12 3 45 6 gt 123 45 6 删除 12 周围的括号 然后删除 45 周
  • 在 QtCreator 中查看数组内容

    调试时是否可以在 Qt Creator 中查看数组的内容 似乎检测到我的数组是一个数组而不是一个指针 此外 我可以点击一个箭头 就像展开一样 但之后什么也没有显示 当我试穿的时候std vector Qt Creator 设法按预期显示内容
  • Lucene 评分:在什么情况下使用 queryNorm?

    我对 lucene 的评分策略有点困惑 我知道Lucene的评分公式是这样的 score q d coord q d x queryNorm q X SUM