【Gaze】GazBy: Gaze

编程入门 行业动态 更新时间:2024-10-08 04:34:14

【<a href=https://www.elefans.com/category/jswz/34/1762476.html style=Gaze】GazBy: Gaze"/>

【Gaze】GazBy: Gaze

GazBy: Gaze-Based BERT Model to Incorporate Human Attention in Neural Information Retrieval

Abstract

本文感兴趣的是研究是否可以利用人类注视信号来提高最先进的搜索引擎性能,以及如何将这个以人类注意力为标志的新输入信号整合到现有的神经检索模型中。在本文中,作者提出了GazBy (Gaze-based Bert model for document,relevancy),这是一种轻量级的联合模型,将人类注视估计集成到transformer模型中来预测文档相关性,将更细微的认知加工信息整合到信息检索(IR)中。我们在文本检索会议(TREC)深度学习(DL)2019年和2020年的轨道上评估了本模型。我们的实验显示了令人鼓舞的结果,并说明了使用人类注视来帮助基于转换器的神经检索器的有效和无效的切入点。随着虚拟现实(VR)和增强现实(AR)的兴起,人类的注视数据将变得更加可用。我们希望这项工作能作为在现代神经搜索引擎中使用注视信号的第一步。

1 Introduction

神经检索器应用深度神经网络来解决文档检索和段落检索等信息检索问题。神经网络有一个任务,根据文档与查询的相关性对查询-文档对进行评分。这些方法通常分为基于表示的(如DSSM和SNRM)和基于交互的神经检索器(如DRMM,KRNM和DeepTileBars)。

基于表示的神经检索器分别对查询𝑞和文档𝑑进行编码,并在稍后计算𝑞和𝑑之间的相关性得分时对它们进行交互。每个查询和每个文档都被编码为一个固定大小的嵌入向量。另一方面,基于交互的神经检索器在索引时间或查询时间中生成一个查询文档交互矩阵,并将其输入神经网络,以预测𝑞和𝑑之间的相关性得分。请注意,在基于表示的方法中,查询文档交互在检索阶段出现较晚;而在基于交互的方法中,查询-文档交互出现较早,因为它们从一开始就处理(𝑞,𝑑)对——要么从索引阶段(例如,像传统检索方法那样构建反向索引时),要么从重新排序过程的开始。

目前,几乎所有最有效的神经检索模型,包括MonoBERT和ColBERT,都使用了BERT,这是一种由transformer architecture架构预先训练的深度语言模型,用于屏蔽语言建模和下一个句子预测的任务。

BERT嵌入也被最近的神经检索器广泛应用于衍生函数中,主要是为了获得有意义的三元水平权重。在神经检索器中采用BERT表示,或直接使用或从中衍生,已成为信息检索(IR)的主要研究热点。

然而,在NLP中,在查看BERT的转换器块和层的内部时,它的注意力和转换器头的权重有时是值得怀疑的。Abnar和Zuidema已经表明,BERT的注意力头部权重“在更高的模型层中通常近似于几乎均匀的分布”。霍伦斯坦和贝伯恩的研究表明,BERT的注意力和头部权重与人类语言处理模式的相关性较差。Gao和Callan还指出,“直接走出训练前的BERT具有非最优注意结构”,他们提出在密集的检索器中短路BERT的不同变压器层的信息流。所有这些都表明,尽管这些基于BERT的神经检索取得了前所未有的成功,但它们所利用的核心元素——BERT,并不像我们想象的那么完美。

最近一个改进BERT嵌入的尝试是从另一个注意力来源——人类的注视——寻求帮助。人类注视建模过去是由使用手工制作的特征实现认知理论的模型主导的,这些模型虽然很容易解释,但通常很难在机器学习中使用。现代人类注视建模使用神经网络来预测注视注视的持续时间。

人类凝视的使用可以在计算机视觉和自然语言处理(NLP)任务。人类凝视包含了关于人类认知加工的更微妙的信息,因为它与阅读理解的相对重要性高度相关。凝视的使用已经在信息检索中中被探索过。它主要被用作预测文本显著性和理解相关性的一种方法。然而,现有的工作并没有针对预先训练过的变压器模型进行特别检索。据我们所知,人类的注视注意力还没有应用于神经检索器的文档或文章检索。

本文探索将注视信号纳入两种最有效的基于转换器的神经信息检索方法。一个用于MonoBERT,另一个用于ColBERT。通过一个轻加权的人类注视预测模型,来证明一个概念,是否可以使用人类注意力分数来提高变压器的计算注意力分数,并改进临时检索。我们提出了GazBy (Gaze-based Bert model for document,relevancy),一个联合模型,将人类注视估计集成到transformer模型来预测文档相关性,将关于认知处理的更细微的信息整合到IR中。联合模型有一个注视预测成分和一个相关性评分成分。使用GECO和Zuco凝视数据集训练本文的凝视预测模型,并在2019年文本检索会议(TREC)深度学习(DL)和2020年Track中使用MonoBERT和ColBERT对段落重新排序任务进行测试。

这项工作主要研究如何将人类注视注意力整合到基transformer的检索模型中。在这项工作中,作者广泛地探索以寻找将人类注视注意与计算上下文注意相结合的最佳方法,从而帮助进行特别检索。

