信息检索(54):On the Effect of Low-Frequency Terms on Neural-IR Models

On the Effect of Low-Frequency Terms on Neural-IR Models

  • 摘要
  • 1 引言
  • 2 背景和相关工作
  • 3 实验设计
  • 4 词汇量的影响
  • 5 包含低频词的查询
  • 6 结论


发布时间(2019)


低频词对于神经检索模型的影响

摘要

低频词是信息检索模型面临的一个反复出现的挑战,尤其是神经 IR 框架难以充分捕捉不常出现的单词。虽然这些术语通常会从神经模型中删除(主要是为了满足效率要求),但它们传统上在 IR 模型的性能中发挥着重要作用。在本文中,我们分析了低频术语对神经 IR 模型的性能和鲁棒性的影响。我们对三个最近的神经 IR 模型进行了受控实验,这些模型是在大规模段落检索集合上训练的。我们评估了具有不同词汇量大小的神经 IR 模型的各自词嵌入,并考虑了对可用 GPU 内存的不同程度的限制。 我们观察到,尽管使用较大的词汇表具有显着的好处,但词汇表之间的性能差距在很大程度上可以通过对相关参数进行大量调整来缓解:要重新排序的文档数量。我们进一步研究了子词标记嵌入模型(特别是 FastText)在神经 IR 模型中的使用。我们的实验表明,与在完整词汇上训练的模型相比,使用 FastText 可以稍微改善神经 IR 模型的整体性能,而对于包含低频术语的查询,这种改善更加明显。

1 引言

1)密集表示对于低频词的缺陷
a)可能词汇表中不存在那个低频词
b)即使存在,由于出现次数少,对于它的表示也比较差
2)词汇表对模型的影响小
重新排序阈值对模型影响大
3)sub-word VS word-level 的完整词汇表
FastText 使用 n-gram 证明使用 sub-word token 嵌入有利于 query 中低频词的表示
ELMo 也是基于字符嵌入的模型
用于信息检索的神经网络方法在各种文档检索任务中都表现出色。各种研究都通过将预训练的词嵌入引入经典 IR 模型 [13, 14]、将词嵌入应用于检索任务 [4, 6] 或提出全新的神经 IR 模型 [3, 7, 8, 16] 来应用神经方法。所有这些方法的一个基本核心构建块是词嵌入模型,它定义了术语之间的语义关系。
通常,词向量是在固定词汇表上定义的。 作为神经网络方法中的一种常见做法,收集频率非常低的术语会从词汇表中删去,成为词汇表外 (OOV) 术语。以这种方式限制词汇表的原因通常源于 (GPU) 内存限制、效率考虑或降噪工作。
然而,在检索建模的背景下,低频术语具有高度的信息性或显著性,因此在识别相关文档方面发挥着重要作用。在经典 IR 中,此类术语的重要性通过术语显著性度量来量化,例如逆文档频率。 在神经 IR 模型的训练阶段删除低频术语可能会损害派生模型的有效性和稳健性,尤其是对于包含受影响术语的查询。 即使神经 IR 模型覆盖了整个集合词汇表,仍存在两个问题:(1) 该模型在检索时出现的以前未见过的术语(OOV 术语)上表现不佳。(2) 由于缺乏低频术语的训练数据,学习到的向量可能在语义上不稳健。
在本研究中,我们探索了低频词对神经 IR 模型的有效性和鲁棒性的影响。我们对三个最近的神经 IR 模型(即 KNRM [16]、CONV-KNRM [3] 和 MatchPyramid [8])进行了广泛的受控实验,并在 MS MARCO [1] 段落排名集合上进行了评估,最后提出了神经 IR 模型中一般底层词汇问题的潜在解决方案。
本文的创新贡献有两方面:我们首先探索了在不同词汇表上训练的神经 IR 模型的性能(第 4 节)。我们观察到,尽管使用较大的词汇表具有显著的优势,但模型性能对几乎所有神经 IR 模型共有的另一个基本参数高度敏感:重新排序阈值,它定义了神经 IR 模型对多少个最初检索到的文档进行了重新排序。我们研究了词汇表大小与重新排序阈值之间的关系,并注意到模型对后者的敏感性,尤其是词汇量较小的模型。我们的结果表明,经过良好调整的重新排序阈值可以大大减轻词汇量修剪的负面影响
其次,我们研究了嵌入子词标记与使用完整词汇表的词级标记的效果(第 5 节)。特别是,我们研究了 FastText [2] 的使用,这是一个基于字符 n-gram 向量表示组成的模型,旨在解决 OOV 问题。我们的结果表明,使用 FastText 的模型的整体性能仍然接近使用完整词汇表的结果。然而,字符级模型在包含低频术语的查询上实现了明显更好的性能。我们认为这是由于字符级模型的泛化更好,这得益于具有类似 n-gram 上下文的其他单词。因此,这项早期研究建议使用子词标记嵌入作为保留神经 IR 模型的有效性和稳健性的策略,尤其是对于低频查询词

