一种查询词自动扩展方法、装置、设备及存储介质与流程

文档序号:24552138发布日期:2021-04-06 12:04阅读:78来源:国知局
一种查询词自动扩展方法、装置、设备及存储介质与流程

本发明涉及搜索技术领域,更具体地说,涉及一种查询词自动扩展方法、装置、设备及存储介质。



背景技术:

在搜索领域中,基于用户查询的关键词搜索因为速度快、体量轻及支持大规模并发一直作为信息搜索的主要依据,并广泛在各个搜索引擎中使用。然而在行业领域内,用户往往缺乏领域内的专业知识,因此容易在搜索相关信息时出现查询模糊、歧义以及查询缺失等情况,最终导致搜索结果不够准确;同时因为不同用户之间的表述不同,存在一词多义、一义多词的语义鸿沟,也会使搜索结果的准确率降低。



技术实现要素:

本发明的目的是提供一种查询词自动扩展方法、装置、设备及存储介质,能够有效提高查询结果的准确性。

为了实现上述目的,本发明提供如下技术方案:

一种查询词自动扩展方法,包括:

获取历史上用户输入的查询问题及可供用户查询的全部文档,获取所述查询问题及全部所述文档中的词均为备选语义扩展词;

获取用户当前输入的查询关键词,分别计算所述查询关键词与每个所述备选语义扩展词的相似度,基于计算所得相似度确定多个所述备选语义扩展词为第一扩展词;其中,所述第一扩展词对应相似度大于其他备选语义扩展词对应相似度;

利用所述第一扩展词及所述查询关键词进行查询,得到相应的文档。

优选的,利用所述第一扩展词及所述查询关键词进行查询之前,还包括:

利用所述查询关键词进行查询,确定查询所得文档中多个文档均为扩展用文档,获取所述扩展用文档中的词为备选反馈扩展词;

分别计算所述查询关键词与每个所述备选反馈扩展词的相关性,并基于计算所得相关性确定多个所述备选反馈扩展词为第二扩展词;其中,所述第二扩展词对应相关性大于其他备选语义扩展词对应相关性;

对应的,利用所述第一扩展词及所述查询关键词进行查询,包括:

获取所述第一扩展词组成的集合与所述第二扩展词组成的集合的并集,并利用所述并集中的词及所述查询关键词进行查询。

优选的,分别计算所述查询关键词与每个所述备选反馈扩展词的相关性,包括:

按照下列公式计算所述查询关键词与任意备选反馈扩展词的相关性:

其中,rt表示计算所得相关性,t表示任意备选反馈扩展词,r表示所述扩展用文档的集合,d表示可供用户查询的全部文档的集合,p(t|r)表示t在r中出现的概率,p(t|d)表示t在d中出现的概率。

优选的,利用所述第一扩展词及所述查询关键词进行查询或利用所述并集中的词及所述查询关键词进行查询,包括:

采用tf-idf算法或者bm25算法,利用所述第一扩展词及所述查询关键词进行查询或利用所述并集中的词及所述查询关键词进行查询。

优选的,分别计算所述查询关键词与每个所述备选语义扩展词的相似度,包括:

利用预先训练得到的词向量模型分别获取所述查询关键词及每个所述备选语义扩展词的词向量;其中,所述词向量模型为预先利用全部所述备选语义扩展词、相应的查询问题及文档训练得到的;

分别计算所述查询关键词的词向量与每个所述备选语义扩展词的词向量的相似度,作为所述查询关键词与每个所述备选语义扩展词的相似度。

优选的,分别计算所述查询关键词与每个所述备选语义扩展词的相似度,包括:

按照下列公式计算所述查询关键词与任意备选语义扩展词的相似度;

其中,qi表示所述查询关键词中任意词的词向量,m表示所述查询关键词中词的数量,st表示任意备选语义扩展词的词向量,“·”表示向量内积,ci,t表示计算所得相似度。

优选的,所述词向量模型采用skip-gram模型。

一种查询词自动扩展装置,包括:

获取模块,用于:获取历史上用户输入的查询问题及可供用户查询的全部文档,获取所述查询问题及全部所述文档中的词均为备选语义扩展词;