本文发现,在整个检索过程中,在特定时刻纳入人类的注视注意是很重要的。实验表明,当其查询的文档交互发生时,人类的注意力应该合并到一个基于转换器的检索模型中:

  • 对于MonoBERT,它的交互操作发生在全面注意交互的早期,特别是当交互接近完成时,最好是将人类的注视预测与最后一层注意层合并;
  • 对于ColBERT,它的交互操作在计算𝑀𝑎𝑥𝑆𝑖𝑚的过程中发生得较晚,我们发现在这个计算过程中,最好将人类的注视预测合并到检索中。

本文也研究了在其神经网络结构中合并注视的其他地方,然而,它们产生的结果明显较差。例如,如果将注视注意分数纳入到ColBERT的变压器层的注意机制中,这发生在交互之前,它会显著损害系统的有效性。为什么查询-文档交互发生的地方很重要?我们认为,注视注视预测对每个标记表示的影响加权应该发生在查询和文档交互过程中,因为注视预测本身是查询和文档标记交互的另一种形式。这种交互作用通过注视预测模型的transformer层发生的。通过基于注视的人类注意来加权查询和文档token之间的交互,作者调整了注视预测模型和预先训练的转换器模型之间的交互操作,从而允许本模型在上述情况下产生有希望的结果。

综上所述,本论文有以下贡献:

(1)一种将人类注视注意力纳入基于转换器的神经检索模型的机制;

(2)在两个最先进的基于transformer的神经信息检索模型上的概念证明,显示了有希望的结果;

(3)在神经信息检索模型中合并人类注视预测的研究。

2 RELATED WORK

2.1 Neural Information Retrieval

特别检索的目的是找到查询𝑞的最佳文档𝐷,从结构上讲,它是一个涉及两个输入的任务,查询𝑞和文档𝑑。它必须在两个输入之间执行交互作用,也称为笛卡尔数学,并为这对产生一个单一的相关性分数。这种不可避免的交互作用在不同的检索算法中以不同的形式出现。在传统检索模型和基于交互的神经检索方法中,我们可以找到它作为相似度评分函数𝑠𝑐𝑜𝑟𝑒(𝑞,𝑑)(如余弦相似度、点积、神经匹配核和𝑀𝑎𝑥𝑆𝑖𝑚);𝑞和𝑑的联合操作(例如,在传统检索方法中建立反向索引,以及基于交互的神经检索方法中的神经交互);以及基于transformer的神经检索器变压器层中的“缩放点积注意”。

神经信息检索是深度神经网络在解决文档检索和段落检索等信息检索问题中的应用。这些方法可以分为基于表示的和基于交互的

基于表示的检索器使用双编码器设置,它分别对查询𝑞和文档𝑑进行编码,并在稍后计算它们之间的相似性得分时对它们进行交互。每个查询和每个文档都被编码为一个固定大小的嵌入向量。嵌入向量可以是密集的,也可以是稀疏的,它们对应于最近流行的密集检索器和稀疏检索器。ColBERT是一种基于表示的检索器。

基于交互的检索器在索引时间或查询时间中生成一个查询-文档交互矩阵,并将其输入神经网络以预测相关性得分。基于交互的检索器(包括前神经和神经)以其更好的检索效率而闻名。**MonoBERT使用交叉编码器设置,是一种基于交互的检索类型。**它采用了查询术语和文档术语之间广泛交互的全面方式。

在本文中,作者发现当交互发生时,一个关键的信息,以确定在哪里将人类注视注意力合并到基于transformer的检索模型。查询-文档交互可以出现在算法的早期,例如在传统检索方法中构建反向索引时的索引时间期间,在基于交互的神经检索模型中的早期联合操作期间,以及在MonoBERT中的所有交互期间。它也可能出现在算法中的时间较晚。例如,基于表示的神经检索方法中的相似度计算的最后一步,以及ColBERT中的𝑀𝑎𝑥𝑆𝑖𝑚算子。

2.2 Gaze and Human Attention

本工作受到人类凝视的使用以及在CV和NLP任务中获得的改进。

人类注视建模过去是由手工制作的特征实现认知理论的模型主导的,这些特征虽然容易解释,但往往很难在机器学习中使用。现代的建模方法使用神经网络来预测人类的句子处理。研究发现,与使用没有注视输入或监督的模型相比,这些注视的使用和建模可以提高机器学习模型在人类语言相关任务上的表现。

2.3 Use of Gaze in IR and Neural IR

在深度学习时代之前,凝视的使用就已经在信息检索中被探索过了。

他们根据用户在浏览器上浏览网页段的时间以及描述该网页段内容的特征来模拟用户的注意力。他们展示了在网络搜索、新闻、维基百科、购物和社交网络网页域名上检索相关搜索结果的改进。然而,他们的方法并不针对神经信息检索。

据我们所知,人类注视注意力还没有应用于神经检索模型中的文档或段落检索。

3 GAZBY: GAZE-BASED BERT MODEL FOR DOCUMENT RELEVANCY

本文提出了一种轻量级的GazBy联合模型,它将人类注视估计结合到基于transformer的检索模型中,目的是在信息检索中引入更细微的文本信息到信息检索。本文用MonoBERT和ColBERT来探索改想法,其中MonoBERT是一个交叉编码器(基于交互的检索器),在查询和文档之间的早期交互,ColBERT是一个双编码器(基于表示的检索器),在检索过程的后期执行交互。

3.1 Architecture