2 背景和相关工作

FastText 模型是一种有效且高效的子词嵌入模型,它简单地将字符 n-gram 向量相加以构建词嵌入
在本节中,我们简要解释子词嵌入,然后讨论与我们的研究相关的工作
子词嵌入模型基于组成单词的字符 n-gram 的嵌入来生成单词的向量表示。通过这种方式,模型可以通过利用具有相似字符 n-gram 的观察到的术语的上下文,为未见过的术语提供语义上有意义的嵌入向量,并且几乎没有词汇外的术语。 FastText 模型 [2] 是一种有效且高效的子词嵌入模型,它简单地将字符 n-gram 向量相加以构建词嵌入。对于高频术语,FastText 直接为每个单词分配一个向量。ELMo [11] 是另一个著名的基于字符的嵌入模型,此外,它还考虑了单词周围的上下文。在这项工作中,我们使用 FastText,因为它与传统的词嵌入具有直接可比性
在更传统的检索模型中,Woodland 等人 [15] 探索了 OOV 术语在口语文档检索中的作用,提出了查询和文档扩展方法。据我们所知,目前还没有关于低频术语对神经 IR 模型的影响的研究。
其他研究探索了神经 IR 模型的相关方面。Pyreddy 等人 [12] 研究了基于核的神经模型在不同参数初始化下的方差和一致性。Zamani 等人 [18] 提出了一种跳过重新排序步骤的方法,直接从稀疏表示索引中检索文档。相比之下,在本文中,我们分析了神经 IR 模型对重新排序阈值参数的敏感性,因为最近提出的大多数神经模型都是基于重新排序机制

3 实验设计

1)GloVe:300维(代表了词嵌入)
FastText:3-gram,200维(代表了子词嵌入)
2)实验证明,子词嵌入效果更好并且占用内存更小
我们在 MS MARCO [1] 段落重新排序集合上进行实验。该集合提供了来自 Bing 搜索日志的大量信息性问题式查询,并附有人工注释的相关/不相关段落。除了训练数据外,MS MARCO 还提供了一个开发集(包含用于评估的查询和相关性数据),有两种大小:sample1 和 full。在我们的实验中,我们使用来自样本的查询作为验证集,将完整开发集的其余部分用作测试集。总的来说,该集合包含 8,841,822 份文档、6,980 个用于验证的查询和 48,598 个用于测试的查询。
资源。我们使用 GloVe [10] 300 维2 的词向量,以及基于 2015 年 8 月维基百科语料库训练的 FastText 模型,该模型包含 200 维的三元字符子词。 我们根据术语集合频率的不同阈值创建了几个词汇表。在我们的实验中,我们将频率大于或等于 n 的术语集称为 Voc-n。VocFull 使用集合中的所有术语。表 1 显示了生成的词汇表的详细信息以及相应的 OOV 术语统计数据
评估。我们使用 MS MARCO 排名挑战的主要指标来评估我们的模型:平均倒数排名测量 (MRR) 以及召回率,均在排名 10。统计显着性检验使用双侧配对 t 检验 (p < 0.05) 进行。