扩展模块,用于:获取用户当前输入的查询关键词,分别计算所述查询关键词与每个所述备选语义扩展词的相似度,基于计算所得相似度确定多个所述备选语义扩展词为第一扩展词;其中,所述第一扩展词对应相似度大于其他备选语义扩展词对应相似度;

查询模块,用于:利用所述第一扩展词及所述查询关键词进行查询,得到相应的文档。

一种查询词自动扩展设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述计算机程序时实现如上任一项所述查询词自动扩展方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述查询词自动扩展方法的步骤。

本发明提供了一种查询词自动扩展方法、装置、设备及存储介质,该方法包括:获取历史上用户输入的查询问题及可供用户查询的全部文档,获取所述查询问题及全部所述文档中的词均为备选语义扩展词;获取用户当前输入的查询关键词,分别计算所述查询关键词与每个所述备选语义扩展词的相似度,基于计算所得相似度确定多个所述备选语义扩展词为第一扩展词;其中,所述第一扩展词对应相似度大于其他备选语义扩展词对应相似度;利用所述第一扩展词及所述查询关键词进行查询,得到相应的文档。本申请对用户历史上输入的查询问题及可供用户查询的全部文档进行处理,得到其中包含的全部的词,进而将这些词中与用户当前输入的查询关键词相似度较高的词作为查询关键词的扩展词,进而利用查询关键词及相应的扩展词作为查询所用全部词,实现相应文档的查询。可见,本申请在基于用户当前输入的查询关键词进行查询时,通过确定用户历史上输入的查询问题及可供用户查询的全部文档中与查询关键词相似度较高的词,对查询关键词进行相应的扩展,帮助实现查询,从而有效提高查询结果的准确性。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。

图1为本发明实施例提供的一种查询词自动扩展方法的第一种流程图;

图2为本发明实施例提供的一种查询词自动扩展方法的第二种流程图;

图3为本发明实施例提供的一种查询词自动扩展装置的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,其示出了本发明实施例提供的一种查询词自动扩展方法的流程图,可以包括:

s11:获取历史上用户输入的查询问题及可供用户查询的全部文档,获取查询问题及全部文档中的词均为备选语义扩展词。

本发明实施例提供的一种查询词自动扩展方法的执行主体可以为对应的查询词自动扩展装置。其中,本申请可以应用于银行领域,涉及的词也可以为银行领域内的词,而文档可以包括政策文件、公告文件、产品介绍、说明文档等;用户在使用搜索引擎搜索相关信息时,通常用户可以向搜索引擎中输入用于实现搜索的问题,可以称之为查询问题,而查询问题中可以包含至少一个用于实现搜索的关键词,可以称之为查询关键词,用户也可以向搜索引擎中直接输入用于实现搜索的关键词,也即查询关键词,进而基于从查询问题中提取的查询关键词或者用户直接输入的查询关键词,进行相关信息的搜索,如查询问题为“苹果的种植方法”,则相应的查询关键词则可以为“苹果”“种植方法”,“苹果”“种植方法”也即为需要查询“苹果的种植方法”时用户可以直接输入的关键词。另外,用户在使用搜索引擎搜索相关信息时,用户需要搜索的相关信息均存储于文档中,这些文档即为可供用户查询的文档。

本申请可以获取全部的可供用户查询的文档组成的集合以及当前时刻之间一段时间(该段时间可以根据实际需要设定)内用户输入的查询问题(或者查询关键词)的集合,并从这些集合的文档及查询问题中获取所有的词(或者从这些集合的文档中获取的所有词及历史上用户输入的查询关键词),将获取的所有的词均作为备选的用户实现对当前用户输入的查询关键词实现扩展的词,得到相应的备选语义扩展词集合s1。其中,从文档及查询问题中获取词时可以是通过对文档及查询问题的数据预处理实现的,具体来说,数据预处理可以包括数据清洗、无效查询问题(或者错误查询问题)过滤、拼写纠错、停用词去除、分词处理等,最终将输入的连续文本处理成词串的形式,所有的词串中的词可以汇总形成一个词表;另外还可以根据实际需要设置词表的上限,以使得词表内的词的数量在一个合理的范围内。