图1显示了GazBy的整体架构。GazBy有两个主要组成部分。第一个是注视预测模型。第二个是基于transformer的检索模型。根据基于transformer的检索器的架构,GazBy将注视预测模型与它结合起来。交叉编码器是基于transformer的检索模型,它使用单个编码器为q-d对创建嵌入,而双编码器分别将q和d嵌入。它们分别对应于基于交互的和基于表示的神经检索器。因此,本文有两种GazBy的变体:为交叉编码器(基于交互)设计的GazBy-c,为双编码器(基于表示)设计的GazBy-b。

图1中的绿色部分显示了注视预测模型的架构。参考两篇文献,BiLSTM与transformer的结合与人类注视处理模式具有最相似的预测。本文在GazBy-c和GazBy-b中使用的注视预测模型是相同的。它首先接收预处理文本中的标记,可以是查询或文档(如GazBy-b),或查询和文档的连接(如GazBy-c)。这些token被输入到一个嵌入层中,然后是一个具有128个隐藏单元的BiLSTM层和四个具有四个注意头的自注意变压器层。最后,利用全连通前馈网络(FFN)预测文本 x → \overrightarrow{x} x 中每个标记 𝑥 𝑖 𝑥_𝑖 xi​的注视得分 𝑔 ( 𝑥 𝑖 ) 𝑔(𝑥_𝑖) g(xi​):

预测的注视得分越高,注视于一个标记的时间就越长。

图1a显示了交叉编码器GazBy (GazByc)。它将查询和文档作为一个输入连接起来,并输入到注视预测模型中,以获得word的注视分数。这些注视分数然后被用来修改交叉编码器检索模型编码器层。当编码器执行多维缩放的点积注意时,它是通过用注视分数来加权注意分数来完成的。交叉编码器的主体采用了BERT大型架构,使用24个注意层,每个层有16个注意头。这个联合交叉编码器模型通过使用前馈神经网络的学习到的[CLS]来判断相关性:

其中 𝐾 𝑖 , 𝑉 𝑖 , 𝑄 𝑖 𝐾_𝑖,𝑉_𝑖,𝑄_𝑖 Ki​,Vi​,Qi​是𝐾𝑒𝑦,𝑉𝑎𝑙𝑢𝑒,𝑄𝑢𝑒𝑟𝑦表示的注意头 𝑖 𝑖 i。𝑄𝑢𝑒𝑟𝑦是注意层中的一个内部变量。此外,𝑑𝑖𝑚是每个头部中𝐾𝑒𝑦,𝑉𝑎𝑙𝑢𝑒,𝑄𝑢𝑒𝑟𝑦的第二个维度。𝐺是在 𝑛 = 𝑞 𝑙 𝑒 𝑛 + 𝑑 𝑙 𝑒 𝑛 𝑛=𝑞_{𝑙𝑒𝑛}+𝑑_{𝑙𝑒𝑛} n=qlen​+dlen​行上重复的 𝑔 ( 𝑞 , 𝑑 ) 𝑔(𝑞,𝑑) g(q,d), 𝐸 𝑙 𝐸_𝑙 El​是在 𝑙 𝑡 h 𝑙^{𝑡ℎ} lth编码器层之后获得的嵌入。 𝑊 𝐾 𝑖 , 𝑊 V 𝑖 , 𝑊 W 𝑖 𝑊^{𝐾_𝑖},𝑊^{V_𝑖},𝑊^{W_𝑖} WKi​,WVi​,WWi​是在 𝑙 𝑡 h 𝑙^{𝑡ℎ} lth编码器层映射 𝑖 𝑡 h 𝑖^{𝑡ℎ} ith注意头映射 𝐸 𝑙 − 1 𝐸_{𝑙−1} El−1​到 𝐾 𝑖 , 𝑉 𝑖 , 𝑄 𝑖 ∈ 𝑛 × 𝑑 𝑖 𝑚 𝐾_𝑖,𝑉_𝑖,𝑄_𝑖 ∈𝑛×𝑑𝑖𝑚 Ki​,Vi​,Qi​∈n×dim的学习参数张量。

图1b是GazBy (GazBy-b)的双编码器变体。它将查询和文档作为两个单独的输入发送到注视预测模型中,以获得相应的注视分数。它还将查询和文档分别发送到一个BERT大型编码器中,该编码器仅对查询或文档术语执行多头缩放的点积关注。最后,使用改进的𝑀𝑎𝑥𝑆𝑖𝑚函数计算(q,d)相关性得分,它是对每个查询项最相似的文档项的余弦相似度的加权总和,通过使用其注视得分对每个相似度进行加权:

3.2 Gaze Fixation Prediction

本文提出一个注视预测模型,目的是将注视时间估计为一个文本 x = [ 𝑥 1 , 𝑥 2 , . . . , 𝑥 𝑛 ] x=[𝑥_1,𝑥_2,...,𝑥_𝑛] x=[x1​,x2​,...,xn​]中每个token 𝑥 𝑖 𝑥_𝑖 xi​的计算分数 𝑔 ( 𝑥 ) 𝑔(𝑥) g(x)。 𝑔 ( 𝑥 ) 𝑔(𝑥) g(x)的值越大,标记 𝑥 𝑖 𝑥_𝑖 xi​的注视时间越长。