4 词汇量的影响

表 2 显示了在各种词汇表和 FastText 嵌入上训练的神经排名模型在验证集和测试集上的表现。我们计算了排名对之间的显著性检验,并在下文中提到了结果。我们还评估了 BM25,在测试集上实现了 0.192 的 MRR 和 0.407 的召回率。与之前的研究一致,BM25 模型的表现优于所有神经排名模型,而 CONV-KNRM 表现出最佳的整体性能 [3、8、16]。
比较每个模型的结果,在三个模型中的两个中,FastText embedding 的表现明显优于 Voc-Full,而 FastText 只需要 VocFull 所需内存的 55%(基于表 1 中的统计数据)。查看具有不同词汇量大小的模型的结果,与使用较小的词汇表相比,使用 Voc-Full 带来了显着的优势。 然而,它们的差异变得微不足道,特别是对于具有 Voc-5 和 Voc-10 词汇集的模型,考虑到 Voc-5 和 Voc-10 词汇表的 embedding 所需的内存空间要少得多,即只有 Voc-Full embedding 所用内存的 15%(Voc-5)和 8%(Voc-10)。

虽然报告的结果是基于对验证集的超参数的详尽调整,但接下来我们将研究模型对重新排序阈值的敏感性,重新排序阈值是神经 IR 模型的一个重要但研究不充分的超参数。图 1 展示了三个神经 IR 模型对重新排序阈值参数变化的敏感性。从图中的趋势来看,随着性能的提高(无论是使用性能更好的模型还是更大的词汇量),模型对重新排序阈值的敏感度都会降低。这样,最佳重新排序阈值也会变得更大,这表明该模型能够有效地概括一组更大的非相关文档。因为增加重新排序阈值主要是增加不相关的文档。另一方面,性能较低的模型(MatchPyramid 和 KNRM),尤其是词汇量较小的模型,对重新排序阈值高度敏感。对于这样的模型,详尽的参数搜索提供了显着的增强。这表明了对重排序阈值参数进行良好调整的重要性,尤其是在内存资源受限的情况下。 最后,为了确认对验证集调整重排序阈值的影响是否也转移到测试集,我们在表 2 中比较了验证集和测试集上的结果。 如图所示,即使在对重排序阈值敏感度较高的模型上,结果也非常相似,这表明对重排序阈值进行广泛调整的有效性

5 包含低频词的查询

在本节中,我们将仔细研究使用不同词汇在传统嵌入(我们实验中的 GloVe)上训练的模型与在 FastText 嵌入上训练的模型之间的差异。
图 2 显示了使用传统嵌入 Voc-Full 词汇表的神经排序模型与使用 FastText 的神经排序模型在收集频率范围内的 MRR 差异。 对于 X 轴上的每个点,我们计算查询的 MRR 值,这些查询至少有一个词的收集频率等于或小于该点的相应值。 该图显示了与频率极低的词查询相关的区域与其余区域之间的强烈对比,表明使用 FastText 的模型对这些查询的性能更高。
让我们仔细看看这个领域。图 3 显示了 CONV-KNRM 模型的 MRR,使用具有不同词汇的传统词嵌入,以及使用 FastText 嵌入的模型,用于包含非常不常见术语的查询。MRR 值的计算方式与图 2 中相同。
如图所示,使用 FastText 的模型大幅提升了所有其他模型,尤其是在集合频率达到 10 到 15 左右时。有趣的是,BM25 作为精确词匹配模型,其性能优于使用传统嵌入的神经 IR 模型,尤其是在非常低的值上。我们认为,使用传统嵌入的模型性能低下是由于缺乏足够的上下文来学习有意义的表示,从而导致语义相似度估计无效。 另一方面,子词嵌入利用了集合中具有相似字符 n-gram 的其他观察到的词的上下文。因此,使用子词嵌入的神经排名模型仍然受益于非常不常见的词之间的有意义的语义关系,其表现优于基于传统嵌入和精确匹配的排名模型。

6 结论