s12:获取用户当前输入的查询关键词,分别计算查询关键词与每个备选语义扩展词的相似度,基于计算所得相似度确定多个备选语义扩展词为第一扩展词;其中,第一扩展词对应相似度大于其他备选语义扩展词对应相似度。

获取用户当前输入的查询关键词或者从用户当前输入的查询问题中提取到的查询关键词(获取的查询关键词可以为一个,也可以为多个),计算该查询关键词与词表中每个词的相似度,如果两者相似度比较高,则说明词表中与该查询关键词相似度比较高的词,是与该查询关键词相似或者相同或者具有关联的词,因此其对该查询关键词需要实现的查询具有一定的帮助。具体来说,在确定词表中与该查询关键词相似度较高的词时,可以分别计算该查询关键词与词表中每个词的相似度,按照对应的相似度由高到低为词表中的词进行排序,然后选取排序所得的词中前k个词作为相应的扩展词,得到相应的扩展词集合t1;其中,k可以根据实际需要进行设定。

s13:利用第一扩展词及查询关键词进行查询,得到相应的文档。

将词表中确定出的扩展词及查询关键词均作为搜索引擎的输入,然后实现相关信息的搜索,搜索得到相应的文档即为用户需查询的文档。

本申请对用户历史上输入的查询问题及可供用户查询的全部文档进行处理,得到其中包含的全部的词,进而将这些词中与用户当前输入的查询关键词相似度较高的词作为查询关键词的扩展词,进而利用查询关键词及相应的扩展词作为查询所用全部词,实现相应文档的查询。可见,本申请在基于用户当前输入的查询关键词进行查询时,通过确定用户历史上输入的查询问题及可供用户查询的全部文档中与查询关键词相似度较高的词,对查询关键词进行相应的扩展,帮助实现查询,从而有效提高查询结果的准确性。

本发明实施例提供的一种查询词自动扩展方法,利用第一扩展词及查询关键词进行查询之前,还可以包括:

利用查询关键词进行查询,确定查询所得文档中多个文档均为扩展用文档,获取扩展用文档中的词为备选反馈扩展词;

分别计算查询关键词与每个备选反馈扩展词的相关性,并基于计算所得相关性确定多个备选反馈扩展词为第二扩展词;其中,第二扩展词对应相关性大于其他备选语义扩展词对应相关性;

对应的,利用第一扩展词及查询关键词进行查询,包括:

获取第一扩展词组成的集合与第二扩展词组成的集合的并集,并利用并集中的词及查询关键词进行查询。

在通过确定与查询关键词相似度较高的词实现查询关键词的扩展时,本申请实施例还可以通过与查询关键词相关性较高的词实现查询关键词的扩展;具体来说,针对用户输入的查询关键词,可以进行第一轮的搜索得到排列在前n(n可以为根据实际需要进行设定)个的文档作为相关文档,将这些相关文档中包含的全部的词均作为备选反馈扩展词,得到相应的备选反馈扩展词集合s2,对于备选反馈扩展词集合s2中的每一个词,分别与查询关键词进行相关性计算,按相关性得分从大到小对备选反馈扩展词集合s2中的每一个词进行排序,选取排序所得的全部词中前p(p可以为根据实际需要进行设定)个词作为扩展词集合t2。进而对筛选出的两个扩展词集合t1和t2取并集,作为最终的扩展词加入到用户查询中,进行搜索。可见,本申请结合语义关系与词共现的统计关系,引入相关性反馈信息,实现查询关键词扩展时的扩展效果较优,能够进一步提高搜索结果的准确性。

需要说明的是,分别计算查询关键词与每个备选反馈扩展词的相关性,可以包括:

按照下列公式计算查询关键词与任意备选反馈扩展词的相关性:

其中,rt表示计算所得相关性,t表示任意备选反馈扩展词,r表示扩展用文档的集合,d表示可供用户查询的全部文档的集合,p(t|r)表示t在r中出现的概率,p(t|d)表示t在d中出现的概率。

