CN117874175A - 一种基于信息瓶颈的信息检索鲁棒性方法和系统 - Google Patents
一种基于信息瓶颈的信息检索鲁棒性方法和系统 Download PDFInfo
- Publication number
- CN117874175A CN117874175A CN202410281257.2A CN202410281257A CN117874175A CN 117874175 A CN117874175 A CN 117874175A CN 202410281257 A CN202410281257 A CN 202410281257A CN 117874175 A CN117874175 A CN 117874175A
- Authority
- CN
- China
- Prior art keywords
- query
- information
- paragraph
- features
- hidden
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 50
- 239000013598 vector Substances 0.000 claims abstract description 60
- 238000012549 training Methods 0.000 claims abstract description 30
- 238000012360 testing method Methods 0.000 claims abstract description 8
- 230000006870 function Effects 0.000 claims description 54
- 238000013527 convolutional neural network Methods 0.000 claims description 14
- 238000005457 optimization Methods 0.000 claims description 10
- 230000011218 segmentation Effects 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 7
- 238000004422 calculation algorithm Methods 0.000 claims description 6
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 239000011159 matrix material Substances 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 238000006467 substitution reaction Methods 0.000 claims description 3
- 239000000470 constituent Substances 0.000 claims description 2
- 238000009795 derivation Methods 0.000 claims description 2
- 230000000717 retained effect Effects 0.000 claims description 2
- 238000002474 experimental method Methods 0.000 abstract description 2
- 238000011156 evaluation Methods 0.000 description 4
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000001914 filtration Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000010485 coping Effects 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明涉及一种基于信息瓶颈的信息检索鲁棒性方法和系统。本方法具体包括S1:使用原始查询生成带有错别字的查询;S2:将查询和段落分词为词汇单元,然后每个词汇单元被转换为预训练好的词嵌入向量;S3:使用CharacterBERT对嵌入进行编码,获得对应的特征向量;S4:将编码后的特征向量输入到IB层中,压缩特征维度和词汇数量,得到IB后的隐藏特征;S5:求出原始查询与段落的余弦相似度以及噪声查询与段落的余弦相似度;S6:利用损失函数对整体模型进行训练,获得模型的最佳参数;S7:将测试查询和段落输入到模型得到相似度分数,得到最终的排名结果。经过实验证明,本方法在面对查询中存在噪声时具有更高的鲁棒性。
Description
技术领域
本发明属于自然语言处理中的信息检索领域,具体涉及一种基于信息瓶颈隐藏特征降维的信息检索鲁棒性方法。
背景技术
近几十年来,信息检索系统对于从给定查询匹配大型语料库中的相关文档或段落具有重要意义。两阶段检索器-阅读器范式已被广泛研究,其中相关段落首先由整个语料库中的检索器进行粗略召回,然后应用阅读器更仔细地重新排列它们。由于后续阅读器性能的上限由第一阶段检索器确定,因此已经有丰富的文献来研究稀疏或密集检索器模型。稀疏检索器通常利用词频-逆文档频率(TF-IDF)或BM25(Best Matching 25)对具有稀疏表示的候选段落进行编码。尽管轻量级,但稀疏方法依赖于词汇重叠或精确匹配来识别候选者,因此无法在语义级别执行检索。随着预训练语言模型(PLM)的最新发展,密集检索模型(Dense Retrievers,DR)与稀疏模型相比,通过检索语义相关的但词汇不同的段落显着推进了检索器的有效性。通常,采用双编码器架构将输入查询和文档分别编码为低维(密集)向量。然后将生成向量的相似度用作匹配分数。这些密集检索器已被证明比基于精确匹配的方法更有效。然而,最近的研究表明,在查询中存在噪声(如拼写错误、语法错误等)时,DR模型的性能会大幅下降(即鲁棒性差)。
为了提高模型鲁棒性,之前的研究人员从输入扰动和嵌入扰动方面入手,输入扰动方法在正确查询词汇中加入噪声,嵌入扰动则是在得到正确查询的嵌入之后,将随机噪声融入到嵌入中,这两种方法虽然在一定程度上提高了模型鲁棒性,但是其与没有噪声的样本之间的差距依旧很大。
发明内容
为了减少检索目标与样本之间的差距,本发明使用信息瓶颈(InformationBottleneck, IB)来减小这一差距,该方法的隐式假设是嵌入层包含足够的信息来进行预测。信息瓶颈理论将学习过程视为一个优化问题,系统需要在保持输入数据的最小化表示形式的同时,最大化预测目标的相关信息。这就导致了一个平衡:系统需要保留足够的信息来解释数据,同时又要消除冗余和无关的信息,这一过程被称为“压缩”或“提取精华”。
将信息瓶颈用于从CharacterBERT编码器最后一层的输出中提取与任务相关的特征及词汇,信息瓶颈的输入来源也不再仅仅是[CLS],而是信息完整的查询和文档,即包含所有的查询词汇和文档词汇,这些特征经过预训练,从而能够为输入序列生成上下文表示,并使用变分推理方法计算。
经过实验表明,该模型在测试原始查询时几乎没有性能下降,并且在噪声查询中,该模型已经超越了基于输入扰动和嵌入扰动的模型。
本发明的目的是提高基于密集检索器在查询中存在拼写错误时的鲁棒性。由于用户在现实场景下进行查询是一种频繁的行为,查询语句中普遍存在各种不规范的输入也是普遍存在的,然而寻常的检索模型只是在没有噪声的数据集下训练得到的,故此,其不能很好的处理查询中存在噪声的情况,为了实现这一目标,我们利用信息瓶颈方法来提高DR模型应对查询中存在噪声时的有效性,具体实施步骤如下:
步骤S1,使用原始查询生成带有错别字的查询,即噪声查询;
步骤S2,使用字符级卷积神经网络Character-CNN对原始查询、噪声查询以及查询所对应的相关段落进行分词,得到对应的词汇单元,并将每个词汇单元转换为预训练好的词嵌入向量;
步骤S3,将得到的原始查询嵌入、噪声查询嵌入和段落嵌入分别送入密集检索模型,即DR模型,三个嵌入都使用CharacterBERT进行编码,同时,编码器在训练阶段共享参数,编码器为原始查询、噪声查询和段落分别生成密集的特征向量;
步骤S4,在CharacterBERT输出层之后插入一个信息瓶颈层,压缩CharacterBERT输出的特征向量和词汇数量,目的是仅保留与任务特定的特征与词汇,得到压缩后的隐藏特征;
步骤S5,然后求出隐藏特征之间的余弦相似度分数,包括原始查询隐藏特征与段落隐藏特征之间的余弦相似度分数,以及噪声查询隐藏特征与段落隐藏特征之间的余弦相似度分数;
步骤S6,在模型训练阶段,运用二元交叉熵损失函数、KL损失函数,并将损失函数按照一定的规则进行加权求和,再利用加权后总的损失函数进行训练,通过反向传播算法更新模型参数,以最小化损失函数;
步骤S7,将测试查询和段落集分别输入步骤S3中进行特征提取获取查询及段落的特征向量,再将S3所获得的查询特征与段落特征送入训练好的DR模型进行编码并压缩编码后的特征向量得到隐藏特征,使用隐藏特征求出查询与段落的余弦相似度,每个查询会保留相似度分数最高的若干个段落,将这些段落进行排序获得最终的检索结果。
进一步的,步骤S1中生成带有错别字的查询的方式包括随机增加、删除、替换字符,删除停用词,替换单词顺序,使用同义词替换原有单词。
进一步的,步骤S2的具体实现方式如下:
使用CharacterBERT进行分词操作,它使用Character-CNN模块来构建标记的字符嵌入,CharacterBERT将输入的单词首先分割成其组成的字符,然后每个字符从字符嵌入矩阵中检索对应的字符嵌入,字符嵌入随后被输入到CNN堆栈中,CNN层的输出被聚合并投影为每个标记的单个向量表示,这些新的标记表示作为上下文无关的词嵌入,然后与位置和段嵌入相结合得到词嵌入向量。
进一步的,步骤S3中CharacterBERT编码的过程如下;
,
其中,和/>是原始查询q和段落p编码后的特征向量,q'表示噪声查询,等式右边的/>为噪声查询编码后的特征向量。
进一步的,步骤S4中信息瓶颈层的处理流程如下:
步骤S41,将输入特征表示为X,输出表示为Y,将X 和Y的联合分布表示为P (X,Y),信息瓶颈层的目的是学习从X到压缩隐藏特征T 的分布,用于优化的信息瓶颈目标如下:
其中表示互信息,上述优化目标解释为:压缩输入X给出的所有信息,同时仍然为DR模型保持足够的知识,给出正确的预测结果Y,通过找到/>的最小值来实现,在等式中,参数β控制从输入X中提取的所有信息中保留多少信息,通过增加β,缩小颈部,从而使得X传递到隐藏特征T的信息更少。
进一步的,步骤S5中原始查询q和段落p对应的隐藏特征之间的余弦相似度是使用点积定义:
其中,表示原始查询q编码后的特征向量经过压缩后得到的隐藏特征,/>表示段落p编码后的特征向量经过压缩后得到的隐藏特征。
进一步的,KL损失函数的计算方式如下:
对训练查询集Q中的每个查询q应用步骤S1中的错别字生成器生成带有拼写错误的查询q',共享与原始查询q相关联的候选段落列表/>,m表示候选段落的个数;然后,/>和任何段落/>之间的相似度得分计算为/>;类似地,为q'计算,即q'与任何段落/>之间的相似度得分,然后通过 Softmax对这些分数进行归一化:
其中,和/>为归一化后的分数,训练的目标是最小化从带有错字的查询q'获得的分数分布与没有错字的相应查询q获得的分数分布之间的差异,为此,最小化KL损失函数:
。
进一步的,二元交叉熵损失函数的计算公式如下:
每个查询的候选段落集平均包含一个正段落p+和一组负段落/>。
进一步的,加权后总的损失函数如下:
给定一个输入X和输出Y,通过最小化信息瓶颈层的优化目标,从X中获取特定的隐藏特征T,这些特征仅包含有助于最终预测Y的信息,信息瓶颈层过滤掉从输入X中与任务无关的信息,并获得所需的T,为了最小化信息瓶颈层的优化目标,此处最大化互信息,由于最大化/>的目的是强制T包含足够的信息用于DR模型的预测,选择最小化原始任务的损失函数来近似/>的最大化,故此最小化交叉熵函数/>;
互信息通过分布/>和/>之间的KL距离/>来计算,如下所示:
表示输入X的数学期望,p(x,t)表示的是联合概率分布,其中x和t分别表示输入变量和隐藏特征,p(t|x)表示在给定输入x的情况下,隐藏特征t的条件概率,其中X和T是矩阵,x和t是矩阵中的任意一个变量值;为了计算/>和/>之间的KL散度,P (T|X)项根据经验采样,扩展上式以获得以下等式:
其中T的边际分布为,将p(t)替换为变分近似,它是均值/>和标准差/>的高斯分布,由于KL散度被定义为非负的,这意味着/>,推导其下上限:
Q(T)是P(T)的近似,指的是高斯分布;最小化上式中导出的的上限,通过调整/>中的参数来实现这一点,以最小化/>和/>之间的KL散度,这将降低/>的上限,结合/>的优化目标,最终损失函数为:
。
本发明还提供一种基于信息瓶颈的信息检索鲁棒性系统,包括以下模块:
噪声查询生成模块,用于使用原始查询生成带有错别字的查询,即噪声查询;
词嵌入向量生成模块,用于使用字符级卷积神经网络Character-CNN对原始查询、噪声查询以及查询所对应的相关段落进行分词,得到对应的词汇单元,并将每个词汇单元转换为预训练好的词嵌入向量;
特征向量生成模块,用于将得到的原始查询嵌入、噪声查询嵌入和段落嵌入分别送入密集检索模型模型,即DR模型,三个嵌入都使用CharacterBERT进行编码,同时,编码器在训练阶段共享参数,编码器为原始查询、噪声查询和段落分别生成密集的特征向量;
隐藏特征获取模块,用于在CharacterBERT输出层之后插入一个信息瓶颈层,压缩CharacterBERT输出的特征向量和词汇数量,目的是仅保留与任务特定的特征与词汇,得到压缩后的隐藏特征;
余弦相似度分数计算模块,用于求出隐藏特征之间的余弦相似度分数,包括原始查询隐藏特征与段落隐藏特征之间的余弦相似度分数,以及噪声查询隐藏特征与段落隐藏特征之间的余弦相似度分数;
模型训练模块,用于在模型训练阶段,运用二元交叉熵损失函数、KL损失函数,并将损失函数按照一定的规则进行加权求和,再利用加权后总的损失函数进行训练,通过反向传播算法更新模型参数,以最小化损失函数;
检索结果输出模块,用于将测试查询和段落集分别输入特征向量生成模块中进行特征提取获取查询及段落的特征向量,再将获得的查询特征与段落特征送入训练好的DR模型进行编码并压缩编码后的特征向量得到隐藏特征,使用隐藏特征求出查询与段落的余弦相似度,每个查询会保留相似度分数最高的若干个段落,将这些段落进行排序获得最终的检索结果。
本发明提出了一种基于信息瓶颈提高检索模型鲁棒性的方法,通过在DR输出层之后插入信息瓶颈层(IB层),该方法可以仅保留与任务特定的特征,利用信息瓶颈层在降低保留信息和模型预测性能之间取得权衡,这使得模型更关注于鲁棒特征,从而提高模型鲁棒性。
将信息瓶颈技术引入到信息检索模型中以解决查询中存在拼写错误从而带来的模型准确率降低的影响,之前应对查询中的拼写错误大多都是单方面的,然而在本研究中,我们仅使用信息瓶颈就为模型提供了两种扰动方式,缩短查询长度的输入扰动,降维隐藏特征的嵌入扰动,更丰富的扰动意味着模型可以容忍更多样的查询变体,具有更强的鲁棒性。
附图说明
图1为本发明的实施流程图。
图2为本发明的实施模型图。
具体实施方式
应当理解,此处所描述的具体实施例仅供参考,旨在说明本发明的实施方式,但不应被视为对本发明范围的限定。其他等效的实施方式和变化也应被视为包含在本发明的保护范围内。
本实例提供一种基于信息瓶颈隐藏特征降维的信息检索鲁棒性方法,具体实施步骤如下:
步骤S1,使用原始查询生成带有错别字的查询(也称噪声查询),其生成方式包括随机增加、删除、替换字符,删除停用词,替换单词顺序,使用同义词替换原有单词;
步骤S2,使用字符级卷积神经网络(Character-CNN)对原始查询、噪声查询以及查询所对应的相关段落进行分词,得到对应的词汇单元,并将每个词汇单元转换为预训练好的词嵌入向量;
步骤S3,将得到的原始查询嵌入、噪声查询嵌入和段落嵌入分别送入DR模型,三个嵌入都使用CharacterBERT进行编码,同时,编码器在训练阶段共享参数,编码器会为原始查询、噪声查询和段落分别生成密集的特征向量;
密集检索模型(Dense Retrievers,DR)由两个并行的CharacterBERT深度语言模型构成,用以编码原始查询、噪声查询和段落,其中原始查询和噪声查询共享一个编码器,两个编码器共享参数。
步骤S4,信息瓶颈主要在CharacterBERT输出层之后插入一个信息瓶颈层,压缩CharacterBERT输出的特征向量和词汇数量,目的是仅保留与任务特定的特征与词汇;
信息瓶颈层由一个维度可变的神经网络和一个采样器构成,神经网络将CharacterBERT输出的特征X缩放至两倍的信息瓶颈层输出的维度,由采样器得到X的均值和方差,并根据均值和方差进行经验采样得到P(T|X)的分布。
具体而言,信息瓶颈首先优化目标:通过最小化信息瓶颈目标函数来过滤出非鲁棒特征,信息瓶颈目标函数权衡了保留信息最小化与模型预测性能之间的权衡,再提取鲁棒特征,信息瓶颈层通过最小化IB目标函数,过滤出输入X中与目标任务无关的信息,并获得所需的鲁棒特征T,最后计算变分推断上界,由于原始的IB目标函数难以优化,因此通过使用变分推断方法计算Kullback-Leibler(KL)散度上界,从而最小化IB目标函数,得到压缩后的隐藏特征;
步骤S5,然后求出隐藏特征之间的余弦相似度分数(原始查询与段落以及噪声查询与段落);
步骤S6,在模型训练阶段,运用二元交叉熵损失函数、KL损失函数,并将多种损失按照一定的规则进行加权和,再利用加权后的总的损失函数进行训练,从而通过反向传播算法更新模型参数,以最小化损失函数;
步骤S7,将测试查询和段落集分别输入步骤S3中进行特征提取获取查询及段落的特征向量,再将S3所获得查询特征与段落特征送入训练好的DR模型进行编码并压缩编码后的特征向量得到隐藏特征,使用隐藏特征求出查询与段落的余弦相似度,每个查询会保留相似度分数最高的1000个段落,将这些段落进行排序获得最终的检索结果。
在本实例中,步骤S1中所述的生成拼写错误的查询主要有以下几种方法:
步骤S11,一种是使用字符级别的错误生成器:这些错误生成器会在查询中随机插入、删除、替换或交换字符,以模拟用户在查询中可能出现的拼写错误,这些错误生成器包括RandInsert、RandDelete、RandSub、SwapNeighbor和 SwapAdjacent,它们是来自Python框架TextAttack的五个库函数;
步骤S12,另一种是基于词汇表的错误生成:这种方法会在查询中替换词汇表中的词语,以模拟用户在查询中可能使用的不正确的词汇,这种方法可以生成更自然的拼写错误,但可能不如字符级别的错误生成器准确地模拟实际拼写错误。
在本实例中,步骤S2所描述的将原始查询、噪声查询以及段落分词以及转化为对应的嵌入的具体实现方式如下:
步骤S21,由于BERT-base的分词操作主要依赖于其内置的WordPiece分词器,WordPiece分词器将输入的单词分割成多个子标记,这些子标记在训练过程中被学习和优化,然而,当输入包含错误拼写的单词时,WordPiece分词器可能会对其进行不同的分割,从而导致不同的输入标记分布,进而影响下游的搜索任务,为了解决这个问题,我们使用CharacterBERT(CharacterBERT由Character-CNN和BERT组合而成,用于构建字符嵌入,在CharacterBERT中,标准BERT的WordPiece 分词器被Character-CNN模块替换)进行分词操作,它使用 Character-CNN模块来构建标记的字符嵌入,从而避免了WordPiece分词器对错误拼写的敏感性,Character-CNN将输入的单词首先分割成其组成的字符,然后每个字符从字符嵌入矩阵中检索对应的字符嵌入,字符嵌入随后被输入到CNN堆栈中,CNN层的输出被聚合并投影为每个标记的单个向量表示,这些新的标记表示可以作为上下文无关的词嵌入,然后与位置和段嵌入相结合,得到输入句子的嵌入矩阵,之后输入到步骤S3中的BERT编码器中;
在本实例中,的具体处理过程如下:
,
其中,和/>是原始查询q和段落p的编码后的特征向量,q'表示噪声查询样本,等式右边的/>为编码后的特征向量。请注意,对双编码器DR架构的依赖意味着段落可以在索引处离线编码,并且在查询时只需要编码,从而保留了DR模型的效率优势。
在本实例中,步骤S4中信息瓶颈层的处理流程如下:
步骤S41,将输入特征表示为X,可以是查询或段落,输出表示为Y,将X 和Y的联合分布表示为P (X, Y),信息瓶颈的目的是学习从X到压缩隐藏特征T 的分布,用于优化的信息瓶颈目标如下:
其中表示互信息,优化信息瓶颈目标方程的直观解释是,压缩输入X给出的所有信息,同时仍然为模型保持足够的知识,给出正确的预测结果Y,这可以通过找到/>的最小值来实现,在等式中,参数β控制从输入X中提取的所有信息中保留多少信息,通过增加β,可以缩小“颈部”,从而使得X传递到隐藏特征T的信息更少。
在本实例中,对于步骤S5中提到的相似度的计算,具体操作如下:
步骤S51,通过近似最近邻 (ANN) 搜索构建排名结果,其中原始查询q和段落p对应的隐藏特征之间的相似度是使用点积定义的:
其中,表示原始查询q编码后的特征向量经过压缩后得到的隐藏特征,/>表示段落p编码后的特征向量经过压缩后得到的隐藏特征,常规的遍历整个候选集合的检索方式时间复杂度过高(通常为O(n)),故采用ANN方法将候选集合划分为二叉树的结构,降低检索的时间复杂度(可以降低至O(ln(n)))。
在本实例中,步骤S6中描述的损失函数,具体如下:
步骤S61,密集检索器在没有拼写错误的查询上比在有拼写错误的查询上具有更高的有效性,这意味着如果查询本身不包含拼写错误,密集检索器可以有效地“理解”模型并编码查询,因此在相关性估计方面表现更好,为了提高密集检索器对带有拼写错误的查询的有效性,使其能够从相应查询中学习到的密集检索器知识,而无需拼写错误,具体来说,对训练查询集Q中的每个查询q应用步骤S1中的错别字生成器生成带有拼写错误的查询q',共享与原始查询q相关联的候选段落列表/>, m表示候选段落的个数;然后,/>和任何段落/>之间的相似度得分可以计算为/>;类似地,可以为q’计算/>。然后通过 Softmax对这些分数进行归一化:
训练的目标是最小化从带有错字的查询q'获得的分数分布与没有错字的相应查询q获得的分数分布之间的差异,为此,最小化KL散度损失:
步骤S62,在步骤S61中所述的KL散度损失本身不提供任何相关性信号,它只减少原始查询获得的分数与带有拼写错误查询之间的差异,因此,还需提供与查询相关的标签来监督DR学习过程,使其能够学习查询和段落之间的相关性关系,MS MARCO数据集的每个查询的候选段落集平均包含一个正段落p+和一组负段落/>;这些标记的段落用于训练有监督的对比交叉熵损失:
步骤S63,利用信息瓶颈方法来处理DR模型输出的“非鲁棒特征”,并且只从模型输入中保留“鲁棒特征”,由于“鲁棒特征”有助于模型的预测,因此它们包含输入序列的语义信息,通过在CharacterBERT输出后插入IB层,利用预训练模型提取上下文特征的能力,防止信息压缩后“鲁棒特征”可能的损失,具体操作如下:
给定一个输入X和输出Y,通过最小化IB目标,从X中获取特定的隐藏特征T,这些特征仅包含有助于最终预测Y的信息,IB层过滤掉从输入X中与任务无关的信息,并获得所需的T,为了最小化IB目标,此处最大化互信息,由于最大化/>的目的是强制T包含足够的信息用于模型的预测,选择最小化原始任务的损失函数来近似/>的最大化,故此最小化交叉熵函数/>,互信息/>可以通过/>和/>分布之间的KL距离/>来计算,如下所示:
表示输入X的数学期望,p(x,t)表示的是联合概率分布,其中x和t分别表示输入变量和隐藏特征,p(t|x)表示在给定输入x的情况下,隐藏特征t的条件概率,其中X和T是矩阵,x和t是矩阵中的任意一个值。P(t)为隐藏特征的的概率,因为其难以估计,所以使用高斯分布进行近似。
为了计算和/>之间的KL散度,P (T|X)项可以根据经验采样,但是,很难估计P (T)项,为了解决这一挑战,我们扩展了上式以获得以下等式:
其中T的边际分布为,将p(t)替换为变分近似/>,它是均值/>和标准差/>的高斯分布,N表示高斯分布,由于KL散度被定义为非负的,这意味着/>,推导其下上限:
其中,表示KL距离,Q(T)是P(T)的近似,指的是高斯分布;减少X和T之间的互信息,过滤掉更多与任务无关的信息,这有助于保留更稳健的特征以进行最终预测,为了在实践中实现这一目标,最小化上式中导出的/>的上限,通过调整/>中的参数来实现这一点,以最小化/>和/>之间的KL散度,这将降低/>的上限,结合/>的优化目标,最终损失函数为:
通过使用损失函数来优化DR模型,该方法能够过滤掉所有输入中检索任务的非鲁棒特征。
本发明实施例还提供一种基于信息瓶颈的信息检索鲁棒性系统,包括以下模块:
噪声查询生成模块,用于使用原始查询生成带有错别字的查询,即噪声查询;
词嵌入向量生成模块,用于使用字符级卷积神经网络Character-CNN对原始查询、噪声查询以及查询所对应的相关段落进行分词,得到对应的词汇单元,并将每个词汇单元转换为预训练好的词嵌入向量;
特征向量生成模块,用于将得到的原始查询嵌入、噪声查询嵌入和段落嵌入分别送入密集检索模型模型,即DR模型,三个嵌入都使用CharacterBERT进行编码,同时,编码器在训练阶段共享参数,编码器为原始查询、噪声查询和段落分别生成密集的特征向量;
隐藏特征获取模块,用于在CharacterBERT输出层之后插入一个信息瓶颈层,压缩CharacterBERT输出的特征向量和词汇数量,目的是仅保留与任务特定的特征与词汇,得到压缩后的隐藏特征;
余弦相似度分数计算模块,用于求出隐藏特征之间的余弦相似度分数,包括原始查询隐藏特征与段落隐藏特征之间的余弦相似度分数,以及噪声查询隐藏特征与段落隐藏特征之间的余弦相似度分数;
模型训练模块,用于在模型训练阶段,运用二元交叉熵损失函数、KL损失函数,并将损失函数按照一定的规则进行加权求和,再利用加权后总的损失函数进行训练,通过反向传播算法更新模型参数,以最小化损失函数;
检索结果输出模块,用于将测试查询和段落集分别输入特征向量生成模块中进行特征提取获取查询及段落的特征向量,再将获得的查询特征与段落特征送入训练好的DR模型进行编码并压缩编码后的特征向量得到隐藏特征,使用隐藏特征求出查询与段落的余弦相似度,每个查询会保留相似度分数最高的若干个段落,将这些段落进行排序获得最终的检索结果。
各模块的具体实现方式与各步骤相同,本发明不予撰述。
本文所提出的方法采用三个数据集来评估,这些数据集包括:MS MARCO段落排名数据集、TREC深度学习段落检索任务2019(DL 2019)和2020(DL 2020)的公开数据集。所有数据集都使用MS MARCO发布的8800万个查询-段落对进行训练,但是在使用的查询方面有所不同。MS MARCO的开发集包含6,980个查询,每个查询平均一个相关段落。DL2019和DL2020包含43和54个判断查询(来自MS MARCO开发集),但相关性评估更完整:平均分别判断 215.3 和 210.9 个段落(判断它们是否与查询相关)。
为了评估密集检索器的排名有效性,使用每个数据集的创建者最初使用的指标进行评估。对于MS MARCO数据集,使用前10个候选文档的平均倒数排名(MRR@10)以及召回率为1,000 个文档的排名(R@1000)。对于TREC DL 2019和 2020,使用前10个候选文档的归一化折扣累积增益(nDCG@10)和平均倒数排名(MAP)进行评估。
采用以下技术与本发明方法IBDR进行比较,包括原始的DR模型(CharacterBERT-DR),采用数据增强训练的DR模型(CharacterBERT-DR+Aug)以及使用自教学的DR模型(CharacterBERT-DR+ST)。为了公平起见,所有模型都使用CharacterBERT作为编码器进行训练。
如下表所示,IBDR模型在所有数据集上的原始样本准确度几乎没有性能下降。并在噪声样本中超越了其他基线模型。这意味着即使添加了信息瓶颈层,所提出的方法仍然确保足够的信息流过模型信息瓶颈以做出准确的预测,其预测结果还具有很好的鲁棒性。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种基于信息瓶颈的信息检索鲁棒性方法,其特征在于,包括以下步骤:
步骤S1,使用原始查询生成带有错别字的查询,即噪声查询;
步骤S2,使用字符级卷积神经网络Character-CNN对原始查询、噪声查询以及查询所对应的相关段落进行分词,得到对应的词汇单元,并将每个词汇单元转换为预训练好的词嵌入向量;
步骤S3,将得到的原始查询嵌入、噪声查询嵌入和段落嵌入分别送入密集检索模型模型,即DR模型,三个嵌入都使用CharacterBERT进行编码,同时,编码器在训练阶段共享参数,编码器为原始查询、噪声查询和段落分别生成密集的特征向量;
步骤S4,在CharacterBERT输出层之后插入一个信息瓶颈层,压缩CharacterBERT输出的特征向量和词汇数量,目的是仅保留与任务特定的特征与词汇,得到压缩后的隐藏特征;
步骤S5,然后求出隐藏特征之间的余弦相似度分数,包括原始查询隐藏特征与段落隐藏特征之间的余弦相似度分数,以及噪声查询隐藏特征与段落隐藏特征之间的余弦相似度分数;
步骤S6,在模型训练阶段,运用二元交叉熵损失函数、KL损失函数,并将损失函数按照一定的规则进行加权求和,再利用加权后总的损失函数进行训练,通过反向传播算法更新模型参数,以最小化损失函数;
步骤S7,将测试查询和段落集分别输入步骤S3中进行特征提取获取查询及段落的特征向量,再将S3所获得的查询特征与段落特征送入训练好的DR模型进行编码并压缩编码后的特征向量得到隐藏特征,使用隐藏特征求出查询与段落的余弦相似度,每个查询会保留相似度分数最高的若干个段落,将这些段落进行排序获得最终的检索结果。
2.如权利要求1所述的一种基于信息瓶颈的信息检索鲁棒性方法,其特征在于:步骤S1中生成带有错别字的查询的方式包括随机增加、删除、替换字符,删除停用词,替换单词顺序,使用同义词替换原有单词。
3.如权利要求1所述的一种基于信息瓶颈的信息检索鲁棒性方法,其特征在于:步骤S2的具体实现方式如下:
使用CharacterBERT进行分词操作,它使用Character-CNN模块来构建标记的字符嵌入,CharacterBERT将输入的单词首先分割成其组成的字符,然后每个字符从字符嵌入矩阵中检索对应的字符嵌入,字符嵌入随后被输入到CNN堆栈中,CNN层的输出被聚合并投影为每个标记的单个向量表示,这些新的标记表示作为上下文无关的词嵌入,然后与位置和段嵌入相结合得到词嵌入向量。
4.如权利要求1所述的一种基于信息瓶颈的信息检索鲁棒性方法,其特征在于:步骤S3中CharacterBERT编码的过程如下;
;
其中,和/>是原始查询q和段落p编码后的特征向量,q'表示噪声查询,等式右边的/>为噪声查询编码后的特征向量。
5.如权利要求1所述的一种基于信息瓶颈的信息检索鲁棒性方法,其特征在于:步骤S4中信息瓶颈层的处理流程如下:
步骤S41,将输入特征表示为X,输出表示为Y,将X 和Y的联合分布表示为P (X, Y),信息瓶颈层的目的是学习从X到压缩隐藏特征T 的分布,用于优化的信息瓶颈目标如下:
;
其中表示互信息,上述优化目标解释为:压缩输入X给出的所有信息,同时仍然为DR模型保持足够的知识,给出正确的预测结果Y,通过找到/>的最小值来实现,在等式中,参数β控制从输入X中提取的所有信息中保留多少信息,通过增加β,缩小颈部,从而使得X传递到隐藏特征T的信息更少。
6.如权利要求1所述的一种基于信息瓶颈的信息检索鲁棒性方法,其特征在于:步骤S5中原始查询q和段落p对应的隐藏特征之间的余弦相似度是使用点积定义:
;
其中,表示原始查询q编码后的特征向量经过压缩后得到的隐藏特征,/>表示段落p编码后的特征向量经过压缩后得到的隐藏特征。
7.如权利要求1所述的基于信息瓶颈隐藏特征降维的信息检索鲁棒性方法,其特征在于:KL损失函数的计算方式如下:
对训练查询集Q中的每个查询q应用步骤S1中的错别字生成器生成带有拼写错误的查询q',共享与原始查询q相关联的候选段落列表/>,m表示候选段落的个数;然后,/>和任何段落/>之间的相似度得分计算为/>;类似地,为q'计算,即q'与任何段落/>之间的相似度得分,然后通过 Softmax对这些分数进行归一化:
;
其中,和/>为归一化后的分数,训练的目标是最小化从带有错字的查询q'获得的分数分布与没有错字的相应查询q获得的分数分布之间的差异,为此,最小化KL损失函数:
。
8.如权利要求7所述的基于信息瓶颈隐藏特征降维的信息检索鲁棒性方法,其特征在于:二元交叉熵损失函数的计算公式如下:
;
每个查询的候选段落集平均包含一个正段落p+和一组负段落/>。
9.如权利要求8所述的基于信息瓶颈隐藏特征降维的信息检索鲁棒性方法,其特征在于:加权后总的损失函数如下:
给定一个输入X和输出Y,通过最小化信息瓶颈层的优化目标,从X中获取特定的隐藏特征T,这些特征仅包含有助于最终预测Y的信息,信息瓶颈层过滤掉从输入X中与任务无关的信息,并获得所需的T,为了最小化信息瓶颈层的优化目标,此处最大化互信息,由于最大化/>的目的是强制T包含足够的信息用于DR模型的预测,选择最小化原始任务的损失函数来近似/>的最大化,故此最小化交叉熵函数/>;
互信息通过分布/>和/>之间的KL距离/>来计算,如下所示:
;
表示输入X的数学期望,p(x,t)表示的是联合概率分布,其中x和t分别表示输入变量和隐藏特征,p(t|x)表示在给定输入x的情况下,隐藏特征t的条件概率,其中X和T是矩阵,x和t是矩阵中的任意一个变量值;为了计算/>和/>之间的KL散度,P (T|X)项根据经验采样,扩展上式以获得以下等式:
;
其中T的边际分布为,将p(t)替换为变分近似/>,它是均值/>和标准差/>的高斯分布,由于KL散度被定义为非负的,这意味着,推导其下上限:
;
Q(T)是P(T)的近似,指的是高斯分布;最小化上式中导出的的上限,通过调整中的参数来实现这一点,以最小化/>和/>之间的KL散度,这将降低/>的上限,结合/>的优化目标,最终损失函数为:
。
10.一种基于信息瓶颈的信息检索鲁棒性系统,其特征在于,包括以下模块:
噪声查询生成模块,用于使用原始查询生成带有错别字的查询,即噪声查询;
词嵌入向量生成模块,用于使用字符级卷积神经网络Character-CNN对原始查询、噪声查询以及查询所对应的相关段落进行分词,得到对应的词汇单元,并将每个词汇单元转换为预训练好的词嵌入向量;
特征向量生成模块,用于将得到的原始查询嵌入、噪声查询嵌入和段落嵌入分别送入密集检索模型模型,即DR模型,三个嵌入都使用CharacterBERT进行编码,同时,编码器在训练阶段共享参数,编码器为原始查询、噪声查询和段落分别生成密集的特征向量;
隐藏特征获取模块,用于在CharacterBERT输出层之后插入一个信息瓶颈层,压缩CharacterBERT输出的特征向量和词汇数量,目的是仅保留与任务特定的特征与词汇,得到压缩后的隐藏特征;
余弦相似度分数计算模块,用于求出隐藏特征之间的余弦相似度分数,包括原始查询隐藏特征与段落隐藏特征之间的余弦相似度分数,以及噪声查询隐藏特征与段落隐藏特征之间的余弦相似度分数;
模型训练模块,用于在模型训练阶段,运用二元交叉熵损失函数、KL损失函数,并将损失函数按照一定的规则进行加权求和,再利用加权后总的损失函数进行训练,通过反向传播算法更新模型参数,以最小化损失函数;
检索结果输出模块,用于将测试查询和段落集分别输入特征向量生成模块中进行特征提取获取查询及段落的特征向量,再将获得的查询特征与段落特征送入训练好的DR模型进行编码并压缩编码后的特征向量得到隐藏特征,使用隐藏特征求出查询与段落的余弦相似度,每个查询会保留相似度分数最高的若干个段落,将这些段落进行排序获得最终的检索结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410281257.2A CN117874175B (zh) | 2024-03-12 | 2024-03-12 | 一种基于信息瓶颈的信息检索方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410281257.2A CN117874175B (zh) | 2024-03-12 | 2024-03-12 | 一种基于信息瓶颈的信息检索方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117874175A true CN117874175A (zh) | 2024-04-12 |
CN117874175B CN117874175B (zh) | 2024-06-04 |
Family
ID=90583402
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410281257.2A Active CN117874175B (zh) | 2024-03-12 | 2024-03-12 | 一种基于信息瓶颈的信息检索方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117874175B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309971A (zh) * | 2020-01-19 | 2020-06-19 | 浙江工商大学 | 一种基于多级编码的文本到视频的跨模态检索方法 |
CN112966096A (zh) * | 2021-04-07 | 2021-06-15 | 重庆大学 | 一种基于多任务学习的云服务发现方法 |
CN113806471A (zh) * | 2020-06-17 | 2021-12-17 | 广东博智林机器人有限公司 | 文本匹配方法、装置、电子设备及存储介质 |
CN115329116A (zh) * | 2022-07-27 | 2022-11-11 | 青岛图灵科技有限公司 | 一种基于多层特征融合的图像检索方法 |
CN116108156A (zh) * | 2023-04-07 | 2023-05-12 | 四川大学 | 一种基于循环关联鲁棒学习的主题法条检索方法 |
CN116796749A (zh) * | 2023-06-29 | 2023-09-22 | 安徽医科大学 | 医学命名实体识别鲁棒性增强方法及系统 |
CN117076653A (zh) * | 2023-10-17 | 2023-11-17 | 安徽农业大学 | 基于思维链及可视化提升上下文学习知识库问答方法 |
US20240004880A1 (en) * | 2022-06-29 | 2024-01-04 | Rakuten Group, Inc. | Data augmentation system, data augmentation method, and information storage medium |
-
2024
- 2024-03-12 CN CN202410281257.2A patent/CN117874175B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111309971A (zh) * | 2020-01-19 | 2020-06-19 | 浙江工商大学 | 一种基于多级编码的文本到视频的跨模态检索方法 |
CN113806471A (zh) * | 2020-06-17 | 2021-12-17 | 广东博智林机器人有限公司 | 文本匹配方法、装置、电子设备及存储介质 |
CN112966096A (zh) * | 2021-04-07 | 2021-06-15 | 重庆大学 | 一种基于多任务学习的云服务发现方法 |
US20240004880A1 (en) * | 2022-06-29 | 2024-01-04 | Rakuten Group, Inc. | Data augmentation system, data augmentation method, and information storage medium |
CN115329116A (zh) * | 2022-07-27 | 2022-11-11 | 青岛图灵科技有限公司 | 一种基于多层特征融合的图像检索方法 |
CN116108156A (zh) * | 2023-04-07 | 2023-05-12 | 四川大学 | 一种基于循环关联鲁棒学习的主题法条检索方法 |
CN116796749A (zh) * | 2023-06-29 | 2023-09-22 | 安徽医科大学 | 医学命名实体识别鲁棒性增强方法及系统 |
CN117076653A (zh) * | 2023-10-17 | 2023-11-17 | 安徽农业大学 | 基于思维链及可视化提升上下文学习知识库问答方法 |
Non-Patent Citations (6)
Title |
---|
SHENGYAO ZHUANG: "CharacterBERT and Self-Teaching for Improving the Robustness of Dense Retrievers on Queries with Typos", ARXIV, 26 April 2022 (2022-04-26) * |
刘军平 等: "基于最优传输的密集增强文档检索研究", 长江信息通信, 15 September 2023 (2023-09-15) * |
张玉来;李良荣;: "一种改进的DNN瓶颈特征提取方法", 通信技术, no. 03, 10 March 2019 (2019-03-10) * |
李文彪: "基于神经网络模型的文本可读性评估研究", 信息科技, 15 February 2024 (2024-02-15) * |
王亚鸽;康晓东;郭军;李博;张华丽;刘汉卿;: "密集网络图像哈希检索", 中国图象图形学报, no. 05, 16 May 2020 (2020-05-16) * |
菜菜弱鸡: "InfoBERT:从信息瓶颈视角提升文本对抗鲁棒性", Retrieved from the Internet <URL:https://zhuanlan.zhihu.com/p/687392131> * |
Also Published As
Publication number | Publication date |
---|---|
CN117874175B (zh) | 2024-06-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110298037B (zh) | 基于增强注意力机制的卷积神经网络匹配的文本识别方法 | |
CN110275936B (zh) | 一种基于自编码神经网络的相似法律案例检索方法 | |
CN111738003B (zh) | 命名实体识别模型训练方法、命名实体识别方法和介质 | |
CN111414461B (zh) | 一种融合知识库与用户建模的智能问答方法及系统 | |
CN114169330A (zh) | 融合时序卷积与Transformer编码器的中文命名实体识别方法 | |
CN111291188B (zh) | 一种智能信息抽取方法及系统 | |
CN111414481A (zh) | 基于拼音和bert嵌入的中文语义匹配方法 | |
CN115186665B (zh) | 一种基于语义的无监督学术关键词提取方法及设备 | |
CN113836896A (zh) | 一种基于深度学习的专利文本摘要生成方法和装置 | |
CN115130538A (zh) | 文本分类模型的训练方法、文本处理的方法、设备及介质 | |
CN115905487A (zh) | 文档问答方法、系统、电子设备及存储介质 | |
CN114218921A (zh) | 一种优化bert的问题语义匹配方法 | |
CN111581365B (zh) | 一种谓词抽取方法 | |
CN116385946B (zh) | 面向视频的目标片段定位方法、系统、存储介质及设备 | |
CN110929006B (zh) | 一种数据型问答系统 | |
CN117291265A (zh) | 一种基于文本大数据的知识图谱构建方法 | |
CN115146021A (zh) | 文本检索匹配模型的训练方法、装置、电子设备及介质 | |
CN116720498A (zh) | 一种文本相似度检测模型的训练方法、装置及其相关介质 | |
CN111666375A (zh) | 文本相似度的匹配方法、电子设备和计算机可读介质 | |
CN110826341A (zh) | 一种基于seq2seq模型的语义相似度计算方法 | |
CN117874175B (zh) | 一种基于信息瓶颈的信息检索方法和系统 | |
CN113792121B (zh) | 阅读理解模型的训练方法及装置、阅读理解方法及装置 | |
CN113312903B (zh) | 一种5g移动业务产品词库的构建方法及系统 | |
CN111767388B (zh) | 一种候选池生成方法 | |
CN115017260A (zh) | 一种基于子主题建模的关键词生成方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |