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

一种基于知识图谱的复杂问题语义理解方法

2022-06-08 15:38:14 来源:中国专利 TAG:


1.本发明涉及自然语言领域,具体涉及一种基于知识图谱的复杂问题语义理解方法。


背景技术:

2.知识图谱为搜索引擎、智能问答、推理等任务提供了有效的数据支撑。其中,基于知识图谱的智能问答是信息检索的一种高级形式,它能理解用户提出的自然语言问题,利用知识图谱查询并返回精准的检索结果。目前,针对简单问题的理解取得了一定的成果,但由于复杂问题存在多实体、多关系和多种逻辑运算等特点,如何准确、高效地理解并回答一个复杂的问题是目前的研究面临的挑战。
3.近年来,各类基于知识图谱的复杂问题语义理解研究取得了突破性的进展,广泛应用的语义理解方法主要包括:基于模板的方法、基于深度学习的方法和基于查询图的方法。其中,基于查询图的方法将输入问题转换为对应的查询结构,具有较好的可解释性和准确率。基于查询图的方法主要包括实体识别、关系抽取和语义理解等步骤。目前,针对实体识别和关系抽取的研究中主要通过对问句上下文信息进行编码进行识别和抽取,忽略了实体间存在的结构信息,造成关系抽取中头尾节点的错误预测。基于查询图的语义理解方法的学习过程中无法有效辨别信息的重要性,造成信息丢失遗忘,导致预测错误产生噪声查询图,使复杂问题难以得到理解。


技术实现要素:

4.基于现有技术中存在的上述缺点和不足,本发明的目的之一是至少解决现有技术中存在的上述问题之一或多个,换言之,本发明的目的之一是提供满足前述需求之一或多个的一种拼接式堆叠桌。
5.为了达到上述发明目的,本发明采用以下技术方案:
6.一种基于知识图谱的复杂问题语义理解方法,复杂问题包括实体、关系及逻辑运算特征,包括如下步骤;
7.s1、对复杂问题进行实体识别和关系抽取,获取实体特征及实体间关系特征;
8.s2、使用实体特征及实体间关系特征生成复杂问题的语义图;
9.s3、使用查询图预测模型对语义图进行预测,生成与语义图相对应的查询图;
10.s4、在知识图谱中根据查询图进行遍历,遍历得到查询路径后根据复杂问题的逻辑计算特征得到复杂问题的答案。
11.作为优选方案,步骤s1具体包括如下方法:
12.s11、使用语言表征模型对复杂问题进行识别,得到实体特征;
13.s12、使用关系抽取模型对复杂问题进行关系抽取,得到实体间关系特征。
14.作为进一步优选的方案,步骤s12具体包括如下步骤:
15.s121、使用bilstm模型获取复杂问题的实体关系上下文向量;
16.s122、将步骤s11中得到的实体特征编码为实体特征向量,与实体关系上下文向量拼接得到关系抽取向量;
17.s123、使用图编码器对实体特征编码,得到语义图向量;
18.s124、使用softmax函数计算关系抽取向量,得到实体间关系特征。
19.作为进一步优选的方案,步骤s3具体包括如下步骤:
20.s31、使用分词工具获取复杂问题的分词结果,使用bert模型对分词结果编码得到词向量;
21.s32、获取复杂问题的依赖树,将依赖树编码为依赖树向量;
22.s33、使用图编码器将语义图编码为语义图向量;
23.s34、将词向量作为输入,使用bilstm模型对复杂问题编码,得到语义理解上下文向量;
24.s35、使用依赖树向量和语义图向量构建注意力矩阵;
25.s36、使用语义理解上下文向量和注意力矩阵计算context向量;
26.s37、将注意力矩阵和context向量使用bilstm模型解码,得到输出向量;
27.s38、使用输出向量预测各个时间步的图操作。
28.作为进一步优选的方案,bilstm模型的解码端定义四种图操作,各个时间步的图操作通过将时间步对4取余数得到。
29.作为优选方案,步骤s1之前还包括步骤s0:
30.对复杂问题进行序列标注。
31.作为优选方案,步骤s4具体包括:
32.s41、以深度优先算法遍历已知实体得到主查询路径;
33.s42、将逻辑计算添加至主查询路径生成查询语句;
34.s43、根据查询语句在知识图谱中查询,得到复杂问题的答案。
35.本发明与现有技术相比,有益效果是:
36.本发明的复杂问题语义理解方法,将输入问题转换为了对应的查询结构,具有优秀的解释性和准确率,结合知识图谱的搜索,能够准确完成复杂问题的解答。
附图说明
37.图1是本发明实施例的流程图;
38.图2是本发明实施例的标注结果图;
39.图3是本发明实施例的实体识别结果图;
40.图4是本发明实施例的语义图;
41.图5是本发明实施例的图操作示意图。
具体实施方式
42.为了更清楚地说明本发明实施例,下面将对照附图说明本发明的具体实施方式。显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图,并获得其他的实施方式。
43.实施例:
44.本实施例的一种基于知识图谱的复杂问题语义理解方法,其流程图如图1所示,包括如下步骤:
45.s1、对复杂问题进行实体识别和关系抽取,获取实体特征及实体间关系特征。更具体的,在步骤s1之前还包括步骤s0、基于序列标注方法对复杂问题进行序列标注,将复杂问题中的实体和实体间关系拆分标注。实体标注通过bmeso方法进行,而实体间关系标注则需要对关系类型及其头尾实体的位置进行标注。本实施例中,使用b表示实体首字,m表示实体内部字,e表示实体尾字,s表示单字实体字,o表示非实体字。关系标注中对关系类型及其头尾实体位置进行标注,用n来表示非关系词。在此举例一个复杂问题,其基于上述标注后所得到的结果如图2所示。
46.完成标注后执行步骤s1的实体识别和关系抽取,具体的,步骤s1分为两部分:分别是s11、使用语言表征模型对复杂问题进行识别,得到实体特征;s12、使用关系抽取模型对复杂问题进行关系抽取,得到实体间关系特征。
47.在本实施例中,s11的实体识别可以利用bert-bilstm-crf模型对复杂问题识别进行,基于上述举例的实体识别结果如图3,包含pennsylvania、7800和40000000三个实体。而s12中的关系抽取模型使用基于bilstm和语义图嵌入的关系抽取模型进行。
48.更进一步具体的,本实施例中s12分为如下步骤:
49.s121、使用bilstm模型,基于该模型的上下文向量获取功能,将复杂问题编码为包含上下文信息的实体关系上下文向量h
t
;详细的,首先对q进行分词,利用bert将分词结果转换为词向量,作为bilstm每个时间步t的输入,将其编码为实体关系上下文向量h
t

50.s122、将上述步骤s11中实体识别得到的实体特征编码为实体特征向量l
t
,与实体关系上下文向量h
t
按位置拼接得到关系抽取向量r
t

51.s123、使用图编码器对上述实体特征编码,得到初始的语义图向量
52.s124、基于bilstm和语义图嵌入的关系抽取,通过softmax函数计算关系抽取向量r
t
对应的关系类型r;然后利用关系抽取向量r
t
和语义图向量分别计算每一个实体存在关系类型r的概率。其中,t时刻的语义图通过t-1时刻的关系识别结果构建得到,对该结果进行编码得到语义图向量在t=0时刻输入的语义图向量为将语义图向量与关系抽取向量r
t
按位置拼接得到输出向量z
t
。概率计算公式为:
53.p(ri,rj,r)=softmax(urσ(vrri wrrj x
tzt
br));
54.其中,σ是tanh激活函数,ur、vr、wr、xr分别是待学习的参数矩阵,br是偏置向量。
55.然后进行步骤s2、使用实体特征及实体间关系特征生成复杂问题的语义图;
56.具体的,将上述计算得到的三元组通过合并得到新的语义图,通过图编码器进行图向量的更新,上述公式中ri和rj分别为头实体的输出向量和尾实体的输出向量。由于关系的尾实体可能是待查询的实体,故还添加待查询的实体向量,如图4中的v0实体。其中,规定未添加关系的待查询实体只能作为尾实体进行计算,添加了关系的待查询实体只能作为头实体进行计算,而待查询实体可能是同一实体,通过后续步骤判断。
57.在关系抽取时,先预测输入词对应的关系类型,例如how、many等词对应的关系类
型为n,不进行头尾实体计算。当输入词为counties时,即得到关系类型为counties,继而预测其头尾实体,得到头实体为pennsylvania,尾实体为待查询实体v0。基于上述规则和方法。对所有输入词进行预测所得到的完整语义图如图4所示。
58.关系抽取后进行步骤s3、使用查询图预测模型对语义图进行预测,找到复杂问题中的逻辑运算,并将其添加到语义图中生成与语义图相对应的查询图;
59.进一步的,本实施例中逻辑运算包括比较、判断、计数和最大最小运算,s3的具体方法包括:
60.s31、使用分词工具获取复杂问题的分词结果,使用bert模型对分词结果编码得到词向量x
t