输入文本序列首先被tokenize,然后用特殊的标记填充。Wordpiece标记器用于将输入字符串 𝑥 𝑥 x分割成一个标记 𝑥 1 , 𝑥 2 , . . . , 𝑥 𝑛 𝑥_1,𝑥_2,...,𝑥_𝑛 x1​,x2​,...,xn​序列。为了与基于transfomer的检索模型兼容,在 input embeddings中添加了特殊的标记,[CLS],[SEP],[PAD],输入文本被转换为 [ C L S ] , 𝑥 1 , 𝑥 2 , . . . , 𝑥 𝑛 , [ S E P ] , [ P A D ] , . . . , [ P A D ] [CLS],𝑥_1,𝑥_2,...,𝑥_𝑛,[SEP],[PAD],...,[PAD] [CLS],x1​,x2​,...,xn​,[SEP],[PAD],...,[PAD]。

注视预测的神经网络从一个嵌入层开始。GloVe用于将每个token编码为一个300维的向量。然后,将整个嵌入的数据输入到一个BiLSTM层中,并将其传递到一个四层的四头自注意变压器层中。最后,我们将得到的嵌入输入到一个完全连接的层中,以得到每个输入token的注视预测。特殊标记是不存在的单词,没有任何关注。因此,在训练过程中,我们将所有特殊标记的ground truth labels标记为[ZERO],这就阻止了注视预测模型对它们进行评分,并夸大有意义的单词的权重。子词被标记为相同的ground truth labels注视标签,它是它的一部分。

本文的注视预测模型是在GECO和ZuCo上训练的。表1显示了这两个数据集的统计数据。它们被组合成一个单一的集合,并将其注视目标值标准化到[0,1]的范围内。它们相当小,总共有大约6000个句子。神经网络的训练和优化采用Adam进行,学习速率为0.0001。作者对该模型进行了100个epoch的训练,得到了10倍交叉验证的均方误差为0.004

3.3 Cross-Encoder GazBy (GazBy-c)

首先对每个查询文档对进行标记,并插入[CLS]和[SEP]标记: [ C L S ] + 𝑥 1 . . . 𝑥 𝑞 𝑙 𝑒 𝑛 + [ S E P ] + 𝑥 1 . . . 𝑥 𝑑 𝑙 𝑒 𝑛 + [ S E P ] [CLS]+𝑥_1...𝑥_{𝑞_{𝑙𝑒𝑛}}+[SEP]+𝑥_1...𝑥_{𝑑_{𝑙𝑒𝑛}}+[SEP] [CLS]+x1​...xqlen​​+[SEP]+x1​...xdlen​​+[SEP]。将连接的q-d对输入到注视预测模型中。

然后将这个q-d对输入 𝐿 𝐿 L总编码器层的 L − 1 L-1 L−1层中,其中每个编码器层使用多头注意,添加和归一化,以及前馈网络。到第一个编码器层的输入序列是输入token序列的Wordpiece embeddings。每个后续的编码器层接收前一个编码器层的输出作为输入。多头注意表示每个编码器层的输入嵌入在一组三个张量的几个注意头,关键张量 𝐾 𝑖 𝐾_𝑖 Ki​,值张量 𝑉 𝑖 𝑉_𝑖 Vi​和查询张量 𝑄 𝑖 𝑄_𝑖 Qi​,对第 𝑖 𝑖 i个注意头使用矩阵乘得到权重矩阵 𝑊 𝐾 𝑖 𝑊^{𝐾_𝑖} WKi​, 𝑊 V 𝑖 𝑊^{V_𝑖} WVi​, 𝑊 Q 𝑖 𝑊^{Q_𝑖} WQi​。在第一个 L − 1 L-1 L−1编码器层中发生的注意采取的形式是: 𝑆 𝑜 𝑓 𝑡 𝑚 𝑎 𝑥 ( Q × K T d i m ) × 𝑉 𝑆𝑜𝑓𝑡𝑚𝑎𝑥(\frac{Q× K^T}{\sqrt{dim}})×𝑉 Softmax(dim ​Q×KT​)×V。这里的“注意”分数是由矩阵 𝑄 × 𝐾 𝑇 𝑄×𝐾^𝑇 Q×KT组成的,它表示token 𝑖 𝑖 i在一个长度为 𝑛 𝑛 n的序列内对token 𝑗 𝑗 j的注意量。

第三,作者在最后一个编码器层中执行一个改进的多头注意。这样做是,每个token对所有其他token的注意力分数通过被关注的token的预测注视时间进行加权。在缩放点积注意中,这相当于将关键层乘以每个术语的固定时间,扩展到大小𝑑𝑖𝑚,即查询文档序列的关键层表示中的列数。新提出的注意机制是

𝑆 𝑜 𝑓 𝑡 𝑚 𝑎 𝑥 ( Q × ( K ⊙ G ) T d i m ) × 𝑉 𝑆𝑜𝑓𝑡𝑚𝑎𝑥(\frac{Q× (K\odot G)^T}{\sqrt{dim}})×𝑉 Softmax(dim ​Q×(K⊙G)T​)×V