在计算查询关键词与任意的备选反馈扩展词的相关性时,可以通过上述公式进行计算,从而实现不同词之间相关性的有效计算。

另外,利用第一扩展词及查询关键词进行查询或利用并集中的词及查询关键词进行查询,可以包括:

采用tf-idf算法或者bm25算法,利用第一扩展词及查询关键词进行查询或利用并集中的词及查询关键词进行查询。

本申请实施例在实现查询时,可以采用tf-idf算法或者bm25算法实现,当然根据实际需要进行的其他设定,也均在本发明的保护范围之内。

本发明实施例提供的一种查询词自动扩展方法,分别计算查询关键词与每个备选语义扩展词的相似度,可以包括:

利用预先训练得到的词向量模型分别获取查询关键词及每个备选语义扩展词的词向量;其中,词向量模型为预先利用全部备选语义扩展词、相应的查询问题及文档训练得到的;

分别计算查询关键词的词向量与每个备选语义扩展词的词向量的相似度,作为查询关键词与每个备选语义扩展词的相似度。

在实现不同词之间相似度的计算时,可以是基于不同词的词向量之间的相似度实现的,从而能够有效表明不同词的语义之间的相似度。具体来说,可以利用深度学习训练词向量的技术,结合从历史上的查询问题、可供用户查询的全部文档以及从中提取出的全部词,训练词向量模型,利用该词向量模型计算从查询问题及文档中提取出的每个词的词向量,并利用该词向量模型计算用户当前输入的查询关键词的词向量,将该查询关键词的词向量与从查询问题及文档中提取出的每个词的词向量分别进行相似度计算。

需要说明的是,分别计算查询关键词与每个备选语义扩展词的相似度,可以包括:

按照下列公式计算查询关键词与任意备选语义扩展词的相似度;

其中,qi表示查询关键词中任意词的词向量,m表示查询关键词中词的数量,st表示任意备选语义扩展词的词向量,“·”表示向量内积,ci,t表示计算所得相似度。

在计算查询关键词与任意的备选语义扩展词的相似度时,可以通过上述公式进行计算,从而实现不同词之间相似度的有效计算。

另外,词向量模型可以采用skip-gram模型;当然根据实际需要进行的其他设定,也均在本发明的保护范围之内。

在一种具体应用场景中,如图2所示,本发明实施例提供的一种查询词自动扩展方法具体可以包括以下步骤:

101获取用户输入的查询问题与所有文档集合,进行数据预处理,包括数据清洗、无效或错误查询问题过滤、拼写纠错、停用词去除及分词处理等,把输入的连续文本处理成词串的形式,并将词串中所有的词汇总形成一个词表作为备选语义扩展词集合s1,并设置词表上限。

102利用深度学习训练词向量的技术,结合步骤101处理之后的词表与所有查询问题及文档,训练词向量模型,并计算词表中每一个词对应的词向量。

103针对用户当前输入的查询关键词,先进行第一轮搜索得到前topn的文档,把这些文档中包含的所有词作为备选反馈扩展词集合s2。

104将查询关键词通过词向量模型映射成词向量,并与备选语义扩展词集合s1中每一个词的词向量进行相似度计算,按相似度大小排序,选取前k个词作为扩展词集合t1。

105同步骤104,对备选反馈扩展词集合s2中每一个词与查询关键词进行相关性计算,按相关性得分大小排序,选取前p个词作为扩展词集合t2。

106对筛选出的两个扩展词集合t1和t2取并集,作为最终的扩展词加入到用户查询中,进行搜索。

进一步地,对于步骤102中涉及的深度学习词向量技术,采用skip-gram模型对银行领域的文本进行训练得到领域相关的词向量。

在步骤103中,对用户查询关键词通过tf-idf或bm25算法筛选候选的文档,并按得分排序,选取前n个文档作为相关文档。

在步骤104中,查询词向量qi表示查询关键词中第i个词的词向量,备选语义扩展词集合s1中第t个词st的词向量与查询关键词的词向量q的相似度ci,t的计算方式如下:

其中“·”表示向量内积。

