一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

基于知识图谱的搜索方法、装置、计算机设备及存储介质

2022-06-18 03:27:51 来源:中国专利 TAG:


1.本技术涉及信息检索技术领域,特别涉及一种基于知识图谱的搜索方法、 装置、计算机设备及存储介质。


背景技术:

2.搜索是用户日常高频使用的功能。例如常见的账号搜索场景,用户通过搜 索账号来获取与该账号有关的信息;或反之,通过搜索与账号有关的信息来找 到该账号。在账号搜索场景中,以账号为中心可构建具有多维属性与信息的知 识图谱,该知识图谱中包括账号所属的机构或品牌、该机构的上下级机构等等。 用户希望通过基于知识图谱的搜索能够得到与该账号最相关的信息。
3.相关技术基于单个候选实体与查询文本的匹配度,对候选实体进行排序, 在这种情况下得到的搜索结果可能仅为字面上的最相似结果,而非结合语境获 得的最匹配结果。
4.如何提升基于知识图谱的搜索排序准确度,是急需解决的问题。


技术实现要素:

5.本技术实施例提供了一种基于知识图谱的搜索方法、装置、计算机设备及 存储介质,能够通过自注意力层实现查询文本和候选实体列表中的各个候选实 体的交互,再基于交互后的查询文本和候选实体进行相关度打分及优化排序。
6.所述技术方案如下:
7.根据本技术的一个方面,提供了一种基于知识图谱的搜索方法。所述方法 包括:
8.在知识图谱中确定与查询文本对应的候选实体列表,所述候选实体列表包 括至少一个候选实体;
9.对所述查询文本进行编码得到第一查询向量,以及对所述候选实体的知识 图谱信息进行编码得到第一候选向量;
10.将所述第一查询向量和所述第一候选向量输入自注意力层,得到第二查询 向量和第二候选向量;
11.根据所述第二查询向量和所述第二候选向量的向量相似度,确定所述查询 文本与所述候选实体的相关度打分;
12.根据所述相关度打分对所述候选实体进行排序,以及基于排序结果输出搜 索结果。
13.根据本技术的另一方面,提供了一种基于知识图谱的搜索装置,所述装置 包括:
14.确定模块,用于在知识图谱中确定与查询文本对应的候选实体列表,所述 候选实体列表包括至少一个候选实体;
15.编码模块,用于对所述查询文本进行编码得到第一查询向量,以及对所述 候选实体的知识图谱信息进行编码得到第一候选向量;
16.交互模块,用于将所述第一查询向量和所述第一候选向量输入自注意力层, 得到
第二查询向量和第二候选向量;
17.所述确定模块,还用于根据所述第二查询向量和所述第二候选向量的向量 相似度,确定所述查询文本与所述候选实体的相关度打分;
18.排序输出模块,用于根据所述相关度打分对所述候选实体进行排序,以及 基于排序结果输出搜索结果。
19.根据本技术的另一方面,提供了一种计算机设备,所述计算机设备包括处 理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加 载并执行以实现如本技术各个方面提供的基于知识图谱的搜索方法。
20.根据本技术的另一方面,提供了一种计算机可读存储介质,所述存储介质 中存储有计算机指令,所述计算机指令由处理器加载并执行以实现如本技术各 个方面提供的基于知识图谱的搜索方法。
21.根据本技术的一个方面,提供了一种计算机程序产品,该计算机程序产品 包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的 处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令, 使得该计算机设备执行上述基于知识图谱的搜索方法。
22.本技术实施例至少包括如下有益效果:
23.根据查询文本确定与其对应的候选实体列表,通过对候选实体的知识图谱 信息和查询文本进行编码得到其分别对应的向量,再将编码得到的向量输入自 注意力层进行交互,得到查询文本和候选实体的交互后的向量;通过查询文本 和候选实体的交互后的向量的相似度来比较查询文本和候选实体的相似度,实 现搜索排序。其中,通过自注意力层实现查询文本和候选实体列表中的各个候 选实体的交互,使得查询文本和各个候选实体携带有彼此的信息,间接的实现 查询文本与所有候选实体的互相比较以区分相关度差异,这种基于语义信息的 搜索提升了搜索的准确性。
附图说明
24.为了更清楚地介绍本技术实施例中的技术方案,下面将对本技术实施例描 述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是 本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的 前提下,还可以根据这些附图获得其它的附图。
25.图1是本技术一个示例性实施例提供的一种计算机系统的结构框图;
26.图2是本技术一个示例性实施例提供的基于知识图谱的搜索方法的流程示 意图;
27.图3是本技术一个示例性实施例提供的以账号为中心的机构图谱的示意图;
28.图4是本技术一个示例性实施例提供的基于知识图谱的搜索方法的流程示 意图;
29.图5是本技术一个示例性实施例提供的获取查询文本和候选实体的参考相 关度打分的过程的示意图;
30.图6是本技术一个示例性实施例提供的查询文本和候选实体对应的输入自 注意力层的信息组合的示意图;
31.图7是本技术一个示例性实施例提供的确定查询文本和候选实体的相关度 打分的过程的示意图;
32.图8是本技术一个示例性实施例提供的基于知识图谱的搜索装置的结构框 图;
33.图9是本技术一个示例性实施例提供的计算机设备的框图。
具体实施方式
34.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术 实施方式作进一步地详细描述。
35.下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同 或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一 致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术 的一些方面相一致的装置和方法的例子。
36.在本技术的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的, 而不能理解为指示或暗示相对重要性。在本技术的描述中,需要说明的是,除 非另有明确的规定和限定,术语“相连”、“连接”应做广义理解,例如,可以是固 定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电 连接;可以是直接相连,也可以通过中间媒介间接相连。对于本领域的普通技 术人员而言,可以具体情况理解上述术语在本技术中的具体含义。此外,在本 申请的描述中,除非另有说明,“多个”是指两个或两个以上。“和/或”,描述关 联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单 独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关 联对象是一种“或”的关系。
37.为了本技术实施例所示方案易于理解,下面对本技术实施例中出现的名词 进行介绍。
38.人工智能(artificial intelligence,ai):是利用数字计算机或者数字计算机控 制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最 佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的 一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似 的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与 实现方法,使机器具有感知、推理与决策的功能。
39.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有 软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、 云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。 人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技 术以及机器学习/深度学习等几大方向。
40.机器学习(machine learning,ml):是一门多领域交叉学科,涉及概率论、 统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样 模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结 构使之不断改善自身的性能。机器学习是人工智能的核心,是使计算机具有智 能的根本途径,其应用遍及人工智能的各个领域。机器学习和深度学习通常包 括人工神经网络、置信网络、强化学习、迁移学习、归纳学习、示教学习等技 术。
41.深度学习(deep learning,dl):是机器学习领域中的一个新的研究方向, 通过学习样本数据的内在规律和表示层次,学习过程中获得的信息对诸如文字、 图像和声音等数
据的解释有很大的帮助,最终使得机器能够像人一样具有分析 学习能力,能够识别文字、图像和声音等数据。
42.知识图谱(knowledge graph,kg):通过可视化技术描述知识资源及其 载体,构建和显示知识资源及其载体之间的相互联系。常见的知识图谱通过节 点和节点之间的连线表示,其中,节点表示实体,节点之间的连线表示实体之 间的关系。
43.知识图谱通常通过三元组来描述知识图谱中的实体之间的关系。常见的三 元组可表示为两个实体及其之间的关系,例如(“张三”,“李四”,“邻居”);或 者是实体、属性及属性值,例如(“张三”,“居住地”,“北京”)。
44.自然语言处理(natural language process,nlp):是研究能实现人与计算 机之间用自然语言进行有效通信的各种理论和方法,主要应用于机器翻译、观 点提取、文本分类、问题回答、文本语义对比、语音识别,等等。
45.随着人工智能技术研究和进步,人工智能技术在多个领域展开研究和应用, 例如常见的智能家居、智能穿戴设备、虚拟助理、智能音箱、智能营销、无人 驾驶、自动驾驶、无人机、机器人、智能医疗、智能客服等,相信随着技术的 发展,人工智能技术将在更多的领域得到应用,并发挥越来越重要的价值。
46.本技术实施例提供的方案涉及人工智能的神经网络、深度学习等技术,具 体通过下文实施例进行说明。
47.在搜索场景中,如果仅将查询文本和候选实体进行字面的简单匹配的话, 常常会导致搜索结果排序的不准确。例如,在语境“足球世界杯中,a国战胜b 国”中,实体“a国”对应的候选实体更合适的为“a国足球队”,而非“a国 (国家)”。当正例“a国足球队”和负例“a国(国家)”单独与查询文本进行 匹配时,看起来都是正确的;只有将正例和负例放在一起和查询文本进行比较, 才能发现正例是更相关的。因此,仅通过计算查询文本和候选实体的相似度来 对搜索结果进行排序是不准确的。为了解决这一问题,需要在搜索中利用各个 候选实体与查询文本的交互,提升搜索的准确度。
48.本技术提出的基于知识图谱的搜索方法,通过将基于知识图谱确定的候选 实体与查询文本进行交互,根据交互后得到的向量的相似度确定候选实体与查 询文本的相关度打分,提升了搜索结果的准确性。
49.图1示出了本技术一个示例性实施例提供的一种计算机设备的结构示意图。 该设备包括:总线101、处理器102、存储器103。
50.处理器102包括一个或者一个以上处理核心,处理器102通过运行软件程 序以及模块,从而执行各种功能应用以及信息处理。
51.存储器103通过总线101与处理器102相连。
52.存储器103可用于存储至少一个指令,处理器102用于执行该至少一个指 令,以实现下述方法实施例中的各个步骤。
53.可选地,存储器103还包括一个或多个寄存器104。寄存器104可用于存储 查询文本、候选实体列表、候选实体对应的自然语言文本、第一查询向量、第 一候选向量、第二查询向量、第二候选向量、查询文本和候选实体的参考相关 度打分、参考排名,等等。
54.此外,存储器103可以由任何类型的易失性或非易失性存储设备或者它们 的组合实现,易失性或非易失性存储设备包括但不限于:磁盘或光盘,电可擦 除可编程只读存储
器(electrically-erasable programmable read only memory, eeprom),可擦除可编程只读存储器(erasable programmable read only memory, eprom),静态随时存取存储器(static random access memory,sram),只读 存储器(read-only memory,rom),磁存储器,快闪存储器,可编程只读存储 器(programmable read-only memory,prom)。
55.图2示出了本技术一个示例性实施例提供的基于知识图谱的搜索方法的流 程示意图。示例性的,该方法可由图1所示的计算机设备执行。该方法包括如 下步骤:
56.步骤210:在知识图谱中确定与查询文本对应的候选实体列表;
57.示例性的,查询文本为待搜索的文本信息。例如,用户在用户界面的搜索 区域输入的文本信息;或者,用户通过点击用户界面上的可选控件选择待搜索 的文本信息,等等。
58.候选实体列表包括至少一个候选实体。候选实体列表为根据查询文本确定 的知识图谱中的候选实体的集合。
59.示例性的,根据查询文本进行搜索,将与查询文本相似度最高的前若干个 候选实体列入候选实体列表。本技术对候选实体列表中的候选实体的数量不加 以限制。
60.在一种可能的实施方式中,根据查询文本搜索得到与查询文本字面相似度 最高的若干个实体,将其列入候选实体列表。例如,用户查询“足球比赛中,a 国获得冠军”,候选实体列表中的候选实体可能包括“a国足球队”、“a国”、“足 球”,等等。
61.在一种可能的实施方式中,在账号搜索场景中,根据查询文本的信息搜索 得到与查询文本字面相似度最高的若干个账号,将其列入候选实体列表。例如, 用户查询“足球”,候选实体列表中账号可能包括账号名中有“足球”、账号作 者名中有“足球”、账号简介中有“足球”等等的账号。
62.步骤220:对查询文本进行编码得到第一查询向量,以及对候选实体的知识 图谱信息进行编码得到第一候选向量;
63.示例性的,将查询文本和候选实体对应的自然语言文本转换为向量形式, 以进行后续的相似度计算。
64.示例性的,将查询文本输入bert(bidirectional encoder representations fromtransformers,预训练的基于变换器的双向编码器表示技术)层进行编码,得到 第一查询向量;以及,将候选实体对应的自然语言文本输入bert层进行编码, 得到第一候选向量。
65.示例性的,将查询文本和候选实体对应的自然语言文本转换为向量形式, 还可以采用one-hot(独热)编码、基于矩阵的分布式表示、基于聚类的分布式 表示、基于其他神经网络的分布式表示等多种方式。
66.本技术对将查询文本和候选实体对应的自然语言文本转换为向量形式的方 法不加以限制。
67.步骤230:将第一查询向量和的第一候选向量输入自注意力层,得到第二查 询向量和第二候选向量;
68.示例性的,获取候选实体的参考相关度打分和参考排名,参考相关度打分 用于指示候选实体和查询文本的相关度,参考排名用于指示候选实体列表中的 候选实体与查询文本的相关度排名;将查询文本对应的第一信息组合和候选实 体对应的第二信息组合输入自注意力层,得到第二查询向量和第二候选向量; 其中,第一信息组合包括第一查询向
量和第一标识信息,第二信息组合包括第 一候选向量,第二标识信息、参考相关度打分和参考排名,第一标识信息用于 指示第一查询向量为与查询文本对应的向量,第二标识信息用于指示第一候选 向量为与候选实体对应的向量。
69.示例性的,将第一查询向量和第一候选向量的向量相似度,确定为候选实 体的参考相关度打分;根据参考相关度打分确定候选实体列表中的候选实体的 参考排名。
70.也即,先根据查询文本对应的第一查询向量和候选实体对应的第一候选向 量之间的向量相似度确定候选实体的参考相关度打分;再对候选实体列表中所 有候选实体的参考相关度打分进行排序,确定候选实体的参考排名。然后,将 查询文本对应的第一查询向量和用于指示第一查询向量的第一标识信息,以及, 候选实体对应的第一候选向量、用于指示第一候选向量的第二标识信息、参考 相关度打分和参考排名,输入自注意力层,得到查询文本对应的第二查询向量 和候选实体对应的第二候选向量。
71.步骤240:根据第二查询向量和第二候选向量的向量相似度,确定查询文本 与候选实体的相关度打分;
72.示例性的,通过计算向量点乘得到第二查询向量和第二候选向量的向量相 似度,确定查询文本与候选实体的相关度打分;或,通过计算欧氏距离得到第 二查询向量和第二候选向量的向量相似度,确定查询文本与候选实体的相关度 打分;或,通过计算向量余弦得到第二查询向量和第二候选向量的向量相似度, 确定查询文本与候选实体的相关度打分。
73.本技术对计算第二查询向量和第二候选向量的向量相似度的方法不加以限 制。
74.步骤250:根据相关度打分对候选实体进行排序,以及基于排序结果输出搜 索结果。
75.示例性的,将候选实体列表中的候选实体与查询文本的相关度打分按照从 高到低的顺序进行排序,并且按照该顺序输出搜索结果。例如,将候选实体列 表中与查询文本相关度最高的前十个候选实体按照相关度打分从高到低的顺序 输出至用户界面。
76.综上所述,本技术实施例提供的基于知识图谱的搜索方法,在根据查询文 本确定候选实体列表后,将查询文本和候选实体编码得到的向量输入自注意力 层进行交互,再基于交互后获得的查询文本和候选实体对应的向量计算向量相 似度,确定查询文本和候选实体的相关度打分,从而实现对搜索结果的排序。 该方法通过自注意力层将查询文本和各个候选实体进行交互,使得查询文本和 各个候选实体都携带有彼此的信息,进而最终获得的相关度打分为基于整体语 义信息获得的最匹配的结果,提升了搜索的准确性。
77.以下实施例以知识图谱为以账号为中心的机构图谱为例,展示账号搜索场 景中的基于知识图谱的搜索方法。
78.图3示出了一个示例性实施例提供的以账号为中心的机构图谱。图3所示 的机构图谱的中心为账号50。账号50具有三个属性,分别为账号50本身的属 性、账号50所属的机构51以及账号50所属的品牌52。其中,账号50本身的 属性包括账号类型63及账号同义词64;机构51的属性包括机构同义词53、上 级机构55及其上级机构同义词56、下级机构57及下级机构同义词58;品牌52 的属性包括品牌同义词54、上级品牌59及上级品牌同义词60、下级品牌61及 下级品牌同义词62。
79.图4示出了本技术一个示例性实施例提供的基于知识图谱的搜索方法的流 程图。
示例性的,该方法可由图1所示的计算机设备执行。该方法包括如下步 骤:
80.步骤310:在知识图谱中确定与查询文本对应的候选实体列表;
81.示例性的,查询文本为待搜索的文本信息。例如,用户在用户界面的搜索 区域输入的文本信息;或者,用户通过点击用户界面上的控件选择待搜索的文 本信息,等等。
82.候选实体列表包括至少一个候选账号。候选实体列表为根据查询文本确定 的知识图谱中的候选账号的集合。
83.示例性的,根据查询文本进行搜索,将与查询文本相似度最高的前若干个 候选账号列入候选实体列表。本技术对候选实体列表中的候选账号的数量不加 以限制。
84.例如,在账号搜索场景中,根据查询文本的信息搜索得到与查询文本字面 相似度最高的若干个账号,将其列入候选实体列表。例如,用户查询“专利”, 候选实体列表中包括账号名中包含“专利”的账号、作者名中包含“专利”的 账号、账号简介中包含“专利”的账号、发布内容中包含“专利”的账号,等 等。
85.步骤322:对查询文本进行编码得到第一查询向量;
86.示例性的,将查询文本转换为向量形式,以进行后续的信息交互和相似度 计算。
87.示例性的,将查询文本输入bert层进行编码,得到第一查询向量。
88.示例性的,将查询文本转换为向量还可以采用one-hot(独热)编码、基于 矩阵的分布式表示、基于聚类的分布式表示、基于其他神经网络的分布式表示 等多种方式。
89.本技术对将查询文本编码为第一查询向量的方法不加以限制。
90.步骤324:获取候选实体对应的知识图谱文本;
91.知识图谱文本是基于候选实体在知识图谱中的图谱信息转换得到的自然语 言文本。在账号搜索场景中,知识图谱文本即基于候选实体列表中的账号在机 构图谱中的信息转换得到的自然语言文本。
92.示例性的,在知识图谱对应的语料库中查询与候选实体对应的知识图谱文 本;其中,语料库包括知识图谱中各个实体对应的知识图谱文本,每个实体对 应的知识图谱文本是预先基于实体在知识图谱中的图谱信息进行转换得到的自 然语言文本。
93.在账号搜索场景中,在机构图谱对应的语料库中查询与候选实体列表中的 账号对应的知识图谱文本;其中,语料库包括机构图谱中各个账号对应的知识 图谱文本,每个账号对应的知识图谱文本是预先基于账号在机构图谱中的图谱 信息进行转换得到的。
94.示例性的,知识图谱中的图谱信息可以被表示为三元组信息。三元组信息 包括第一实体、第二实体及第一实体和第二实体之间的联系,例如三元组为(人 物a,人物b,同事),(人物a,创立,公司c),等等;或者,三元组信息包 括实体、该实体的属性、该属性的属性值,例如三元组为(人物a,出生年份, 2000),(学校d,地理位置,北京),等等。
95.在账号搜索场景中,账号在机构图谱中的图谱信息可以被表示为属性三元 组信息。属性三元组信息包括账号、该账号的属性、该属性的属性值,即属性 三元组可表示为(账号名,属性名,属性值)。
96.在一种可能的实施方式中,账号的属性包括账号本身的信息、机构及品牌。 其中,账号本身的信息包括账号名、账号类型、账号描述、账号名同义词,等 等;机构包括账号所属机构、账号所属机构同义词、账号所属机构的上级机构、 账号所属机构的上级机构的同义词、账号所属机构的下级机构、账号所属机构 的下级机构的同义词,等等;品牌包括账号
所属品牌、账号所属品牌的上级品 牌、账号所属品牌的上级品牌的同义词、账号所属品牌的下级品牌、账号所属 品牌的下级品牌的同义词,等等。例如,属性三元组为(账号a,机构,b大学), 即表示该账号a所属机构为b大学;属性三元组为(账号c,品牌,d品牌), 即表示账号c所属品牌为d品牌。
97.示例性的,将实体在知识图谱中的图谱信息表示为三元组信息;将实体对 应的三元组信息,转换为实体对应的知识图谱文本。
98.在账号搜索场景中,将账号在机构图谱中的图谱信息表示为属性三元组, 属性三元组包括账号、账号的属性和属性的属性值;将账号对应的属性三元组 拼接为知识图谱文本。
99.示例性的,将实体对应的全部的三元组信息,转换为实体对应的知识图谱 文本;或者,将实体对应的一部分三元组信息,转换为实体对应的知识图谱文 本。例如,在用于表征实体之间的联系的语料库中,仅将表示两个实体之间联 系的三元组,即(第一实体,第二实体,联系),转换为实体对应的知识图谱文 本;在用于表征实体的属性的语料库中,仅将表示该实体的属性的三元组,即(实体,属性名,属性值),转换为实体对应的知识图谱文本。
100.在账号搜索场景中,将账号对应的全部的属性三元组信息,转换为账号对 应的知识图谱文本;或者,将账号对应的一部分属性三元组信息,转换为账号 对应的知识图谱文本。例如,在表示账号的品牌的语料库中,仅需将账号对应 的属性为品牌的属性三元组,转换为知识图谱文本;在表示账号的机构语料库 中,仅需将账号对应的属性为机构的属性三元组,转换为知识图谱文本。
101.本技术对转换为知识图谱文本的图谱信息的范围不加以限制。
102.示例性的,在实体对应的每个三元组信息的末尾添加第一语义符,并将至 少两个处理后的三元组信息首尾拼接,得到第一知识图谱文本,第一语义符用 于指示三元组信息之间的分隔;在第一知识图谱文本的开头添加第二语义符, 得到实体对应的知识图谱文本,第二语义符用于指示实体对应的知识图谱文本 的开端。
103.在账号搜索场景中,在账号对应的每个属性三元组的末尾添加第一语义符, 并将至少两个处理后的属性三元组首尾拼接,得到第一知识图谱文本,第一语 义符用于指示属性三元组之间的分隔;在第一知识图谱文本的开头添加第二语 义符,得到账号对应的知识图谱文本,第二语义符用于指示账号对应的知识图 谱文本的开端。
104.示例性的,将至少两个处理后的三元组信息按照任意顺序进行首尾拼接; 或者,按照预先设定的顺序进行首尾拼接,例如,根据属性的优先级来进行排 序,或者,根据属性的音序进行排序,等等。
105.在一种可能的实施方式中,对账号的属性设置优先级,例如,账号本身的 信息》机构》品牌,上级机构》下级机构,上级品牌》下级品牌,等等;根据属性 三元组中属性的优先级对属性三元组进行排列。再例如,对于同一个属性的属 性三元组,根据属性值的音序对属性三元组进行排列。将排列后的属性三元组 进行首尾拼接。
106.本技术对三元组信息进行拼接的顺序不加以限制。
107.在一种可能的实施方式中,第一语义符为[sep],第二语义符为[cls]。
[0108]
在一种可能的实施方式中,属性三元组表示为(账号名,属性名,属性值), 将账号对应的至少两个属性三元组拼接为知识图谱文本。在属性三元组信息的 末尾添加第一语
义符[sep],将属性三元组转换为自然语言文本“账号名属性名: 属性值[sep]”;再将至少两个添加了第一语义符的属性三元组首尾拼接,得到第 一知识图谱文本,例如“账号名属性名1属性值1[sep]账号名属性名2属性 值2[sep]
……
账号名属性名n属性值n[sep]”;在第一知识图谱文本的开头添 加第二语义符[cls],得到账号对应的知识图谱文本,例如,“[cls]账号名属 性名1属性值1[sep]账号名属性名2属性值2[sep]
……
账号名属性名n属 性值n[sep]”。以学院a的账号为例,其对应的知识图谱文本可以为“[cls]学 院a账号类型:服务号[sep]学院a机构:大学b[sep]学院a下级机构:系科 c[sep]”。
[0109]
步骤326:对候选实体对应的知识图谱文本进行编码得到第一候选向量;
[0110]
将候选实体对应的知识图谱文本输入bert层进行编码,得到第一候选向 量;即,将候选实体列表中的账号对应的知识图谱文本输入bert层进行编码, 得到第一候选向量。
[0111]
示例性的,将候选实体对应的知识图谱文本转换为向量形式,还可以采用 one-hot(独热)编码、基于矩阵的分布式表示、基于聚类的分布式表示、基于 其他神经网络的分布式表示等多种方式。
[0112]
本技术对将候选实体对应的知识图谱文本转换为向量形式的方法不加以限 制。
[0113]
步骤330:将第一查询向量和第一候选向量输入自注意力层,得到第二查询 向量和第二候选向量;
[0114]
示例性的,获取候选实体的参考相关度打分和参考排名,参考相关度打分 用于指示候选实体和查询文本的相关度,参考排名用于指示候选实体列表中的 候选实体与查询文本的相关度排名;将查询文本对应的第一信息组合和候选实 体对应的第二信息组合输入自注意力层,得到第二查询向量和第二候选向量; 其中,第一信息组合包括第一查询向量和第一标识信息,第二信息组合包括第 一候选向量,第二标识信息、参考相关度打分和参考排名,第一标识信息用于 指示第一查询向量为与查询文本对应的向量,第二标识信息用于指示第一候选 向量为与候选实体对应的向量。
[0115]
示例性的,将第一查询向量和第一候选向量的向量相似度,确定为候选实 体的参考相关度打分;根据参考相关度打分确定候选实体列表中的候选实体的 参考排名。
[0116]
也即,先根据候选实体列表中的账号对应的第一候选向量与查询文本对应 的第一查询向量之间的向量相似度,确定候选实体列表中的账号的参考相关度 打分;将候选实体列表中的账号的参考相关度打分从高到低排列,确定账号的 参考排名;将查询文本对应的第一信息组合和候选实体列表中的账号对应的第 二信息组合输入自注意力层,得到第二查询向量和第二候选向量;其中,第一 信息组合包括查询文本对应的第一查询向量和第一标识信息,第二信息组合包 括账号对应的第一候选向量、第二标识信息、参考相关度打分和参考排名,第 一标识信息用于指示第一查询向量为与查询文本对应的向量,第二标识信息用 于指示第一候选向量为与候选实体列表中的账号对应的向量。
[0117]
在一种可能的实施方式中,获取候选实体的参考相关度打分的过程如图5 所示,查询文本21通过共享bert层23进行编码得到第一查询向量rq24,候选 实体22通过共享bert层23进行编码得到第一候选向量re25;将第一查询向量 rq24和第一候选向量re25的向量相似度确定为参考相关度打分26。在获取候选 实体列表中的k个候选实体的参考相关度打分后,将其从高到低进行排序,确 定k个候选实体的参考排名。
[0118]
在一种可能的方式中,将查询文本对应的第一信息组合和候选实体对应的 第二
信息组合输入自注意力层的过程如图6所示。输入自注意力层27的信息包 括第一查询向量/第一候选向量(查询/实体映射)31、标识信息(分割映射)32、 参考排名(排序位置映射)33及参考相关度打分(点方法映射)34;输出自注 意力层27的信息为第二查询向量/第二候选向量35。对应于第一查询向量的第 一信息组合中包括第一查询向量(如图6中的cls、q)和用于指示第一查询向量 为查询文本对应的向量的第一标识(图6中的第一标识信息表示为0);对应于 候选实体的第二信息组合中包括第一候选向量(如图6中的d1、d2、d3、d4)、 第二标识信息(图6中的第二标识信息表示为1)、参考相关度打分、参考排名。
[0119]
步骤340:根据第二查询向量和第二候选向量的向量相似度,确定查询文本 与候选实体的相关度打分;
[0120]
示例性的,通过计算向量点乘得到第二查询向量和第二候选向量的向量相 似度,确定查询文本与候选实体列表中的账号的相关度打分;或,通过计算欧 氏距离得到第二查询向量和第二候选向量的向量相似度,确定查询文本与候选 实体列表中的账号的相关度打分;或,通过计算向量余弦得到第二查询向量和 第二候选向量的向量相似度,确定查询文本与候选实体列表中的账号的相关度 打分。
[0121]
步骤350:根据相关度打分对候选实体进行排序,以及基于排序结果输出搜 索结果。
[0122]
示例性的,将候选实体列表中的账号与查询文本的相关度打分按照从高到 低的顺序进行排序,并且按照该顺序输出搜索结果。例如,将候选实体列表中 与查询文本相关度最高的前十个账号输出至用户界面。
[0123]
图7示出了上述步骤310至步骤350的实施过程。首先根据查询文本21确 定与查询文本21对应的候选实体列表,候选实体列表中包括k个候选实体22, k为正整数;获取候选实体22对应的自然语言文本后,将查询文本21输入共享 bert层23进行编码,得到第一查询向量rq24,将候选实体22对应的自然语言 文本输入共享bert层23进行编码,得到第一候选向量re25;将第一查询向量 rq24和第一候选向量re25输入自注意力层27,得到第二查询向量rq28和第二候 选向量re29;根据第二查询向量rq28和第二候选向量re29的向量相似度确定查 询文本与候选实体的相关度打分30。
[0124]
综上所述,本技术实施例提供的基于知识图谱的搜索方法,将查询文本对 应的第一查询向量和候选实体对应的第一候选向量输入自注意力层,得到第二 查询向量和第二候选向量,使得第一查询向量和第一候选向量通过自注意力层 进行交互,携带上相互的信息,间接实现查询文本与所有候选实体的相互比较 以区分候选实体的相关度差异,使得在搜索匹配的过程中不仅进行字面上的匹 配,而且包含语义上的匹配,提升了搜索的精确度。
[0125]
此外,本技术实施例提供的基于知识图谱的搜索方法,根据知识图谱中的 图谱信息将候选实体转换为知识图谱文本,再对该知识图谱文本和查询文本进 行后续的编码、交互、相关度打分计算。通过将知识图谱中的图谱信息转换为 知识图谱文本,将基于“查询文本与候选实体”的搜索转换为“查询文本与候 选实体对应的知识图谱文本”的搜索,将知识图谱中的图谱信息携带在候选实 体对应的知识图谱文本中,丰富了候选实体的信息,进一步提升了搜索的精确 度。
[0126]
在社交应用程序或通讯应用程序中,用户常常需要使用账号搜索功能来快 速找
到特定的账号。例如,用户通过查询对账号的备注来找到账号、用户通过 查询品牌名称来找到属于该品牌的账号,等等。
[0127]
以应用程序为微信为例,基于如图3所示的以账号为中心的机构图谱实现 对账号的搜索功能;其中,该机构图谱包括账号的属性及属性值,例如,账号 本身的信息、账号所属品牌的相关信息、账号所属机构的相关信息,等等。
[0128]
在用户输入查询文本后,在机构图谱中确定与该查询文本对应的候选账号 列表。例如,用户希望通过账号搜索功能找到有关游戏的账号,于是输入查询 文本“热门游戏订阅号”;基于用户输入的查询文本,确定与该查询文本对应的 候选账号列表,候选账号列表中的候选账号可能具有的特征是:账号名称中包 含“游戏”、账号说明中包含“游戏”、账号发布的内容中包含“热门”、账号类 型为订阅号,等等。
[0129]
在确定候选账号列表后,对查询文本进行编码得到第一查询向量,以及对 候选账号的机构图谱信息进行编码得到第一候选向量。即,将查询文本“热门 游戏订阅号”进行编码得到第一候选向量;获取候选账号对应的机构图谱文本, 并将候选账号对应的机构图谱文本编码为第一候选向量。其中,候选账号的机 构图谱文本可以从预先构建的语料库中获取,该语料库中的机构图谱文本为基 于账号对应的机构图谱信息转换得到的。
[0130]
在获取到查询文本对应的第一查询向量和候选账号对应的第一候选向量后, 将第一查询向量和第一候选向量输入自注意力层进行交互,得到查询文本对应 的第二查询向量和候选账号对应的第二候选向量。通过自注意力层使得第二查 询向量和第二候选向量能够携带有互相的信息。
[0131]
基于自注意力层输出的第二查询向量和第二候选向量,确定查询文本和候 选账号的相关度打分。由于第二查询向量和第二候选向量能够携带有互相的信 息,即间接实现了查询文本与所有候选账号进行互相比较以区分候选账号的相 关度差异。
[0132]
最后通过比较候选账号对应的相关度打分,将候选账号进行排序后,选取 相关度打分最高的若干个账号输出至用户界面。用户获取排序后得到的最符合 查询文本的账号。
[0133]
下述为本技术装置实施例,可以用于执行本技术方法实施例。对于本技术 装置实施例中未披露的细节,请参照本技术方法实施例。
[0134]
图8是本技术一个示例性实施例提供的一种基于知识图谱的搜索装置的结 构框图。所述装置包括:
[0135]
确定模块410,用于在知识图谱中确定与查询文本对应的候选实体列表,所 述候选实体列表包括至少一个候选实体;
[0136]
编码模块420,用于对所述查询文本进行编码得到第一查询向量,以及对所 述候选实体的知识图谱信息进行编码得到第一候选向量;
[0137]
交互模块430,用于将所述第一查询向量和所述第一候选向量输入自注意力 层,得到第二查询向量和第二候选向量;
[0138]
所述确定模块410,用于根据所述第二查询向量和所述第二候选向量的向量 相似度,确定所述查询文本与所述候选实体的相关度打分;
[0139]
排序输出模块440,用于根据所述相关度打分对所述候选实体进行排序,以 及基于排序结果输出搜索结果。
[0140]
在一个可能的设计中,所述交互模块430,用于获取所述候选实体的参考相 关度
打分和参考排名,所述参考相关度打分用于指示所述候选实体和所述查询 文本的相关度,所述参考排名用于指示所述候选实体列表中的候选实体与所述 查询文本的相关度排名;以及,将所述查询文本对应的第一信息组合和所述候 选实体对应的第二信息组合输入自注意力层,得到所述第二查询向量和所述第 二候选向量;其中,所述第一信息组合包括所述第一查询向量和第一标识信息, 所述第二信息组合包括所述第一候选向量、第二标识信息、所述参考相关度打 分和所述参考排名,所述第一标识信息用于指示所述第一查询向量为与所述查 询文本对应的向量,所述第二标识信息用于指示所述第一候选向量为与所述候 选实体对应的向量。
[0141]
在一个可能的设计中,所述交互模块430,用于将所述第一查询向量和所述 第一候选向量的向量相似度,确定为所述候选实体的所述参考相关度打分;以 及,根据所述参考相关度打分确定所述候选实体列表中的候选实体的所述参考 排名。
[0142]
在一个可能的设计中,所述编码模块420,用于获取所述候选实体对应的知 识图谱文本,所述知识图谱文本是基于所述候选实体在所述知识图谱中的图谱 信息转换得到的自然语言文本;以及,对所述候选实体对应的知识图谱文本进 行编码得到所述第一候选向量。
[0143]
在一个可能的设计中,所述编码模块420,用于在所述知识图谱对应的语料 库中查询与所述候选实体对应的知识图谱文本;其中,所述语料库包括所述知 识图谱中各个实体对应的知识图谱文本,每个所述实体对应的知识图谱文本是 预先基于所述实体在所述知识图谱中的图谱信息进行转换得到的自然语言文本。
[0144]
在一个可能的设计中,所述装置还包括表示模块460和转换模块470。所述 表示模块460,用于将所述实体在所述知识图谱中的图谱信息表示为三元组信息; 所述转换模块470,用于将所述实体对应的三元组信息,转换为所述实体对应的 知识图谱文本。
[0145]
在一个可能的设计中,所述知识图谱为以账号为中心的机构图谱,所述机 构图谱包括所述账号的属性和所述属性的属性值。所述表示模块460,用于将所 述账号在所述机构图谱中的图谱信息表示为属性三元组,所述属性三元组包括 所述账号、所述账号的属性和所述属性的属性值;所述转换模块470,用于将所 述账号对应的属性三元组拼接为知识图谱文本。
[0146]
在一个可能的设计中,所述实体对应的三元组信息为至少两个。所述转换 模块470,用于在所述实体对应的每个所述三元组信息的末尾添加第一语义符, 并将所述至少两个处理后的三元组信息首尾拼接,得到第一知识图谱文本,所 述第一语义符用于指示所述三元组信息之间的分隔;在所述第一知识图谱文本 的开头添加第二语义符,得到所述实体对应的知识图谱文本,所述第二语义符 用于指示所述实体对应的知识图谱文本的开端。
[0147]
在一个可能的设计中,所述确定模块410,用于通过计算向量点乘得到所述 第二查询向量和所述第二候选向量的向量相似度,确定所述查询文本与所述候 选实体的相关度打分;或,通过计算欧氏距离得到所述第二查询向量和所述第 二候选向量的向量相似度,确定所述查询文本与所述候选实体的相关度打分; 或,通过计算向量余弦得到所述第二查询向量和所述第二候选向量的向量相似 度,确定所述查询文本与所述候选实体的相关度打分。
[0148]
在一个可能的设计中,所述编码模块420,用于将所述查询文本输入预训练 的基
于变换器的双向编码器表示技术bert层进行编码,得到所述第一查询向 量;以及,将所述候选实体对应的自然语言文本输入所述bert层进行编码, 得到所述第一候选向量。
[0149]
图9是根据本技术一个示例性实施例示出的一种终端的结构示意图。所述 终端1000包括中央处理单元(central processing unit,cpu)1001、包括随机 存取存储器(random access memory,ram)1002和只读存储器(read-onlymemory,rom)1003的系统存储器1004,以及连接系统存储器1004和中央处 理单元1001的系统总线1005。所述计算机设备1000还包括帮助计算机设备内 的各个器件之间传输信息的基本输入/输出系统(input/output,i/o系统)1006, 和用于存储操作系统1013、应用程序1014和其他程序模块1015的大容量存储 设备1007。
[0150]
所述基本输入/输出系统1006包括有用于显示信息的显示器1008和用于用 户输入信息的诸如鼠标、键盘之类的输入设备1009。其中所述显示器1008和输 入设备1009都通过连接到系统总线1005的输入输出控制器1010连接到中央处 理单元1001。所述基本输入/输出系统1006还可以包括输入输出控制器1010以 用于接收和处理来自键盘、鼠标、或电子触控笔等多个其他设备的输入。类似 地,输入输出控制器1010还提供输出到显示屏、打印机或其他类型的输出设备。
[0151]
所述大容量存储设备1007通过连接到系统总线1005的大容量存储控制器 (未示出)连接到中央处理单元1001。所述大容量存储设备1007及其相关联的 计算机设备可读介质为计算机设备1000提供非易失性存储。也就是说,所述大 容量存储设备1007可以包括诸如硬盘或者只读光盘(compact disc read-onlymemory,cd-rom)驱动器之类的计算机设备可读介质(未示出)。
[0152]
不失一般性,所述计算机设备可读介质可以包括计算机设备存储介质和通 信介质。计算机设备存储介质包括以用于存储诸如计算机设备可读指令、数据 结构、程序模块或其他数据等信息的任何方法或技术实现的易失性和非易失性、 可移动和不可移动介质。计算机设备存储介质包括ram、rom、可擦除可编程 只读存储器(erasable programmable read only memory,eprom)、带电可擦可 编程只读存储器(electrically erasable programmable read-only memory, eeprom),cd-rom、数字视频光盘(digital video disc,dvd)或其他光学 存储、磁带盒、磁带、磁盘存储或其他磁性存储设备。当然,本领域技术人员 可知所述计算机设备存储介质不局限于上述几种。上述的系统存储器1004和大 容量存储设备1007可以统称为存储器。
[0153]
根据本公开的各种实施例,所述计算机设备1000还可以通过诸如因特网等 网络连接到网络上的远程计算机设备运行。也即计算机设备1000可以通过连接 在所述系统总线1005上的网络接口单元1012连接到网络1011,或者说,也可 以使用网络接口单元1012来连接到其他类型的网络或远程计算机设备系统(未 示出)。
[0154]
所述存储器还包括一个或者一个以上的程序,所述一个或者一个以上程序 存储于存储器中,中央处理器1001通过执行该一个或一个以上程序来实现上述 基于知识图谱的搜索方法的全部或者部分步骤。
[0155]
在示例性实施例中,还提供了一种计算机可读存储介质,所述计算机可读 存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少 一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实 现上述各个方法实施例提供的
基于知识图谱的搜索方法。
[0156]
在示例性实施例中,还提供了一种计算机程序产品或计算机程序,该计算 机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存 储介质中,通信设备的处理器从计算机可读存储介质读取该计算机指令,处理 器执行该计算机指令,使得该通信设备执行上述方面所述的基于知识图谱的搜 索方法。
[0157]
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通 过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储 于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘 或光盘等。
[0158]
以上所述仅为本技术的可选实施例,并不用以限制本技术,凡在本技术的 精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的 保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献