其中,表示元素乘法为 ⊙ ⊙ ⊙,矩阵乘法 × × ×。这种缩放的注意机制确保了最重要的术语对查询-文档对得分有更大的影响。接受更多注视的单词具有更大的影响,因为 𝑛 × 𝑛 𝑛×𝑛 n×n的嵌入空间中的注意矩阵旨在展示 𝑖 𝑖 i行中的每个单词对 𝑗 𝑗 j列中的每个单词的关注程度。通过元素级将𝐾张量乘以注视 𝐺 ∈ 𝑛 × 𝑑 𝑖 𝑚 𝐺∈𝑛×𝑑𝑖𝑚 G∈n×dim,当 𝐾 𝐾 K和 𝑄 𝑄 Q张量在注意张量 𝑄 × 𝐾 𝑇 𝑄×𝐾^𝑇 Q×KT中相互作用时,作者通过第 j j j个embedding的注视分数将第 i i i个embedding缩放(映射)到第 j j j个embedding上【这也是用点乘的原因】。

除了GazBy-c的设置,作者还试图将注视加权比例点积注意纳入编码器的所有层(GazBy-c所有层),以及通过将Wordpiece embeddings 输入到第一层使用第一步获得的注视分数(GazBy-c第一层)。

最后通过最小化相关标签上的交叉熵损失来训练注视预测模型和编码器层的参数作为一个二元分类问题。

L o s s = − ∑ k ∈ R + log ⁡ ( S ( q , d ) k ) − ∑ k ∈ R − log ⁡ ( S ( q , d ) k ) Loss=-\sum_{k∈R^+}\log(S(q,d)_k)-\sum_{k∈R^-}\log(S(q,d)_k) Loss=−k∈R+∑​log(S(q,d)k​)−k∈R−∑​log(S(q,d)k​)

其中 𝑅 + 𝑅^+ R+是相关的查询和文档对, 𝑅 − 𝑅^− R−是训练数据中的无关对。 𝑆 ( 𝑞 , 𝑑 ) k 𝑆(𝑞,𝑑)_k S(q,d)k​是GazBy-c的 ( q , d ) (q,d) (q,d)对的分数。

3.4 Bi-Encoder GazBy (GazBy-b)

本文提出在查询和文档交互时,将注视预测分数纳入ColBERT中。首先,使用Wordpiece tokenizer分别对查询和文档进行tokenize,并得到两个项序列: 𝑞 1 , 𝑞 2 , . . . , 𝑞 𝑞 𝑙 𝑒 𝑛 𝑞_1,𝑞_2,...,𝑞_{𝑞_{𝑙𝑒𝑛}} q1​,q2​,...,qqlen​​和 d 1 , d 2 , . . . , d d 𝑙 𝑒 𝑛 d_1,d_2,...,d_{d_{𝑙𝑒𝑛}} d1​,d2​,...,ddlen​​。GazBy-b将[Q]添加到 input Wordpiece query tokens, [ C L S ] + [ Q ] + 𝑞 1 … 𝑞 𝑞 𝑙 𝑒 𝑛 + [ S E P ] [CLS]+[Q]+𝑞_1…𝑞_{𝑞_{𝑙𝑒𝑛}}+[SEP] [CLS]+[Q]+q1​…qqlen​​+[SEP],并将document indicator token [D]添加到文档input tokens [ C L S ] + [ D ] + 𝑑 1 . . . 𝑑 𝑑 𝑙 𝑒 𝑛 + [ S E P ] [CLS]+[D]+𝑑_1...𝑑_{𝑑_{𝑙𝑒𝑛}}+[SEP] [CLS]+[D]+d1​...ddlen​​+[SEP]。通过将BERT的[mask]标记填充查询术语,使其预定义长度为 𝑀 𝑞 𝑀_𝑞 Mq​,而不增加文档。

其次,将标记化的q和d项输入注视预测模型,获得每个term的注视预测 𝑔 ( 𝑞 1 ) , 𝑔 ( 𝑞 2 ) , . . . , 𝑔 ( 𝑞 𝑞 𝑙 𝑒 𝑛 ) 𝑔(𝑞_1),𝑔(𝑞_2),...,𝑔(𝑞_{𝑞_{𝑙𝑒𝑛}}) g(q1​),g(q2​),...,g(qqlen​​)和 𝑔 ( d 1 ) , 𝑔 ( d 2 ) , . . . , 𝑔 ( d d 𝑙 𝑒 𝑛 ) 𝑔(d_1),𝑔(d_2),...,𝑔(d_{d_{𝑙𝑒𝑛}}) g(d1​),g(d2​),...,g(ddlen​​)。

第三,在第二步的同时,将tokenize的查询和文档输入到两个独立的BERT编码器和完全连接的层中,以获得每个术语的上下文表示: q 1 → , . . . , q q l e n → \overrightarrow{q_1},...,\overrightarrow{q_{q_{len}}} q1​ ​,...,qqlen​​ ​和 d 1 → , . . . , d d l e n → \overrightarrow{d_1},...,\overrightarrow{d_{d_{len}}} d1​ ​,...,ddlen​​ ​。

第四,使用一个改进的𝑀𝑎𝑥𝑆𝑖𝑚算子来计算相关性得分 𝑆 ( 𝑞 , 𝑑 ) 𝑆(𝑞,𝑑) S(q,d):

S ( q , d ) = ∑ i q l e n g ( q i ) ⋅ max ⁡ j c o s i n e ( q i → , d j → ) ⋅ g ( d j ) S(q,d)=\sum^{q_{len}}_{i}g(q_i)·\max_{j} cosine(\overrightarrow{q_i},\overrightarrow{d_j})·g(d_j) S(q,d)=i∑qlen​​g(qi​)⋅jmax​cosine(qi​ ​,dj​ ​)⋅g(dj​)