在步骤105中,备选反馈扩展词集合s2中任意一词t与查询关键词的相关性得分rt计算方式如下:

本申请结合词向量间的语义关系与词共现的统计关系,引入相关性反馈信息,效果优于单一的语义关系或统计关系;领域内词向量的训练可以更加明确词的语义信息,从而提升查询扩展词的质量,提高搜索结果的准确率;并且通用性较强,除银行领域也适用于其他行业领域,可扩展性较强。

本发明实施例还提供了一种查询词自动扩展装置,如图3所示,具体可以包括:

获取模块11,用于:获取历史上用户输入的查询问题及可供用户查询的全部文档,获取查询问题及全部文档中的词均为备选语义扩展词;

扩展模块12,用于:获取用户当前输入的查询关键词,分别计算查询关键词与每个备选语义扩展词的相似度,基于计算所得相似度确定多个备选语义扩展词为第一扩展词;其中,第一扩展词对应相似度大于其他备选语义扩展词对应相似度;

查询模块13,用于:利用第一扩展词及查询关键词进行查询,得到相应的文档。

本发明实施例提供的一种查询词自动扩展装置,扩展模块还用于:利用第一扩展词及查询关键词进行查询之前,利用查询关键词进行查询,确定查询所得文档中多个文档均为扩展用文档,获取扩展用文档中的词为备选反馈扩展词;分别计算查询关键词与每个备选反馈扩展词的相关性,并基于计算所得相关性确定多个备选反馈扩展词为第二扩展词;其中,第二扩展词对应相关性大于其他备选语义扩展词对应相关性;

对应的,查询模块可以包括:

查询单元,用于:获取第一扩展词组成的集合与第二扩展词组成的集合的并集,并利用并集中的词及查询关键词进行查询。

本发明实施例提供的一种查询词自动扩展装置,扩展模块可以包括:

相关性计算单元,用于:按照下列公式计算查询关键词与任意备选反馈扩展词的相关性:

其中,rt表示计算所得相关性,t表示任意备选反馈扩展词,r表示扩展用文档的集合,d表示可供用户查询的全部文档的集合,p(t|r)表示t在r中出现的概率,p(t|d)表示t在d中出现的概率。

本发明实施例提供的一种查询词自动扩展装置,查询模块可以包括:

查询单元,用于:采用tf-idf算法或者bm25算法,利用第一扩展词及查询关键词进行查询或利用并集中的词及查询关键词进行查询。

本发明实施例提供的一种查询词自动扩展装置,扩展模块可以包括:

相似度计算单元,用于:利用预先训练得到的词向量模型分别获取查询关键词及每个备选语义扩展词的词向量;其中,词向量模型为预先利用全部备选语义扩展词、相应的查询问题及文档训练得到的;

分别计算查询关键词的词向量与每个备选语义扩展词的词向量的相似度,作为查询关键词与每个备选语义扩展词的相似度。

本发明实施例提供的一种查询词自动扩展装置,相似度计算单元包括:

相似度计算子单元,用于:按照下列公式计算查询关键词与任意备选语义扩展词的相似度;

其中,qi表示查询关键词中任意词的词向量,m表示查询关键词中词的数量,st表示任意备选语义扩展词的词向量,“·”表示向量内积,ci,t表示计算所得相似度。

本发明实施例提供的一种查询词自动扩展装置,词向量模型可以采用skip-gram模型。

本发明实施例还提供了一种查询词自动扩展设备,可以包括:

存储器,用于存储计算机程序;

处理器,用于执行计算机程序时实现如上任一项查询词自动扩展方法的步骤。

本发明实施例还提供了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可以实现如上任一项查询词自动扩展方法的步骤。

需要说明的是,本发明实施例提供的一种查询词自动扩展装置、设备及存储介质中相关部分的说明请参见本发明实施例提供的一种查询词自动扩展方法中对应部分的详细说明,在此不再赘述。另外,本发明实施例提供的上述技术方案中与现有技术中对应技术方案实现原理一致的部分并未详细说明,以免过多赘述。

对所公开的实施例的上述说明,使本领域技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1