我们的工作迈出了理解神经排序模型中不常见术语的影响的第一步,并利用新颖的表示学习方法来解决它。我们首先研究神经 IR 模型对其词汇量大小的敏感性,指出细粒度调整重新排序阈值的重要性。然后,我们研究在神经 IR 模型中使用子词嵌入的影响,表明使用这些嵌入尤其可以显著提高包含非常低频术语的查询的性能。作为未来的工作,我们旨在将这项研究的调查范围扩大到神经 IR 模型的查询性能预测领域。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/34299.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java代码如何优化的?

1、单一职责 2、注释 3、公共类/方法抽离 4、单元测试 5、SQL优化 6、代码reviewe 7、库存以前是直接操作数据库--->lua 8、日志----->ELK

机器学习python实践——关于数据集划分和数据标准化的相关问题的思考

最近在跟着参考书利用python进行机器学习实践&#xff0c;但是在实践过程中对数据集划分和数据的标准化产生了一些疑惑&#xff0c;所以&#xff0c;本文想记录并分享一下个人关于这方面的思考&#xff0c;如果有误请见谅&#xff0c;欢迎大家前来一起进行探讨。当然&#xff0…

icloud 邮箱登入失败

APP NAME mail2HOSTING APP NAME cloudos2CLIENT TIME Tue Jun 11 2024 09:00:47 GMT0800 (中国标准时间) (1718067647802)USER AGENT Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/125.0.0.0 Safari/537.36HOSTNAME www.icloud.…

使用阿里开源的Spring Cloud Alibaba AI开发第一个大模型应用

背景 前段时间看到Spring推出了SpringAI&#xff0c;可以方便快速的接入ChatGPT等国外的大模型&#xff0c;现在阿里巴巴也紧追脚步推出了Spring Cloud Alibaba AI&#xff0c;Spring Cloud Alibaba AI 目前基于 Spring AI 0.8.1 版本 API 完成通义系列大模型的接入。通义接入…

自定义npm脚本:打造你的package.json自动化神器

自定义npm脚本&#xff1a;打造你的package.json自动化神器 在JavaScript和Node.js的世界中&#xff0c;npm不仅仅是一个包管理器&#xff0c;它还是一个强大的自动化工具。通过package.json文件中的自定义npm脚本&#xff0c;你可以将日常开发任务自动化&#xff0c;从而节省…

常用框架-MyBatis

常用框架-MyBatis 1、MyBatis是什么?2、说说MyBatis的优点和缺点?3、#{}和${}的区别是什么?4、实体类的属性名和表中的字段名不一致怎么办?5、Mybatis是如何进行分页的?分页插件的原理是什么?6、Mybatis是如何将sql执行结果封装为目标对象并返回的?都有哪些映射形式?7、…

Zookeeper 二、Zookeeper环境搭建

Zookeeper安装方式有三种&#xff0c;单机模式和集群模式以及伪集群模式 单机模式&#xff1a;Zookeeper只运行在一台服务器上&#xff0c;适合测试环境集群模式&#xff1a;Zookeeper运行于一个集群上&#xff0c;适合生产环境&#xff0c;这个计算机集群被称为一个“集合体”…

【Spine学习15】变换约束

变换约束&#xff1a;能让一个骨骼受另一个骨骼的变化影响。 1、选择m创建一个变换约束&#xff1a; 2、点击这个约束&#xff0c; 将移动数值拉的越满&#xff0c;m越接近s骨骼 当约束为0也就是默认的时候&#xff0c;m骨骼将不会受影响&#xff0c;变换约束可有可无。 tips…

Mysql简述

Java - sql语句学习 sql分类 sql语句 sql数据类型

26、架构-微服务的九个核心特征

1. 围绕业务能力构建 定义&#xff1a;微服务应该根据业务功能划分&#xff0c;而不是根据技术层次或模块划分。 详细讲解&#xff1a; 业务能力&#xff1a;每个微服务应该专注于完成一个具体的业务功能&#xff0c;例如用户管理、订单处理、支付处理等。这样&#xff0c;每…

《数字图像处理》实验报告一