通过最小化成对交叉熵损失来优化GazBy-b:

L o s s = − ∑ k ∈ R + log ⁡ ( S ( q , d ) k ) − ∑ k ∈ R − log ⁡ ( S ( q , d ) k ) Loss=-\sum_{k∈R^+}\log(S(q,d)_k)-\sum_{k∈R^-}\log(S(q,d)_k) Loss=−k∈R+∑​log(S(q,d)k​)−k∈R−∑​log(S(q,d)k​)

注意,当q-d互动发生时,注视分数是添加的。为了测试它是否可以在其他地方完成,本文也有一个变体,GazBy-b Last Layer,,这样它就可以将注视预测乘以最后一个编码器层的注意分数。此外作者还测试了在注意层和𝑀𝑎𝑥𝑆𝑖𝑚函数上添加注视预测分数(这种设置称为GazBy-b组合)。

4 EXPERIMENTS

4.1 Task and Datasets

TREC DL 2019-2020 Tracker中使用的文档集是基于MS MARCO的训练数据,这是微软在2016年创建的数据集。创建数据集的目的是使用具有稀疏标签的训练数据改进特别检索,模拟“真实世界”检索,其中通过用户点击日志的相关文档数量是稀疏的。MS MARCO收集了880万篇网页文章和100万条必应用户搜索量。数据集中没有任何文档被标记为无关文档,并且每个查询都与一个或多个正段落相关联。

对于二值化判断尺度的指标,我们将段落判断级别2和3映射到相关的,并将文档判断级别0和1映射到不相关的。本文使用TREC的评估脚本来计算检索到的结果上的上述指标。表2显示了实验中使用的数据集的统计数据。

本文实验集中在段落重新排序任务上。作者评估了TREC DL 2019年和2020年的段落重新排序任务上的所有基线和所提出的模型,为此,对NIST为每个查询提供的1000篇段落进行了重新排序。

4.2 Metrics

为了评估检索的有效性,本文采用了TREC DL的官方评价指标

  • Precision § at rank position 10: P = 1 Q ∑ i = 1 ∣ Q ∣ relevant documents retrieved 10 P=\frac{1}{Q}\sum_{i=1}^{|Q|}\frac{\text{relevant documents retrieved}}{10} P=Q1​∑i=1∣Q∣​10relevant documents retrieved​
  • Normalized Discounted Cumulative Gain (nDCG) at rank 10: n D C G 10 = D C G 10 I D C G 10 nDCG_{10}=\frac{DCG_{10}}{IDCG_{10}} nDCG10​=IDCG10​DCG10​​, D C G 10 = ∑ i = 1 10 2 r e l i − 1 log ⁡ 2 ( i + 1 ) DCG_{10}=\sum_{i=1}^{10}\frac{2^{rel_i-1}}{\log_2(i+1)} DCG10​=∑i=110​log2​(i+1)2reli​−1​, D C G 10 = ∑ i = 1 ∣ R E L 10 ∣ r e l i log ⁡ 2 ( i + 1 ) DCG_{10}=\sum_{i=1}^{|REL_{10}|}\frac{rel_i}{\log_2(i+1)} DCG10​=∑i=1∣REL10​∣​log2​(i+1)reli​​,其中 𝑟 𝑒 𝑙 𝑖 𝑟𝑒𝑙_𝑖 reli​是 𝑖 𝑖 i位置结果的相关性, 𝑅 𝐸 𝐿 10 𝑅𝐸𝐿_{10} REL10​表示按第10位置排序的相关文档列表。
  • Mean Average Precision (MAP): M A P = 1 Q ∑ i = 1 ∣ Q ∣ A P ( q i ) MAP=\frac{1}{Q}\sum^{|Q|}_{i=1}AP(q_i) MAP=Q1​∑i=1∣Q∣​AP(qi​)
  • Reciprocal Rank (RR): R R = 1 Q ∑ i = 1 ∣ Q ∣ 1 r a n k i RR=\frac{1}{Q}\sum^{|Q|}_{i=1}\frac{1}{rank_i} RR=Q1​∑i=1∣Q∣​ranki​1​,结果列表中第一个相关文档第一次出现的倒数,在所有测试查询中取平均值。
4.3 Experimental Setup

4.3.1 Baselines:

  • **BM25[56]:**一种传统的概率检索模型。使用具有所有默认设置的Anserini工具包来重现BM25实验
  • **MonoBERT:**一种基于BERTLarge的交叉编码器神经检索模型。使用1024个维向量将查询和文档token嵌入表示为转换器层的隐藏状态,在查询和文档输入序列中总共有512个token。transformer在每个编码器层中有16个注意头,并且对注意概率使用了0.1的dropout。
  • **ColBERT:**一种基于BERT的双编码器神经检索模型,它使用后期交互机制来提高查询时间效率,其中查询和文档嵌入分别学习,仅在检索的最后阶段通过MaxSim函数相互交互。
  • **ColBERT + tf-idf:**ColBERT的一种变体,使用tf-idf来对每个查询术语计算𝑀𝑎𝑥𝑆𝑖𝑚 scores的权重: 𝑆 ( 𝑞 , 𝑑 ) = ∑ i 𝑞 𝑙 𝑒 𝑛 𝑖 𝑑 𝑓 ( 𝑞 𝑖 ) ⋅ 𝑀 𝑎 𝑥 𝑆 𝑖 𝑚 ( 𝑞 𝑖 → , 𝑑 ) 𝑆(𝑞,𝑑)=\sum_i^{𝑞_{𝑙𝑒𝑛}}𝑖𝑑𝑓(𝑞_𝑖)·𝑀𝑎𝑥𝑆𝑖𝑚(\overrightarrow{𝑞_𝑖},𝑑) S(q,d)=∑iqlen​​idf(qi​)⋅MaxSim(qi​ ​,d)。