61.s32、获取复杂问题的依赖树,将依赖树编码为依赖树向量
62.s33、使用图编码器将语义图编码为初始的语义图向量
63.s34、将词向量x
t
作为bilstm的输入,对复杂问题q进行编码,得到包含上下文信息的语义理解上下文向量
64.s35、使用依赖树向量和语义图向量构建注意力矩阵;构建函数为:
[0065][0066]
s36、使用语义理解上下文向量和注意力矩阵计算context向量c
t
;计算公式为:
[0067]
s37、将注意力矩阵和context向量c
t
使用bilstm模型解码,得到输出向量
[0068]
s38、使用输出向量预测各个时间步的图操作。具体的,在解码端定义了4种图操作,按照顺序分别为:添加实体、添加关系、选择头实体以及选择尾实体。利用预测时间步t的图操作,每个时间步t应进行的操作通过t对4取余数得到。
[0069]
如果余数为0,进行添加实体操作,选择应添加的实体类型c
av
,c
av
的计算方法为:当预测得到end时,表示解码结束,输出查询图结构。
[0070]
如果余数为1,进行添加关系操作,选择应添加的关系c
se
,c
se
的计算方法为:
[0071][0072]
如果余数为2,进行选择尾实体操作,选择关系的尾实体c
st
,计算方法为:
[0073][0074]
如果余数为3,进行选择头实体操作,选择关系的头实体c
sh
,计算过程为:
[0075][0076]
图操作的实例如图5所示,时间步t=0时,进行添加实体操作,预测得到添加实体为比较实体中的“《”,把该实体添加进语义图中进行编码,然后进行下一个时间步的计算。时间步t=1时,进行添加关系操作,预测得到关系为比较关系,然后进行下一个时间步的计算。时间步t=2时,由于时间步t=0中添加了新实体,直接作为尾实体进入下一个时间步。
时间步t=4时,预测头实体,得到头实体为40000000,将比较关系添加到图中,头实体为40000000,尾实体为“《”,进行图向量的更新。经多次迭代最后得到如图4所示查询图。其中,当预测实体为non时,说明不添加新实体,当预测实体为end时,说明解码端解码结束,输出查询图。
[0077]
得到查询图后,进行步骤s4、在知识图谱中根据查询图进行遍历,遍历得到查询路径后根据复杂问题的逻辑计算特征得到复杂问题的答案。
[0078]
进一步的,本实施例中通过将查询图转换为sparql查询语句的方式查询答案。具体为以深度优先算法从已知实体开始遍历,得到与查询图相匹配的主查询路径,然后将逻辑计算添加到查询路径中得到完整的sparql查询语句。最后在知识图谱中应用该查询语句,返回复杂问题对应的答案。
[0079]
应当说明的是,上述实施例均可根据需要自由组合。以上仅是对本发明的优选实施例及原理进行了详细说明,对本领域的普通技术人员而言,依据本发明提供的思想,在具体实施方式上会有改变之处,而这些改变也应视为本发明的保护范围。
再多了解一些

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

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

相关文献