一、实验任务与要求 1、用 matlab 编写空间域点处理操作处理给定的几幅图像&#xff0c;要求&#xff1a; 使用 imread 读取当前工作目录下的图像设计点处理操作并用代码实现处理用 imnshow 显示处理后的图像用 imwrite 保存处理后的图像 2、提交内容&#xff1a;m文件 实验…

ARM单片机使用CAN总线部署BootLoader

1.引言 1.1.单片机开发BootLoader意义 单片机开发BootLoader的原因主要与其在嵌入式系统中的关键作用有关。BootLoader是硬件启动的引导程序&#xff0c;它在操作系统内核或用户应用程序运行之前执行。以下是单片机开发BootLoader的主要原因&#xff1a; 初始化硬件设备&…

算法设计与分析:并查集法求图论桥问题

目录 一、实验目的 二、问题描述 三、实验要求 四、算法思想 1. 基准算法 1.1 算法思想 1.2 代码 1.3 时间复杂度 2. 使用并查集的高效算法 2.1 算法思想 2.2 代码&#xff1a; 2.3 时间复杂度&#xff1a; 五、实验结果 一、实验目的 1. 掌握图的连通性。 2. 掌…

高速公路安全新防线:护栏碰撞监测终端的应用与价值

​ ​​在现代化的高速公路管理体系中&#xff0c;安全始终放在第一位。随着道路上车辆密度的不断增加升&#xff0c;交通事故的风险也随之加剧&#xff0c;其中&#xff0c;护栏碰撞事故更是成为影响公路安全的一大隐患。为了有效减少此类事故的负面影响&#xff0c;提升应…

WebRTC笔记

一、 WebRTC的链接方式 1. 可以是浏览器之间的对等链接(全网状或完全分布式),那么数据就是在两个或多个浏览器之间流动 2. 可以是与媒体服务器的单一对等连接(集中混合式),这样的好处是可以扩展很大的会议,最大限度的减少新人加入时所需处理的工作量 二、 …

【嵌入式Linux】i.MX6ULL 复位中断服务函数的编写

文章目录 1. 复位中断服务函数0.1 禁止IRQ中断0.1.1 方式0.1.2 代码0.1.3 缩写说明0.1.4 PSTATE寄存器简介0.1.5 禁止IRQ中断的目的 1.1 关闭I/D Cache, MMU1.1.1 方式1.1.2 代码1.1.3 缩写说明1.1.4 关闭I/D Cache, MMU的目的 2.2 设置中断向量偏移2.2.1 方式2.2.2 代码2.2.3 …

卷积的通俗解释

以时间和空间两个维度分别理解卷积&#xff0c;先用文字来描述&#xff1a; 时间上&#xff0c;任何当前信号状态都是迄至当前所有信号状态的叠加&#xff1b;时间上&#xff0c;任何当前记忆状态都是迄至当前所有记忆状态的叠加&#xff1b;空间上&#xff0c;任何位置状态都…

python怎样自动提示

第一步、打开pycharm&#xff0c;如下图所示&#xff1a; 第二步、File→Power Save Mode&#xff0c;把下面如图所示的勾去掉&#xff1a; 第三步、去掉勾后&#xff0c;不再使用省电模式&#xff0c;新建一个python文件。输入单词前两个字母&#xff0c;就会自动提示了&#…

PAT B1041. 考试座位号

题目描述 每个PAT考生在参加考试时都会被分配两个座位号:一个是试机座位:另一个是考试座位。正常情况下&#xff0c;考生在入场时先得到试机座位号&#xff0c;入座进入试机状态后,系统会显示该考生的考试座位号,考试时考生需要换到考试座位就座。但有些考生迟到了&#xff0c;…

什么是空间数据

在数字孪生领域&#xff0c;需要汇聚、联接、融合地上地下、室内室外等多源异构数据&#xff0c;多源异构数据接入融合是一个复杂且关键的数据处理过程&#xff0c;它涉及将来自不同来源、具有不同格式和结构的数据进行有机整合&#xff0c;以生成一致、完整、可信且可用的数据…