4.3.2 Cross-encoder GazBy variations:

  • Methods merging gaze during q-d interaction:
    • GazBy-c (or GazBy-c Last Layer): 使用基于BERT Large的MonoBERT作为baseline。
    • GazBy-c All Layers: GazBy-c的变体。它与GazBy-c最后一层是相同的,除了每个编码器层(共24个)使用注视预测来修改16个注意头的缩放点积注意,而不是只修改最后一个编码器层。
  • Methods merging gaze before q-d interaction:
    • GazBy-c First Layer: 在第一个编码器层中创建 ( q , d ) (q,d) (q,d)对之间的交互之前,它将注视预测合并到交叉编码器中。将注视模型生成的每个注视预测得分扩展到1024的维度,这样每个注视得分在扩展向量中重复1024次,创建一个 ( 𝑞 𝑙 𝑒 𝑛 + 𝑑 𝑙 𝑒 𝑛 ) × 1024 (𝑞_{𝑙𝑒𝑛}+𝑑_{𝑙𝑒𝑛})×1024 (qlen​+dlen​)×1024注视预测张量。然后使用点乘将输入Wordpiece embedding向量乘以这个张量。最后将这些嵌入输入到BERT Large中,并通过[CLS]

4.3.3 Bi-encoder GazBy variations:

  • Methods merging gaze during q-d interaction:
    • GazBy-b (or GazBy-b MaxSim): 按照ColBERT的默认设置,将查询和文档分别填充到最大长度为32和180。使用BERT Large作为编码器;下面的变化的实现细节是相同的。
  • Methods merging gaze before q-d interaction:
    • GazBy-b Last Layer: 在 ( q , d ) (q,d) (q,d)对之间进行相互作用。按元素方式将注视预测与最后一层查询和文档编码器的注意力分数相乘。这种结合类似于在“GazBy-c最后一层”中所做的事情(见等式 2).然后使用未修改的𝑀𝑎𝑥𝑆𝑖𝑚函数,使用结果查询和文档嵌入来计算相关性分数。
    • GazBy-b Combined: 测试了在注意层和𝑀𝑎𝑥𝑆𝑖𝑚函数上添加注视预测分数。作者结合了GazBy-b MaxSim和GazBy-b的最后一层。也就是在元素方式将注视预测与最后一层查询和文档编码器的注意力分数相乘,然后使用修改的𝑀𝑎𝑥𝑆𝑖𝑚函数得到相关性分数。

4.3.4 Training, Validation, and Testing

训练数据采用三元组的形式: (query, positive passage, negative passage))。这些三元组是由TREC提供的训练条件生成的。验证三元组以相同的格式提供。作者训练所有的GazBy-c模型和MonoBERT基线的4k数据训练3epoch。本模型是基于Hugging Face implementation实现的BERT的序列分类。MonoBERT checkpoint在微调之前从castorini加载,这已经在MS MARCO文档集合上进行了训练。对于每个epoch,作者使用700个开发三组的子集进行验证,以提高验证速度,在预测时选择验证精度最高的模型。我们在TREC DL列车三组集合上对所有GazBy-b模型和ColBERT基线进行了50,000步的训练,批处理大小为32。所有的GazBy-c和GazBy-b模型都使用了学习速率为 3 𝑒 − 6 3𝑒^{−6} 3e−6和Font metrics not found for font: .的Adam优化器进行训练。三个GeForce RTX NVIDIA gpu用于训练。

4.4 Main results

表3报告了官方TREC DL 2019和2020年段落重新排序任务的搜索有效性的主要实验结果。

  • GazBy-c Last Layer和GazBy-b Maxsim在cross-encoder GazBy和cross-encoder GazBy变体中性能最好。
  • 与它们自己的基线MonoBERT和ColBERT相比,它们也很好。
  • GazBy-c Last Layer在P@10、MAP和nDCG@10上比MonoBERT强1-2%,同时在TREC DL 2019数据集上保持RR的有效性。
  • 在TREC DL 2020数据集上,GazBy-c Last Layer在RR上比MonoBERT高出4.5%,但在P@10上的有效性降低了2.5%,在MAP上降低了4.7%,在nDCG@10上的有效性降低了0.7%。
  • 与2019年的ColBERT相比,GazBy-b MaxSim运行在RR上性能提高了2.0%,但在nDCG上性能降低了2.0%,在MAP上降低了4.1%,在P@10上降低了1%。对于DL2020,它在P@10上比ColBERT基线提高了2%,在nDCG@10上提高了1.2%,在RR上降低了1.2%。
  • 鉴于MonoBERT和ColBERT都是高效的检索模型,与以前的方法相比,它们显著提高了SOTA的性能,从Gazby中观察到的改进是相当令人鼓舞的。

