CN110442777B - 基于bert的伪相关反馈模型信息检索方法及系统 - Google Patents
基于bert的伪相关反馈模型信息检索方法及系统 Download PDFInfo
- Publication number
- CN110442777B CN110442777B CN201910546934.8A CN201910546934A CN110442777B CN 110442777 B CN110442777 B CN 110442777B CN 201910546934 A CN201910546934 A CN 201910546934A CN 110442777 B CN110442777 B CN 110442777B
- Authority
- CN
- China
- Prior art keywords
- bert
- document
- query
- pseudo
- score
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9532—Query formulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供一种基于BERT的伪相关反馈模型信息检索方法,包括在伪相关反馈的第一轮检索中,首先通过BM25模型对目标文档集合D进行评估,筛选出文档集合D′,再通过BERT模型对文档集合D′中文档再次进行评估,得到文档的BERT得分;将通过BM25检索模型和BERT模型得到的文档得分线性融合,得到伪相关文档集合D1;基于伪相关文档集合D1进行查询扩展选出候选扩展词,再通过BERT句子语义相似度优化候选扩展词,得到最终的扩展词;最终的扩展词与原始查询Q结合,生成新的查询关键词集合,以BM25模型对目标文档集合D进行第二轮检索,得到最终的检索结果。本发明支持在海量信息中去除大量无用和不相关的信息,得出更加精准的候选词,提高扩展查询及最终检索的精度。
Description
技术领域
本发明属于信息检索技术领域,特别涉及将BERT融合到伪相关反馈模型中的信息检索方法及系统。
背景技术
在现代社会环境下,环境互联网技术迅猛发展,实现了全球资源共享,网络资源异常丰富,信息总量迅速膨胀。在网络环境下,人类的生活方式和思维方式都将发生重大变化。数字化环境和信息网络技术影响并改变着人类传统的学习方式,面对浩瀚的信息海洋,人们迫切需要一种更为有效的信息处理技术来应对日益增长的海量数据,应该充分借助于先进的技术去查寻并汲取有用的知识。信息检索作为经典的文本处理技术,能够适应这一要求并迅速成为当前信息处理研究领域中的研究热点。
信息检索(Information Retrieval,简称IR)是指对信息进行预处理、存储和管理,然后找出用户所需信息的过程和技术。信息检索过程可以简单地描述为:用户根据其信息需求,组织一个查询字符串提交给信息检索系统,信息检索系统在文档集中检索出与查询相关的文档子集返回给用户。具体来说是指给定一组特定的查询主题,通过某种信息检索模型,对目标中的所有文档与查询主题进行相关度计算,并将每个文档按得分从大到小的顺序返回,返回的结果中文档越靠前说明该文档与查询主题越相关。
信息检索在实际的应用中,通常会出现用户的查询意图与检索系统给出的查询结果存在偏差的情况,导致检索系统的精度不高。因此,信息检索往往是一个反复的过程,用户常常需要经过多次的查询调整才能获得满意的检索结果。实际问题中,信息检索中由于一般用户往往会出现查询输入不完整或不准确的情况,在信息对比上极易造成检索结果用户需求不匹配的查准率低和检索结果不全面的问题,这时候就需要用到查询扩展技术来改善这一问题。
查询扩展技术(QueryExpansion,简称QE)是提高检索性能的有效手段,通过对用户的初始查询进行扩展和重构,较好地解决了用户查询用词与文档用词不匹配以及用户表达不完整的问题,因而被广泛应用于信息检索领域。查询扩展就是检索系统在进行检索之前,把与原始查询相关的语词、概念等以逻辑的方式添加到原查询中,构成一个新的查询,然后再进行检索的过程。扩展后的新查询可以提供很多有利于判断文档相关性的信息,从而改善查准率和查全率。其中主要的方法有基于全局的、基于相关反馈的、基于伪相关反馈的等,本发明中将其应用到了伪相关反馈查询中。
伪相关反馈(Pseudo Relevance Feedback,简称PRF)是信息检索的一个重要技术分支,它将相关反馈的人工操作部分自动化,因此用户不需要进行额外地交互就可以获得检索性能的提升。该方法首先进行正常的检索过程,返回最相关的文档构成初始集,然后假设排名靠前的N篇文档是相关的,最后在此假设上像以往一样进行相关反馈。伪相关反馈的出现是为了使检索系统更加有效,使检索结果更好地满足用户的查询请求。申请人在日前申请了发明专利《一种基于伪相关反馈模型的信息检索方法及系统》,但是在上篇专利中,第一轮检索中只用到了传统的BM25检索方法,以筛选反馈文档,该反馈文档只包含了词频信息,缺少与原始查询的语义信息,即反馈文档质量不高,然而本专利中提出进一步改进,在筛选反馈文档时,同时采用了传统的BM25方法和BERT方法,使返回的文档序列融入了语义信息,最终提高了反馈文档的质量。
TF-PRF(Term Frequency-Pseudo Relevance Feedback),传统的Rocchio伪相关反馈模型和PROC(Proximity-based Rocchio’s Model for Pseudo RelevanceFeedback),基于邻近度的融入位置信息的伪相关反馈技术,是目前在不借助外部信息和人工交互的情况下最先进的伪相关反馈模型。
在自然语言处理中,需要把自然语言转化为计算机可以理解的形式,一般采用向量空间模型(Vector Space Model,简称VSM)进行表示,通过神经网络模型把句子进行编码,得到一个固定长度的句子向量化表示,便于句子在计算机中的表示和处理。
BERT(Bidirectional Encoder Representations from Transformers)近期提出之后,作为一个Word2Vec的替代者,使用Transformer的结构将已经走向瓶颈期的Word2Vec带向了一个新的方向,其在NLP(Natural Language Processing)领域的11个方向大幅刷新了精度,无私的开源了多种语言的源码和模型,具有非常高的商业价值,可以说是近年来自残差网络最优突破性的一项技术了,虽然BERT有诸多优点,但是将BERT用于信息检索技术领域的难度很大,如果将全部文档都通过BERT方法进行计算,就会出现信息量过大、计算时间过长等情况,因此直接将BERT用于信息检索是不切实际的。本发明首创提出,先通过传统的给文档评估的方法BM25,对文档进行筛选,大大缩减了BERT的计算量,使将BERT用于信息检索成为现实。
信息获取和精化技术已成为当代计算机科学与技术研究中迫切需要研究的课题,信息检索已经成为现代社会信息化的关键。信息获得能力是现代社会人才素质的基本要素,也是人才竞争优势的重要体现,信息检索作为人类获得信息的主要手段与技术,在人类的知识传播和科学研究中具有承上启下的作用,是人类知识组织的超连接。近年来,随着社会政治经济的飞速发展,尤其是互联网技术的应用与发展,信息的增长与传播速度达到了前所未有的高度,也正因为如此,信息检索的作用也更显凸显,未来的信息检索领域必将出现信息智能化,个性化,专业化,多样化的检索引擎。并不断更新完善出新的信息检索技术,来满足人们对于信息检索精度的更高需求。
发明内容
本发明所要解决的技术问题是,通过融入BERT句子级别的语义信息,提高对句子语义和词项语义的精准识别,依次优化伪相关反馈中第一轮检索对文档的评估和查询扩展以提高检索的平均精度。
本发明提供一种基于BERT的伪相关反馈模型信息检索方法,包括以下操作,
在伪相关反馈的第一轮检索中,检索系统首先通过BM25模型对目标文档集合D进行评估,得到文档的BM25得分,筛选出得分前a篇文档,记为文档集合D′,再通过BERT模型对文档集合D′中文档再次进行评估,得到文档的BERT得分;其中,a为预设的取值;
将通过BM25检索模型和BERT模型得到的文档得分线性融合,得到最终的文档得分,取得分最高的前N篇文档作为伪相关文档集合D1;基于伪相关文档集合D1进行查询扩展选出候选扩展词,再通过BERT句子语义相似度优化候选扩展词,得到最终的扩展词;其中,N为预设的取值;
最终的扩展词与原始查询Q结合,生成新的查询关键词集合,以BM25模型对目标文档集合D进行第二轮检索,得到最终的检索结果。
而且,设置a=2000。
而且,评估文档得到BERT得分,实现方式包括将文档集合D′中的每篇文档分成单独的句子,根据BERT模型计算每个句子的得分,每篇文档选得分最高的b个句子求得分之和作为该文档的得分;其中,b为预设的取值。
而且,b取值为4。
而且,采用Rocchio算法,基于伪相关文档集合D1进行查询扩展选出候选扩展词。
而且,所述根据BERT句子语义相似度优化候选扩展词,包括将候选扩展词的BERT语义相似度得分,线性融合到通过查询扩展选出的候选扩展词的得分上,按得分高低重新排序,取前n1个词作为最终扩展词;其中,n1为预设的取值。
而且,每个扩展候选词的BERT语义相似度得分,等于该词所在的所有句子相应BERT 模型所得句子得分的累加和。
本发明还提供一种基于BERT的伪相关反馈模型信息检索系统,用于执行如上所述基于 BERT的伪相关反馈模型信息检索方法。
依照本发明所提供的将BERT方法融到伪相关反馈模型中的信息检索方法,能够克服传统的伪相关反馈模型只考虑词频信息以及词袋模型中词项无序、无关联的不足,传统的检索系统在处理查询时,将一个完整的用户查询语句进行了分词,分词后的查询保存了每个词项本身的含义,却丢失了原有的句子整体语义信息。虽然句子的基本成分是一个个词项,但在大部分的时候,句子的整体语义信息蕴含了除单个词项的语义以外的其他语义信息,这些信息对句子整体的语义理解和识别起着至关重要的作用。当一个句子中出现某个多义词的时候,该词的具体含义将可以通过整个句子的语义来确定。
实际上,当一个句子和原始查询的语义相似度较高时,该句子有很大的可能与原始查询的主题相关。所以,为了更好地捕获用户查询意图,提高信息检索效率,本发明对基于深度学习技术的句子语义相似度进行了深入研究,在第一轮检索中,对文档进行评估时,不仅采用传统的BM25方法,考虑查询词在文档中出现的频率,同时,将查询整句的语义信息考虑在内,即当文档内句子和查询句之间的语义相似度越高时,该句子和查询主题越相关,所在文档就被赋予相应更高的得分。而且,对文档评估时,不需要要求文档内每一个句子都和查询句语义很相关,本发明只取了文档内句子的BERT得分最高的三个句子得分和作为该文档的得分,即只需部分句子和查询句的相关度很高,就判断其所在文档与查询相关性很高,以此获得更高的文档得分。
查询扩展中,将候选词项所在句子与查询所在句子之间的语义相似度信息作为评估候选词项是否和查询词项相关的依据。即当一个句子和查询之间的语义相似度越高,该句子和查询主题越相关,则该句子中的词就会被赋予较高的权重,本发明称之为句子语义权重,并将该权重引入到经典的伪相关反馈Rocchio模型中。
本发明能够显著提高检索的精确度,在第一轮检索和查询扩展的过程中将句子语义信息融入其中,使文档得分和扩展词都携带语义特征,和原始查询在语义上有更大的相关性,从而使查询词在多语义的环境下具有更好地区分度,更能符合实际情况需要,支持在海量信息中去除大量无用和不相关的信息,提高最终的检索效果,具有重要的市场价值。
附图说明
图1为本发明实施例的信息检索过程流程图。
图2为本发明实施例的BERT模型输入表达示意图。
图3为本发明实施例的BERT模型计算两个句子语义相似度框架示意图。
具体实施方式
以下结合附图和实施例详细说明本发明的技术方案。
本发明要提出首先通过BM25检索模型对文档进行筛选,再基于BERT语义相似度对筛选出的文档内每个句子与原始查询Q进行打分,取每篇文档内句子得分最高的b(实施例中优选设定为4)个句子得分作为该文档的得分,再对每个通过Rocchio产生的重要度候选扩展词进行扫描,词的BERT得分就是词所在的所有句子的句子得分累加和,并把这种语义相似度作为附加权重融合到伪相关反馈模型中,实现最终的文档评估和查询扩展以提高检索的精确度。
实施例提出将语义相似度融合到伪相关反馈模型中的信息检索方法,包括将句子的语义相似度度融合到伪相关反馈模型中实现信息检索,包括在第一轮检索过程中,首先通过BM25 检索模型对文档进行评估,将得分靠前的前a(a在实施例中优选设定值为2000)篇文档筛选出,将此a篇文档内所有文档分成单独的句子,对每个句子通过BERT深度学习的方法计算其与查询句子之间的语义相似度,对每个句子打分,取每篇文档内句子得分最高的b个句子得分作为该文档的得分,将此a篇文档的BERT得分与传统的BM25检索模型下的文档得分融合,得到最终的文档得分,按得分结果从高到低排列得到第一次查询结果;根据伪相关反馈的原理,检索系统将取出文档集合D的第一次查询结果文档中的前N篇文档作为伪相关文档集合D1,伪相关文档集合中生成查询扩展词的时候,先采用传统的Rocchio算法(经典的相关反馈算法),选出候选扩展词集合,再对该候选扩展词集合建立一个词表,每个词的BERT 得分就是词所在的所有句子的句子得分累加和,两种方法下的候选词得分融合,找出最终扩展词项,完成最终的信息检索。
本发明针对传统方法中不尽合理的词袋模型假设,提出把句子的语义相似性以及词与词之间的关联关系考虑进来。通过对文档集合中数据的一些统计信息(比如文档内句子的语义与原始查询句子的相似性)的有效利用,结合查询条件设计相关技术方案来获得能够反映查询条件主题并由查询条件所触发的词汇,也就是利用这些信息来更准确的捕获用户的信息需求。
实施例中,信息检索系统会根据目标文档集合建立查询索引,当用户提交相关查询主题时,系统会将查询主题进行预处理为查询关键词Q(Q是一个集合,一般包含多个主题词q1、 q2、q3等),D为所有目标文档构成的目标文档集合,ND为目标文档集合D的文档总数。随后,检索系统首先会通过BM25检索权重模型方式计算查询关键词Q与文档集合D中的每一个文档的得分,将文档得分存放到数组ScoreBM25[i]内,表示文档的BM25得分,再采用BERT方法对文档进行评估,评估的时候进行以下步骤:
步骤(一),在第一轮检索中,首先通过BM25检索模型对文档进行评估,记为文档的BM25得分,ScoreBM25[i]。将目标文档集合D中得分靠前的前a篇文档筛选出来,记为文档集合D′,用来进行文档的BERT方法评估。
考虑到如果把全部文档都直接用BERT方法评估,数据量太大,本发明提出取出前a个文档,进行BERT文档评估方法。
第一轮检索中,首先通过BM25检索模型对文档进行评估,将得分靠前的前a(a在本方法中设定值为2000)篇文档筛选出来,将此a篇文档再通过BERT方法进行文档评估,通过对文档的初步筛选大大缩减了BERT方法的计算量和计算时间,降低了将BERT用于信息检索技术领域的难度,使将BERT的方法运用到伪相关反馈模型成为现实。因此,通过第一轮检索返回的反馈文档不仅与词频信息有关,也与查询主题的语义相关,从而提高了反馈文档的质量,最终提高检索效率。
步骤(二),将通过BM25检索模型筛选出来的文档集合D′内的每篇文档i分为单独的句子,记为Si,j,用BERT方法得出每个句子Si,j与关键词Q的语义相似度得分R(Si,j,Q)。
其中,其中i为文档序号,j为句子序号,Si,j为第i篇文档的第j条句子,R(Si,j,Q)为句子Si,j与Q在BERT方法下的语义相似度得分,作为该句子得分。
以下将详细说明文档集合D′中每个句子Si,j与查询关键词Q之间的语义相似度得分 R(Si,j,Q)是如何得来的。
首先确定BERT的输入序列,BERT的输入部分是个线性序列,如图2所示,输入(Input) 的每个序列的第一个标记始终是特殊的分类向量,用“[CLS]”表示,该特殊符可以视为汇集了整个输入序列的表征,被用来作为分类任务中总的序列表示,两个句子(Si,j与Q)通过“[SEP]”分隔符分割,最后面增加一个标识符号“[SEP]”。例如,[cls]my dog iscute[sep]he likes play ##ing[sep]。每个单词由词项嵌入(Token embeddings)、分段嵌入(Segmentation Embeddings) 和位置嵌入(Position Embeddings)三个部分组成,其中,词项嵌入(E[CLS]、E[my]、E[dog]…E[SEP]) 指的是对应序列中的每个单词;添加位置嵌入信息,是因为自然语言处理中单词顺序是很重要的特征,需要在这里对位置信息进行编码,例如E0、E1…E10,分别表示从0~10个位置;第三个是分段嵌入,因为以两个句子为输入的分类任务训练数据是由两个句子构成的,每个句子都有一个句子整体的embedding项对应于每个单词,例子中EA表示该词属于序列A,EB表示该词属于序列B。把单词对应的三个embedding叠加,就形成了BERT的输入。
BERT神经网络模型是现有技术,而本发明提出使用该模型实现句子对的分类任务。用 BERT模型计算两个句子Si,j与Q的语义相似度的主要机制如图3所示,Si,j表示文档集合D内的每个句子,表示为Sentence1,Q表示原始查询,表示为Sentence2,实施例设置的BERT 模型有12个子层。其中每一层结构相同(类似于网络全连接结构,如图3中输入序列和输出序列中间的结构,全连接层的每一个结点都与上一层的所有结点相连,用来把前边提取到的特征综合起来)。假设句子Si,j和查询Q组成的输入序列(Input)为[[CLS],Q,[SEP],Si,j,[SEP]],其中,“[CLS]”是开始的标志,同时该特殊符被用来作为分类任务中总的序列表示,“[SEP]”表示分隔符,Tok1,Tok2```TokN表示句子1中的各个词,Tok’1,Tok’2```Tok’M表示句子2中的各个词;E1,E2```EN和E1’E2’```EM’分别表示句子1和句子2中的词融入了词项嵌入、分段嵌入和位置嵌入后的序列表示,即为BERT的输入序列,T1```TN和T1’```TM’表示经过BERT 模型后两个句子的输出序列,T[SEP]仍是分隔符,Class lable表示句子分类标签,模型最终的输出序列的第0个字符位置C对应Transformer的输出结果即为每个句子Si,j与关键词Q的语义相似度得分。
步骤(二),本方法假设如果某篇文档中存在某些句子和原始查询Q在语义上相似,就认为该文档与Q相关。在本方法中选取与查询Q的语义最相似的前b个句子的得分之和作为该文档的BERT得分,基于上述前提,将采用BERT方法得到的第i篇文档的文档得分记为ScoreBert[i],即
其中,表示取第i篇文档内句子得分最高的b个句子得分之和,作为第i篇文档的文档得分。具体实施时,可预先设置b的取值。在具体的实验调参对比中,发现当b 的值为4的时候,最终的检索效率更高,所以实施例优选将b的值设定为4。本发明不要求文档内每句都和查询句有很大的语义相关性,选取每篇文档句子得分最高的,换言之与查询最相关的4个句子得分和作为文档得分,即只要部分句子与查询句相关性很高,就判断其所属文档与查询主题更相关。
将两种方法得到的文档得分线性融合,按文档得分从高到低排序得到第一次查询结果。
Score[i]=αScoreBM25[i]+(1-α)ScoreBert[i] 公式(2)
其中ScoreBM25[i]为第i篇文档的BM25文档得分,Score[i]为最终第i篇文档的文档得分,α为调节传统的BM25方法得到的文档得分与BERT方法下句子语义特征信息之间的贡献权重常数,具体实施时,可通过调参对比实验,根据最终的检索效率确定峰值作为α的取值。
根据伪相关反馈的原理,检索系统将取出文档集合D的第一次查询结果文档中的前N(在大量相关研究文献中,N一般为取值为10、20或30)篇文档作为伪相关文档集合D1,N小于等于ND,本领域技术人员可预设取值。在检索系统得到第一次查询所产生的伪相关文档集合D1,并进行查询扩展词选择的时候进行以下步骤:
步骤1,分别计算伪相关文档集合D1中每篇文档中所有的词(即扩展候选词)本身的重要度得分,该重要度得分可以通过词的词频及逆文档词频(传统的Rocchio算法等)计算获得,再将不同文档中相同的词重要度得分以词向量的方式进行累加后除以D1中的文档数N,即可得到所有的扩展候选词的重要度得分向量,将向量VD1中元素的得分按从大到小的顺序排列,取出前r(r可能为100、150等,本领域技术人员可预设取值)个得分在VD1中所对应的词,得到重要度扩展候选词集合Q1,可用一个多项式V1来表示集合Q1中的每个词和该词对应的重要度得分。
本步骤中,采用传统的Rocchio算法,将N篇伪相关文档集合D1中的每篇文档看作词袋模型,以向量的方式表示,其中第i篇文档的重要度向量公式如下式所示。
在上述公式中,表示伪相关文档集合D1中的第i篇文档(i=1,2,3…,N)di的词向量表达,t1、t2、t3、…、tn为伪相关文档集合D1中所有文档中的所有词,n表示这些词的总数,即伪相关文档集合D1中所有词的个数;表示对应的t1、t2、t3、…、 tn在文档di中的权重得分(也称重要度得分,权重用来表现扩展候选词的重要度)。某个词的重要度得分通过该词的词频及逆文档词频等信息计算获得,使用TF-IDF的方式计算文档di中词条tj的重要度,
其中,指某个词tj在文档di中的重要度得分(j=1,2,3…,n),TF(tj,d)指词条tj在文档di中出现的频率(次数),N为伪相关文档集合D1的文档总数,df(tj)是伪相关集合D1中,包含了词tj的文档个数。
依照公式(3),伪相关文档集合D1中的每个文档di都可以表示成相应的词的重要度的向量形式并对每个文档向量进行累加求和后再除以伪相关文档总数N,得到所有词条在所有文档中的重要度得分向量如公式(5)所示:
将中每个词的重要度得分取出后按从大到小的顺序排序,将得分最大的前r个值在对应的词选取出来构成重要度查询扩展词集合Q1。为了方便后面的计算,用多项式V1来表示集合Q1中的每个词和该词对应的重要度得分,如公式(6)所示。
V1=wh1×h1+wh2×h2+...whr×hr 公式(6)
步骤2,根据前文步骤(一)中所得D1中各句子的得分R(Si,j,Q),对通过Rocchio生成的r个候选扩展词进行优化,设重要度查询扩展词集合Q1中每个扩展候选词的BERT语义相似度得分wh'q,每个词hq的得分wh'q即为该词所在的所有句子的句子得分累加和,如下公式所示,
其中,wh'q表示Q1中每个扩展候选词hq的BERT语义得分(q=1,2,3...r),r为采用Rocchio 算法产生的候选扩展词个数,m(di,hq)为文档di中出现词项hq的句子个数,N扩展候选词hq为通过Rocchio产生的候选扩展词集合Q1的所有词,R(Si,j,Q)表示出现了扩展候选词hq的句子得分,该句子得分已在第一轮检索过程中计算得出。
具体实施时,可对Q1中每个扩展候选词进行扫描,建立一个词典,该词典存放词和相应的得分。词典中的各扩展候选词hq的得分wh'q就是该词所在的所有句子的句子得分R(Si,j,Q) 的累加和。
以向量的方式V'1表示通过Rocchio产生的候选扩展词集合Q1的所有词条hq的BERT语义相似度得分,
V'1=wh'1×h1+wh'2×h2+...wh'r×hr 公式(8)
其中,wh'1,wh'2,wh'3,…,wh'r表示Q1集合中的词对应的BERT语义相似度得分h1,h2, h3,…,hr表示Q1中的扩展候选词,r表示这些词的总数,即重要度候选扩展词集合Q1中所有词的个数;
步骤3,将步骤1和步骤2中得到的查询扩展词多项式V1和V'1归一化后再进行线性组合,即对根据重要度产生的候选扩展词,用BERT语义相似度方法对其进行优化,得到新的查询词多项式V,具体组合方式如公式(9)所示。
V=(1-γ)×||V1||+γ×||V'1|| 公式(9)
在公式(9)中,||X||表示对向量X进行归一化运算,归一化的目的是统一量纲,即将向量中每个元素的值规范到区间[0,1.0]中,方便后续的参数调节。归一化有多种方法可以实现,本实施例中采用的是除以最大值法,即每个元素归一化后的值为该元素原来的值除以向量中元素的最大值。例如有一个向量[4,3,2,1],有4个元素,元素的最大值是4,那么对这个向量进行除以最大值法归一化后的结果为即[1,0.75,0.5,0.25],可将原向量中的所有值归一化到[0,1.0]之间。
公式(9)中的调节因子γ的取值范围为0到1.0,它的功能是平衡扩展词的重要度得分和语义相似度得分,在具体应用时,可以预先用测试数据在需要应用的目标文档集上测试得出γ的最优值。
步骤4,根据步骤3中的多项式V按每个词项的系数(综合权重得分)从大到小排序,将系数最大的前n1(n1一般为取值为10、20、30或50,本领域技术人员可预设取值)个词项取出得到新的扩展词集合 即为最终的查询扩展词集合,用多项式V'来表示,多项式V'中的每个项为中的每个具体的查询扩展词,每个项(词项)的系数为该词项在步骤3 中多项式V中对应的值。多项式V'表示为:
步骤5,将原始查询词Q表示为多项式VQ,多项式VQ中的每个项为Q中的每个主题词ql, l=1,2,3...k,其中k表示原始查询词Q内所包含的主题词个数。每个项的系数值设置为1.0,则原始查询词Q可表示为:
VQ=1.0×q1+1.0×q2+1.0×q3+...+1.0×ql 公式(11)
然后,将查询多项式VQ和步骤4中得到的查询扩展词多项式V'归一化后再次进行线性组合得到新的查询词多项式K,具体组合方式如公式(12)所示。
K=(1-β)×||VQ||+β×||V'|| 公式(12)
在公式(12)中采用了与步骤3一致的归一化方法,调节因子β的取值范围为0到1.0,它的功能是平衡原查询词与扩展查询词之前的权重,具体实施时可设置为经验值。
步骤7,根据步骤6可以得到新的查询关键词集合Q',Q'中的每个查询词即为查询词多项式K中每个词项。使用新查询关键词集合Q'和Q'中每个查询词在查询词多项式K中对应的权重进行第二次查询(采用BM25检索模型),即再次计算Q'与目标文档集合D中每篇文档的得分,得到的查询结果即为最终信息检索结果。
在进行第二次查询时,查询词为新产生的查询关键词集合Q',在计算查询词与每个文档的得分时,每个查询词的权重为该词在查询词多项式K中的系数,而在进行第一次查询每个查询词的权重为1.0。
本发明主要解决的问题,能够克服传统的第一轮检索以及查询扩展中只考虑词频信息以及词袋模型内词项无序、无关联的不足,将句子与查询句之间的整体语义考虑在内,使文档得分和扩展词得分不仅和传统词频信息有关,也和句子整体的语义有关,能够更加准确地识别词义。其中,查询句与文档内句子之间语义相似度高的句子,句子所属文档以及句子所包含词项都应当被给予较高的权重。
在传统的第一轮检索中,在对文档评估时,是将查询词拆分成单个的词项,只考虑了查询词在文档中出现的词频,而实际中,拆分查询词破坏了查询句的整体语义信息,现实查询中查询词可能只在文档中某一段出现过,即虽然词频很低,但在该段中句子与查询句语义相似度很高,则该文档应被赋予更高的得分,本发明将传统的根据词频对文档评估的方法与 BERT语义相似度结合,使文档得分不仅考虑了词频信息,也融入了查询句与文档句的语义信息,利用这些信息来更准确的捕获用户的信息需求。比如:查询句为:我想买一个苹果手机。文档1:山东苹果很甜,可以在手机上订购,该苹果又大又甜,很多人喜欢这种苹果。文档2:这家商场商品种类繁多,有生活用品、水果、苹果手机等等。显然,“苹果”、“手机”词项在文档1中出现词频更高,传统方法可能给与较高的得分,但实际其与查询句关系并不大,这是传统方法解决不了的问题,文档2中词项虽然出现的频率低,但语义相关性更大,此时文档2应被给予更高的得分才能更符合实际情况的需要;此外,在对文档评估时,本发明不要求文档内每句都和查询句有很大的语义相关性,选取每篇文档句子得分最高的三个得分和作为文档得分,即只要部分句子与查询句相关性很高,就判断其所属文档与查询主题更相关。
在查询扩展过程中,在对候选扩展词评估时,本发明在传统词频信息的基础上,融入了语义信息,改善传统方法中不能解决的词义准确识别的问题,本发明采用Rocchio方法先生成候选扩展词,再通过BERT方法对候选扩展次进行优化,可以解决“一词多义”和“同义词” (话筒与麦克风)等词义识别问题。“一词多义”问题:例如“小米”有食物小米和小米手机两种意思,虽然词项词频、词序相同,但语义上却有很大的差距,这是传统仅根据词频信息不能解决的,本发明融入了句子语义信息,能够很好地对词项进行词义区分,赋予词项不同的权重。“同义词”问题:比如“母亲”和“妈妈”,两个词项表述不同,但语义相关性很大,按传统方法,只考虑词频信息,得分会较低,结果会不尽人意,如果将语义相似度考虑在内,该词项就会获得较高的得分,这将更符合实际情况需要。
具体实施时,本领域技术人员可采用软件技术实现以上流程的自动运行,运行流程的系统装置也应当在本发明的保护范围内。本发明实施例还提供一种基于BERT的伪相关反馈模型信息检索系统,用于执行如上所述基于BERT的伪相关反馈模型信息检索方法。
实施例中所采用的信息检索的开发环境为Java、Eclipse、phython开发环境,开发支持库为Lucene。
本发明中所描述的具体实施例仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
Claims (8)
1.一种基于BERT的伪相关反馈模型信息检索方法,其特征在于:包括以下操作,
在伪相关反馈的第一轮检索中,首先通过BM25模型对目标文档集合D进行评估,得到文档的BM25得分,筛选出得分前a篇文档,记为文档集合D′,再通过BERT模型对文档集合D′中文档再次进行评估,得到文档的BERT得分;其中,a为预设的取值;
将通过BM25检索模型和BERT模型得到的文档得分线性融合,得到最终的文档得分,取得分最高的前N篇文档作为伪相关文档集合D1;基于伪相关文档集合D1进行查询扩展选出候选扩展词,再通过BERT句子语义相似度优化候选扩展词,得到最终的扩展词;其中,N为预设的取值;
最终的扩展词与原始查询Q结合,生成新的查询关键词集合,以BM25模型对目标文档集合D进行第二轮检索,得到最终的检索结果。
2.根据权利要求1所述基于BERT的伪相关反馈模型信息检索方法,其特征在于:设置a=2000。
3.根据权利要求1所述基于BERT的伪相关反馈模型信息检索方法,其特征在于:评估文档得到BERT得分,实现方式包括将文档集合D′中的每篇文档分成单独的句子,根据BERT模型计算每个句子的得分,每篇文档选得分最高的b个句子求得分之和作为该文档的得分;其中,b为预设的取值。
4.根据权利要求3所述基于BERT的伪相关反馈模型信息检索方法,其特征在于:b取值为4。
5.根据权利要求1所述基于BERT的伪相关反馈模型信息检索方法,其特征在于:采用Rocchio算法,基于伪相关文档集合D1进行查询扩展选出候选扩展词。
6.根据权利要求1或2或3或4或5所述基于BERT的伪相关反馈模型信息检索方法,其特征在于:所述根据BERT句子语义相似度优化候选扩展词,包括将候选扩展词的BERT语义相似度得分,线性融合到通过查询扩展选出的候选扩展词的得分上,按得分高低重新排序,取前n1个词作为最终扩展词;其中,n1为预设的取值。
7.根据权利要求6所述基于BERT的伪相关反馈模型信息检索方法,其特征在于:每个扩展候选词的BERT语义相似度得分,等于该词所在的所有句子相应BERT模型所得句子得分的累加和。
8.一种基于BERT的伪相关反馈模型信息检索系统,其特征在于:用于执行如权利要求1-7所述基于BERT的伪相关反馈模型信息检索方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910546934.8A CN110442777B (zh) | 2019-06-24 | 2019-06-24 | 基于bert的伪相关反馈模型信息检索方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910546934.8A CN110442777B (zh) | 2019-06-24 | 2019-06-24 | 基于bert的伪相关反馈模型信息检索方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110442777A CN110442777A (zh) | 2019-11-12 |
CN110442777B true CN110442777B (zh) | 2022-11-18 |
Family
ID=68428960
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910546934.8A Active CN110442777B (zh) | 2019-06-24 | 2019-06-24 | 基于bert的伪相关反馈模型信息检索方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110442777B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110968671A (zh) * | 2019-12-03 | 2020-04-07 | 北京声智科技有限公司 | 一种基于Bert的意图确定方法及装置 |
WO2021146388A1 (en) * | 2020-01-14 | 2021-07-22 | RELX Inc. | Systems and methods for providing answers to a query |
CN111159414B (zh) * | 2020-04-02 | 2020-07-14 | 成都数联铭品科技有限公司 | 文本分类方法及系统、电子设备、计算机可读存储介质 |
CN111414746B (zh) * | 2020-04-10 | 2023-11-07 | 建信金融科技有限责任公司 | 一种匹配语句确定方法、装置、设备及存储介质 |
CN111737413A (zh) * | 2020-05-26 | 2020-10-02 | 湖北师范大学 | 基于概念网语义的反馈模型信息检索方法、系统及介质 |
CN111625624A (zh) * | 2020-05-27 | 2020-09-04 | 湖北师范大学 | 基于bm25+albert模型的伪相关反馈信息检索方法、系统及存储介质 |
CN111444320B (zh) * | 2020-06-16 | 2020-09-08 | 太平金融科技服务(上海)有限公司 | 文本检索方法、装置、计算机设备和存储介质 |
CN111798987A (zh) * | 2020-07-07 | 2020-10-20 | 云知声智能科技股份有限公司 | 一种实体关系抽取方法和设备 |
CN112307745B (zh) * | 2020-11-05 | 2024-04-09 | 浙江大学 | 基于伯特模型的关系增强型句子排序方法 |
CN112632216B (zh) * | 2020-12-10 | 2021-07-30 | 深圳得理科技有限公司 | 一种基于深度学习的长文本检索系统及方法 |
US11983208B2 (en) | 2021-02-16 | 2024-05-14 | International Business Machines Corporation | Selection-based searching using concatenated word and context |
CN115221872B (zh) * | 2021-07-30 | 2023-06-02 | 苏州七星天专利运营管理有限责任公司 | 一种基于近义扩展的词汇扩展方法和系统 |
CN116186203B (zh) * | 2023-03-01 | 2023-10-10 | 人民网股份有限公司 | 文本检索方法、装置、计算设备及计算机存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107247745A (zh) * | 2017-05-23 | 2017-10-13 | 华中师范大学 | 一种基于伪相关反馈模型的信息检索方法及系统 |
CN108062355A (zh) * | 2017-11-23 | 2018-05-22 | 华南农业大学 | 基于伪反馈与tf-idf的查询词扩展方法 |
CN109829104A (zh) * | 2019-01-14 | 2019-05-31 | 华中师范大学 | 基于语义相似度的伪相关反馈模型信息检索方法及系统 |
-
2019
- 2019-06-24 CN CN201910546934.8A patent/CN110442777B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107247745A (zh) * | 2017-05-23 | 2017-10-13 | 华中师范大学 | 一种基于伪相关反馈模型的信息检索方法及系统 |
CN108062355A (zh) * | 2017-11-23 | 2018-05-22 | 华南农业大学 | 基于伪反馈与tf-idf的查询词扩展方法 |
CN109829104A (zh) * | 2019-01-14 | 2019-05-31 | 华中师范大学 | 基于语义相似度的伪相关反馈模型信息检索方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110442777A (zh) | 2019-11-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110442777B (zh) | 基于bert的伪相关反馈模型信息检索方法及系统 | |
CN109829104B (zh) | 基于语义相似度的伪相关反馈模型信息检索方法及系统 | |
CN111611361B (zh) | 抽取式机器智能阅读理解问答系统 | |
CN106997382B (zh) | 基于大数据的创新创意标签自动标注方法及系统 | |
CN103136352B (zh) | 基于双层语义分析的全文检索系统 | |
CN109101479B (zh) | 一种用于中文语句的聚类方法及装置 | |
WO2018049960A1 (zh) | 一种为文本信息匹配资源的方法及装置 | |
CN103838833B (zh) | 基于相关词语语义分析的全文检索系统 | |
CN109271505A (zh) | 一种基于问题答案对的问答系统实现方法 | |
CN102253982B (zh) | 一种基于查询语义和点击流数据的查询建议方法 | |
CN105528437B (zh) | 一种基于结构化文本知识提取的问答系统构建方法 | |
CN111753167B (zh) | 搜索处理方法、装置、计算机设备和介质 | |
CN108509521B (zh) | 一种自动生成文本索引的图像检索方法 | |
CN112307182B (zh) | 一种基于问答系统的伪相关反馈的扩展查询方法 | |
CN112507109A (zh) | 一种基于语义分析与关键词识别的检索方法和装置 | |
CN111625624A (zh) | 基于bm25+albert模型的伪相关反馈信息检索方法、系统及存储介质 | |
CN112036178A (zh) | 一种配网实体相关的语义搜索方法 | |
CN114880447A (zh) | 信息检索方法、装置、设备及存储介质 | |
CN115203421A (zh) | 一种长文本的标签生成方法、装置、设备及存储介质 | |
CN109977292A (zh) | 搜索方法、装置、计算设备和计算机可读存储介质 | |
Anoop et al. | A topic modeling guided approach for semantic knowledge discovery in e-commerce | |
CN115248839A (zh) | 一种基于知识体系的长文本检索方法以及装置 | |
Lin et al. | Enhanced BERT-based ranking models for spoken document retrieval | |
CN113962228A (zh) | 一种基于记忆网络语义融合的长文档检索方法 | |
Osanyin et al. | A review on web page classification |
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 |