本技术涉及人工智能(artificial intelligence,ai),尤其涉及一种信息搜索方法、系统、计算设备集群、计算机可读存储介质、计算机程序产品。
背景技术:
1、随着计算机技术的不断发展,信息的种类和数量呈爆炸性增长趋势。为了便于用户获取与特定内容相关的信息,搜索引擎应运而生。搜索引擎(search engine)是一种信息检索系统,旨在协助搜索互联网中的信息。具体地,搜索引擎可以根据用户输入的查询信息进行查询,获得符合查询条件的多个候选查询结果,并根据候选查询结果和查询信息之间的相关性,对多个候选查询结果进行排序,将排序后的多个候选查询结果确定为搜索结果,向用户返回搜索结果。
2、在实际搜索中,用户输入查询信息即开始一个搜索会话,用户可以在一个搜索会话中多次修改查询信息,以获得满意的搜索结果。搜索引擎可以基于搜索会话理解用户的搜索意图,如此,向用户提供符合搜索意图的候选查询结果,上述方法也称作会话式搜索(session search)。
3、在会话式搜索中,搜索引擎通常利用搜索会话构建搜索序列,例如是利用用户的多个查询信息以及每个查询信息下点击的查询结果构建搜索序列,将该搜索序列输入循环神经网络(recurrent neural network,rnn),根据rnn的输出,确定当前查询信息下的候选查询结果与当前查询信息之间的相关性,从而对候选查询结果进行排序。然而,线性的搜索序列难以有效表示搜索会话中包括的信息,如此,难以准确理解用户的搜索意图,降低了搜索的准确程度。
技术实现思路
1、本技术提供了一种信息搜索方法,该方法以拓扑图作为会话搜索模型的输入,能够提升信息搜索的准确程度和效率。本技术还提供了该方法对应的信息搜索系统、计算设备集群、计算机可读存储介质以及计算机程序产品。
2、第一方面,本技术提供一种信息搜索方法,该方法可以由信息搜索系统执行。信息搜索系统可以为软件系统,例如为搜索引擎,该软件系统可以部署在计算设备集群中。计算设备集群通过执行软件系统的程序代码,从而执行本技术的信息搜索方法。在一些可能的实现方式中,信息搜索系统也可以是具有信息搜索功能的硬件系统,该硬件系统运行时,执行本技术的信息搜索方法。例如,信息搜索系统可以是具有信息搜索功能的计算设备集群。
3、具体地,信息搜索系统获取第一搜索会话,其中,第一搜索会话包括当前查询信息、历史查询信息以及历史查询信息对应的搜索结果中被选中的目标查询结果,然后根据当前查询信息、历史查询信息以及历史查询信息对应的目标查询结果,对当前查询信息对应的多个候选查询结果中的至少一个候选查询结果构建拓扑图,该拓扑图包括用于指示查询信息的第一节点、用于指示查询结果的第二节点和用于指示关键词的第三节点以及节点之间的关系信息,接着将至少一个候选查询结果对应的拓扑图输入会话搜索模型,获得当前查询信息的搜索结果。
4、该方法构建了当前查询信息对应的候选查询结果的拓扑图,由于拓扑图中包括用于指示查询信息、查询结果以及关键词的不同类型的节点以及节点的关系信息,使得拓扑图能够表示搜索会话包括的多种信息以及多种信息之间的关系,如此,将拓扑图作为会话搜索模型的输入,能够准确地理解用户的搜索意图,获得符合用户检索需求的搜索结果,提升信息搜索的准确程度和效率。
5、在一些可能的实现方式中,至少一个候选查询结果包括第一候选查询结果,信息搜索系统可以从当前查询信息、历史查询信息和目标查询结果中提取关键词,根据当前查询信息和历史查询信息确定第一节点,根据目标查询结果和第一候选查询结果确定第二节点,根据关键词确定第三节点,接着信息搜索系统可以确定指示当前查询信息的第一节点和指示历史查询信息的第一节点的第一关系信息,指示历史查询信息的第一节点和指示目标查询结果的第二节点的第二关系信息,以及指示查询信息的第一节点、指示查询结果的第二节点和指示关键词的第三节点的第三关系信息。
6、该方法构建的拓扑图中包括用于指示不同信息的多种类型的节点,使得拓扑图能够表示搜索会话包括的多种信息以及多种信息之间的关系。与利用搜索会话构建的搜索序列相比,拓扑图能够关注到搜索会话的拓扑结构以及搜索会话中的信息异质性,优化了针对搜索会话的表示能力。
7、在一些可能的实现方式中,第一搜索会话包括当前查询信息、第一历史查询信息以及第一历史查询信息对应的搜索结果中被选中的第一目标查询结果,信息搜索系统还可以获取第二搜索会话,其中,第二搜索会话包括第二历史查询信息以及第二历史查询信息对应的搜索结果中被选中的第二目标查询结果,第二目标查询结果和第一目标查询结果相同,信息搜索系统可以根据当前查询信息、第一历史查询信息、第二历史查询信息以及第一目标查询结果,对当前查询信息对应的多个候选查询结果中的至少一个候选查询结果构建拓扑图。
8、该方法构建的拓扑图可以引入外部搜索会话对应的节点,针对不同搜索会话中选中了相同的目标查询结果的情况,考虑到外部搜索会话中第二历史查询信息与第一搜索会话中第一历史查询信息可以表示相似的搜索意图,通过将用于指示第二历史查询信息的节点添加至拓扑图,利用外部搜索会话丰富拓扑图中能够表示的信息。
9、在一些可能的实现方式中,第一搜索会话包括当前查询信息、第一历史查询信息以及第一历史查询信息对应的搜索结果中被选中的第一目标查询结果,信息搜索系统还可以获取第三搜索会话,其中,第三搜索会话包括与第一历史查询信息匹配的第三历史查询信息以及第三历史查询信息对应的搜索结果中被选中的第三目标查询结果,信息搜索系统可以根据当前查询信息、第一历史查询信息、第一目标查询结果以及第三目标查询结果,对当前查询信息对应的多个候选查询结果中的至少一个候选查询结果构建拓扑图。
10、该方法构建的拓扑图可以引入外部搜索会话对应的节点,针对不同搜索会话中存在相似的查询信息的情况,考虑到外部搜索会话中第三目标查询结果与第一搜索会话中第一目标查询结果可以表示相似的搜索意图下的选择,通过将用于指示第三查询结果的第二节点添加至拓扑图,利用外部搜索会话丰富拓扑图中能够表示的信息。
11、在一些可能的实现方式中,信息搜索系统可以将相似度大于设定相似度阈值的第三历史查询信息确定为与第一历史查询信息匹配的历史查询信息,如此,实现当前搜索会话中的历史查询信息与外部搜索会话中的历史查询信息的匹配。
12、在一些可能的实现方式中,会话搜索模型包括图模型和分类器,信息搜索系统可以将至少一个候选查询结果对应的拓扑图输入图模型进行特征提取,获得第一特征和第二特征,其中,第一特征包括拓扑图的特征,第二特征包括至少一个候选查询结果的特征,接着,信息搜索系统可以将第一特征和第二特征输入分类器,获得预测结果,其中,预测结果包括至少一个候选查询结果与当前查询信息的相关性。
13、该方法利用图模型学习拓扑图结构数据,并提取拓扑图和候选查询结果的特征,进而利用分类器获得候选查询结果与当前查询信息的相关性(例如是相关性评分),如此,可以利用相关性对候选查询结果进行排序,为用户提供相关性较高的搜索结果。
14、在一些可能的实现方式中,图模型包括图神经网络和池化层,该图神经网络以拓扑图为输入,以第二特征为第一输出,该池化层以该图神经网络的第二输出为输入,以第一特征为输出,该图神经网络的第二输出包括拓扑图中节点以及关系信息的特征。
15、该方法利用池化层对每一种类型的节点分别进行池化处理,实现针对拓扑图中多种类型的节点进行区分,使得池化层输出的第一特征包括拓扑图中不同类型的节点对应的不同特征,进而提取出更加细粒度的特征,提升会话搜索模型的表示能力。
16、在一些可能的实现方式中,信息搜索系统可以以最大化拓扑图中全局特征和局部特征之间的相关性为目标,训练会话搜索模型。
17、该方法通过以最大化拓扑图中全局特征和局部特征之间的相关性为目标,训练会话搜索模型,提升局部特征和与局部特征的节点类型对应的全局特征之间的关联或互信息,进而提升会话搜索模型的表示能力。
18、在一些可能的实现方式中,会话搜索模型包括图模型,该图模型用于提取拓扑图中的全局特征和局部特征,信息搜索系统可以获取拓扑图样本,利用图模型提取拓扑图样本的全局特征和局部特征,其中,拓扑图样本包括第一拓扑图和至少一个第二拓扑图,接着,信息搜索系统对第一拓扑图包括的多个类型的节点中至少一个目标类型节点,根据与目标类型节点对应的全局特征和与目标类型节点对应的局部特征,构造正样本,以及根据与目标类型节点对应的全局特征和所述第二拓扑图的局部特征,构造负样本,并将正样本和负样本输入判别器,根据判别结果和目标更新图模型的参数。
19、该方法构造的正样本中包括局部特征和与该局部特征的节点类型对应的全局特征,负样本中包括与该局部特征的节点类型对应的全局特征和其他拓扑图中的局部特征,利用正样本和负样本对会话搜索模型进行预训练,可以提升局部特征和与该局部特征的节点类型对应的全局特征之间的相关性,使得会话搜索模型中局部特征可以关联拓扑图中任意距离的、与节点类型对应的全局特征,进而使得会话搜索模型可以识别结构相似性,提升会话搜索模型的表示能力。
20、在一些可能的实现方式中,信息搜索系统可以通过判别器实际输出的判别结果和理想结果(即正样本的理想结果为1,负样本的理想结果为0)之间的差异,利用反向传播原理,更新图模型的参数,实现针对会话搜索模型的预训练。
21、在一些可能的实现方式中,信息搜索系统可以将搜索会话中的当前查询信息单独作为一种类型的节点,即拓扑图包括用于指示历史查询信息的第一节点、用于指示查询结果(包括目标查询结果和候选查询结果)的第二节点、用于指示关键词的第三节点和用于指示当前查询信息的第四节点以及节点之间的关系信息。如此,突出信息搜索中当前查询信息的重要程度,使得搜索结果更加贴合用户意图。
22、在一些可能的实现方式中,信息搜索系统可以向用户呈现当前查询信息的搜索结果,并向用户推荐下一次的查询信息,如此,提升用户的信息搜索效率。
23、第二方面,本技术提供一种信息搜索系统,所述系统包括:
24、交互模块,用于获取第一搜索会话,所述第一搜索会话包括当前查询信息、历史查询信息以及所述历史查询信息对应的搜索结果中被选中的目标查询结果;
25、构建模块,用于根据所述当前查询信息、历史查询信息以及所述历史查询信息对应的所述目标查询结果,对所述当前查询信息对应的多个候选查询结果中的至少一个候选查询结果构建拓扑图,所述拓扑图包括用于指示查询信息的第一节点、用于指示查询结果的第二节点和用于指示关键词的第三节点以及所述节点之间的关系信息;
26、推理模块,用于将所述至少一个候选查询结果对应的所述拓扑图输入会话搜索模型,获得所述当前查询信息的搜索结果。
27、在一些可能的实现方式中,所述至少一个候选查询结果包括第一候选查询结果,所述构建模块具体用于:
28、从所述当前查询信息、所述历史查询信息和所述目标查询结果中提取关键词;
29、根据所述当前查询信息和所述历史查询信息确定第一节点,根据所述目标查询结果和所述第一候选查询结果确定第二节点,根据所述关键词确定第三节点;
30、确定指示所述当前查询信息的第一节点和指示所述历史查询信息的第一节点的第一关系信息,指示所述历史查询信息的第一节点和指示所述目标查询结果的第二节点的第二关系信息,以及指示所述查询信息的第一节点、指示所述查询结果的第二节点和指示所述关键词的第三节点的第三关系信息。
31、在一些可能的实现方式中,所述第一搜索会话包括当前查询信息、第一历史查询信息以及所述第一历史查询信息对应的搜索结果中被选中的第一目标查询结果,所述交互模块还用于:
32、获取第二搜索会话,所述第二搜索会话包括第二历史查询信息以及所述第二历史查询信息对应的搜索结果中被选中的第二目标查询结果,所述第二目标查询结果和所述第一目标查询结果相同;
33、所述构建模块还用于:
34、根据所述当前查询信息、第一历史查询信息、第二历史查询信息以及所述第一目标查询结果,对所述当前查询信息对应的多个候选查询结果中的至少一个候选查询结果构建拓扑图。
35、在一些可能的实现方式中,所述第一搜索会话包括当前查询信息、第一历史查询信息以及所述第一历史查询信息对应的搜索结果中被选中的第一目标查询结果,所述交互模块还用于:
36、获取第三搜索会话,所述第三搜索会话包括与所述第一历史查询信息匹配的第三历史查询信息以及所述第三历史查询信息对应的搜索结果中被选中的第三目标查询结果;
37、所述构建模块还用于:
38、根据所述当前查询信息、第一历史查询信息、所述第一目标查询结果以及所述第三目标查询结果,对所述当前查询信息对应的多个候选查询结果中的至少一个候选查询结果构建拓扑图。
39、在一些可能的实现方式中,所述会话搜索模型包括图模型和分类器,所述推理模块具体用于:
40、将所述至少一个候选查询结果对应的所述拓扑图输入所述图模型进行特征提取,获得第一特征和第二特征,所述第一特征包括所述拓扑图的特征,所述第二特征包括所述至少一个候选查询结果的特征;
41、将所述第一特征和所述第二特征输入分类器,获得预测结果,所述预测结果包括所述至少一个候选查询结果与所述当前查询信息的相关性。
42、在一些可能的实现方式中,所述图模型包括图神经网络和池化层,所述图神经网络以所述拓扑图为输入,以所述第二特征为第一输出,所述池化层以所述图神经网络的第二输出为输入,以所述第一特征为输出,所述图神经网络的第二输出包括所述拓扑图中节点以及关系信息的特征。
43、在一些可能的实现方式中,所述会话搜索模型通过如下方式预训练得到:
44、以最大化所述拓扑图中全局特征和局部特征之间的相关性为目标,训练所述会话搜索模型。
45、在一些可能的实现方式中,所述会话搜索模型包括图模型,所述图模型用于提取拓扑图中的全局特征和局部特征;
46、所述系统还包括:
47、提取模块,用于获取拓扑图样本,利用所述图模型提取所述拓扑图样本的全局特征和局部特征,所述拓扑图样本包括第一拓扑图和至少一个第二拓扑图;
48、构造模块,用于对所述第一拓扑图包括的多个类型的节点中至少一个目标类型节点,根据与所述目标类型节点对应的全局特征和与所述目标类型节点对应的局部特征,构造正样本,以及根据与所述目标类型节点对应的全局特征和所述第二拓扑图的局部特征,构造负样本;
49、更新模块,用于将所述正样本和所述负样本输入判别器,根据判别结果和所述目标更新所述图模型的参数。
50、第三方面,本技术提供一种计算设备集群。所述计算设备集群包括至少一台计算设备,所述至少一台计算设备包括至少一个处理器和至少一个存储器。所述至少一个处理器、所述至少一个存储器进行相互的通信。所述至少一个处理器用于执行所述至少一个存储器中存储的指令,以使得计算设备或计算设备集群执行如第一方面或第一方面的任一种实现方式所述的信息搜索方法。
51、第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,所述指令指示计算设备或计算设备集群执行上述第一方面或第一方面的任一种实现方式所述的信息搜索方法。
52、第五方面,本技术提供了一种包含指令的计算机程序产品,当其在计算机或计算设备集群上运行时,使得计算设备或计算设备集群执行上述第一方面或第一方面的任一种实现方式所述的信息搜索方法。
53、本技术在上述各方面提供的实现方式的基础上,还可以进行进一步组合以提供更多实现方式。
1.一种信息搜索方法,其特征在于,应用于信息搜索系统,所述方法包括:
2.根据权利要求1所述的方法,其特征在于,所述至少一个候选查询结果包括第一候选查询结果,所述根据所述当前查询信息、历史查询信息以及所述历史查询信息对应的所述目标查询结果,对所述当前查询信息对应的多个候选查询结果中的至少一个候选查询结果构建拓扑图,包括:
3.根据权利要求1或2所述的方法,其特征在于,所述第一搜索会话包括当前查询信息、第一历史查询信息以及所述第一历史查询信息对应的搜索结果中被选中的第一目标查询结果,所述方法还包括:
4.根据权利要求1或2所述的方法,其特征在于,所述第一搜索会话包括当前查询信息、第一历史查询信息以及所述第一历史查询信息对应的搜索结果中被选中的第一目标查询结果,所述方法还包括:
5.根据权利要求1至4任一项所述的方法,其特征在于,所述会话搜索模型包括图模型和分类器,所述将所述至少一个候选查询结果对应的所述拓扑图输入会话搜索模型,获得所述当前查询信息的搜索结果,包括:
6.根据权利要求5所述的方法,其特征在于,所述图模型包括图神经网络和池化层,所述图神经网络以所述拓扑图为输入,以所述第二特征为第一输出,所述池化层以所述图神经网络的第二输出为输入,以所述第一特征为输出,所述图神经网络的第二输出包括所述拓扑图中节点以及关系信息的特征。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述会话搜索模型通过如下方式预训练得到:
8.根据权利要求7所述的方法,其特征在于,所述会话搜索模型包括图模型,所述图模型用于提取拓扑图中的全局特征和局部特征;
9.一种信息搜索系统,其特征在于,所述系统包括:
10.根据权利要求9所述的系统,其特征在于,所述至少一个候选查询结果包括第一候选查询结果,所述构建模块具体用于:
11.根据权利要求9或10所述的系统,其特征在于,所述第一搜索会话包括当前查询信息、第一历史查询信息以及所述第一历史查询信息对应的搜索结果中被选中的第一目标查询结果,所述交互模块还用于:
12.根据权利要求9或10所述的系统,其特征在于,所述第一搜索会话包括当前查询信息、第一历史查询信息以及所述第一历史查询信息对应的搜索结果中被选中的第一目标查询结果,所述交互模块还用于:
13.根据权利要求9至12任一项所述的系统,其特征在于,所述会话搜索模型包括图模型和分类器,所述推理模块具体用于:
14.根据权利要求13所述的系统,其特征在于,所述图模型包括图神经网络和池化层,所述图神经网络以所述拓扑图为输入,以所述第二特征为第一输出,所述池化层以所述图神经网络的第二输出为输入,以所述第一特征为输出,所述图神经网络的第二输出包括所述拓扑图中节点以及关系信息的特征。
15.根据权利要求9至14任一项所述的系统,其特征在于,所述会话搜索模型通过如下方式预训练得到:
16.根据权利要求15所述的系统,其特征在于,所述会话搜索模型包括图模型,所述图模型用于提取拓扑图中的全局特征和局部特征;
17.一种计算设备集群,其特征在于,所述计算设备集群包括至少一台计算设备,所述至少一台计算设备包括至少一个处理器和至少一个存储器,所述至少一个存储器中存储有计算机可读指令;所述至少一个处理器执行所述计算机可读指令,以使得所述计算设备集群执行如权利要求1至8中任一项所述的方法。
18.一种计算机可读存储介质,其特征在于,包括计算机可读指令;所述计算机可读指令用于实现权利要求1至8任一项所述的方法。
19.一种计算机程序产品,其特征在于,包括计算机可读指令;所述计算机可读指令用于实现权利要求1至8任一项所述的方法。