请注意,MonoBERT和ColBERT的高性能增益依赖于大规模的预训练模型,该模型使用优越的计算能力进行了广泛的训练。相比之下,作者加在它们上面的凝视模型则相当轻。本文的注视预测模型只训练了超过6000个句子,并且注视预测模型的参数远少于BERTLarge。鉴于本文提出的方法所需要的资源有限,可用的注视训练数据有限,GazBy所取得的改进在神经信息检索方面显示了一个有前途的新方向。

4.5 Our Findings
  • GazBy的一些设置效果很差:通过在等式中执行修改后的缩放点积注意,将注视合并到每个注意层,GazBy-c All Layers显著降低了模型性能(与GazBy-c Last Layer相比)降低了96%。这种性能的下降表明,人们不能在整个交叉编码器的多个地方使用注视分数。在“GazBy-c第一层”中,我们还使用注视分数来修改q-d交互之前的字片嵌入。这种方法严重降低了“GazBy-c最后一层”的性能高达97%。
  • 对于双编码器GazBy,除了在使用修改后的𝑀𝑎𝑥𝑆𝑖𝑚操作符在查询和文档之间的交互过程中合并注视分数外,其他设置的表现也很差。在交互之前加入凝视,如表3中DL 2019的GazBy-b Last Layer,P@10性能降低25%,RR性能降低20%。在DL2020上也观察到类似的退化。GazBy-b Combined同时使用最后一层和MaxSim设置,表现更差。
  • 这些结果表明,尽管注视预测可以作为改进基于转换器的检索模型的一个有用的组件,但它们对这两个组件应该发生合并的位置很敏感。根据我们从实验中观察到的情况,注视模型和转换器模型的唯一有效的合并点是当查询-文档交互发生时。

5 CONCLUSION

本文研究了将人类注视注意力纳入现有的基于transformer的神经信息检索模型的有效方法,这些模型在很大程度上得益于计算注意力使用的最新发展。基于TREC DL 2019和2020 Track的实验,一个关键的发现是,在transformer模型中,唯一有效的人类注视注意力和计算注意力的合并点是在检索算法中发生查询-文档交互时。

本实验可以烁明,使用注视来帮助建立基于转换器的检索模型是令人鼓舞和有效的。此外,如何以及在哪里将两者结合起来对它们的联合效果有显著影响:可以将注视分数添加到注意力层中,这对MonoBERT有效,但对ColBERT不适用。

作者在目前决定该场方向的模型上进行了广泛的实验。研究了两个基于转换器的检索器,一个基于交互,一个基于表示。作者下一个直接工作将是调查我们对其他传统和非transformer神经检索器的发现,如最近的密集检索器和稀疏检索器。

作者承认其凝视数据的假设可能是不正确的。本文假设凝视数据非常适合于人类在确定查询和记录文本是否相关时应用于查询和记录文本的凝视类型,正如相关性评分中的任务一样。这种假设是有必要的。信息检索与基于信息需求的关注有关。当人类被试试图理解候选文本是否与他们的需求相关时,这种人类的注意力是人类对候选文本的注意模式。例如,一个受试者在阅读一篇文章时可能会使用基于需求的注意力来确定它是否与一个关于相关主题的问题相关。

相比之下,用于预训练模型的人类注意力数据是基于理解的:GeCo和ZuCo数据集中的受试者正在阅读以理解他们的文本。因此,用来预先训练注视预测模型的人类注意数据的类型和搜索引擎用户为确定查询文档相关性而表现出的注意类型之间是存在差异的。鉴于这一事实,我们的工作寻求成为未来努力的一个起点。随着AR/VR技术的出现,显示执行相关性评分的人类受试者注视的设备和数据集将更加可用。在未来的工作中,作者试图通过使用这些数据(例如,使用注视数据来检索神经检索器来改进GazBy),并将注视预测合并在基于非转换的模型中,以了解哪里可以最好地应用凝视。本文的发现表明,这些模型中的查询和文档之间的交互将是这些努力的一个很好的起点。

者承认其凝视数据的假设可能是不正确的。本文假设凝视数据非常适合于人类在确定查询和记录文本是否相关时应用于查询和记录文本的凝视类型,正如相关性评分中的任务一样。这种假设是有必要的。信息检索与基于信息需求的关注有关。当人类被试试图理解候选文本是否与他们的需求相关时,这种人类的注意力是人类对候选文本的注意模式。例如,一个受试者在阅读一篇文章时可能会使用基于需求的注意力来确定它是否与一个关于相关主题的问题相关。

相比之下,用于预训练模型的人类注意力数据是基于理解的:GeCo和ZuCo数据集中的受试者正在阅读以理解他们的文本。因此,用来预先训练注视预测模型的人类注意数据的类型和搜索引擎用户为确定查询文档相关性而表现出的注意类型之间是存在差异的。鉴于这一事实,我们的工作寻求成为未来努力的一个起点。随着AR/VR技术的出现,显示执行相关性评分的人类受试者注视的设备和数据集将更加可用。在未来的工作中,作者试图通过使用这些数据(例如,使用注视数据来检索神经检索器来改进GazBy),并将注视预测合并在基于非转换的模型中,以了解哪里可以最好地应用凝视。本文的发现表明,这些模型中的查询和文档之间的交互将是这些努力的一个很好的起点。

更多推荐

【Gaze】GazBy: Gaze

本文发布于:2024-02-14 07:20:03,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1762477.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:Gaze   GazBy

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!