具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本发明将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
知识图谱的概念是google在2012年提出的,当时的主要设计目的是用来更好的查询复杂的关联信息,从语义层面理解用户意图,改进搜索质量。谷歌利用知识图谱实现了搜索引擎的精确搜索功能,返回给用户一个准确的答案,而不仅仅是一系列链接。
知识图谱是一种新型的知识表示形式,其主要目标是用来描述真实世界中存在的各种实体和概念,以及他们之间的相关关系,例如相关关系可以用于描述两个实体之间的关联,目前以三元组的形式(比如“实体A——关联关系——实体B”或“实体——属性——属性值”)来进行知识表示。例如,“梅西”和“巴塞罗那足球俱乐部”的关系,“梅西”和“巴塞罗那足球俱乐部”都是现实世界中的实体,我们可以用一个关联关系来描述二者间的关系,比如“梅西—所属俱乐部—巴塞罗那足球俱乐部”,其中“所属俱乐部”表示“梅西是巴塞罗那足球俱乐部的球员”。更普遍的,我们用“实体——属性——属性值“来刻画实体的内在特性,比如说一个足球运动员,他有年龄、身高、体重、性别、所属俱乐部等各种属性,“梅西—所属俱乐部—巴塞罗那足球俱乐部”这个例子中的“梅西“、”所属俱乐部“、”巴塞罗那足球俱乐部”就分别是实体、属性以及属性值。除了描述一些很明确的实体的关系之外,知识图谱也可以通过人为构建与定义,去描述各种概念之间的不明确的关系,例如我们可以人为定义“健康险——投保年龄——100岁以内”这样一个三元组。
图1示出了可以应用本发明实施例的构建知识图谱方法或构建知识图谱装置的示例性系统架构的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103中的一种或多种,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
用户可以使用终端设备101、102、103通过网络104与服务器105交互,以接收或发送消息等。终端设备101、102、103可以是具有显示屏的各种电子设备,包括但不限于智能手机、平板电脑、便携式计算机和台式计算机等等。
服务器105可以是提供各种服务的服务器。例如服务器105可以从终端设备103(也可以是终端设备101或102)中获取包含实体词汇的实体词汇库和包含关系词汇的关系词汇库,服务器105可以根据实体词汇库和关系词汇库可以对非结构化文本进行自然语言处理,得到非结构化文本的词汇,然后利用实体识别模型和关系识别模型分别对非结构化文本的词汇进行识别处理,得到非结构化文本的实体词汇和关系词汇以及实体词汇的置信度和关系词汇的置信度,根据实体词汇的置信度和关系词汇的置信度,将非结构化文本的实体词汇和关系词汇分别存储到实体词汇库和关系词汇库,基于更新后的实体词汇库和关系词汇库构建知识图谱,有效地解决了相关知识以传统存储方式存储所带来的不足,并因此实现了建立专业的高精度的知识图谱,方便大众更高效地获取各个领域的相关知识。
在一些实施例中,本发明实施例所提供的构建知识图谱方法一般由服务器105执行,相应地,构建知识图谱装置一般设置于服务器105中。在另一些实施例中,某些终端可以具有与服务器相似的功能从而执行本方法。因此,本发明实施例所提供的构建知识图谱方法不限定在服务器端执行。
图2示意性示出了根据本发明的实施例的构建知识图谱方法的流程图。
如图2所示,构建知识图谱方法可以包括步骤S110~步骤S150。
在步骤S110中,获取包含非结构化文本的非结构化文本库。
在步骤S120中,根据包含实体词汇的实体词汇库和包含关系词汇的关系词汇库对所述非结构化文本库中的非结构化文本进行自然语言处理,得到所述非结构化文本的词汇,所述关系词汇库中的每个关系词汇为实体词汇之间的词汇。
在步骤S130中,利用实体识别模型和关系识别模型分别对所述非结构化文本的词汇进行识别处理,得到所述非结构化文本的实体词汇和关系词汇以及所述实体词汇的置信度和所述关系词汇的置信度。
在步骤S140中,根据所述实体词汇的置信度和所述关系词汇的置信度,将非结构化文本的实体词汇和关系词汇分别存储到所述实体词汇库和所述关系词汇库,以更新所述实体词汇库和所述关系词汇库。
在步骤S150中,基于更新后的实体词汇库和关系词汇库构建知识图谱。
该方法可以根据实体词汇库和关系词汇库可以对非结构化文本进行自然语言处理,得到非结构化文本的词汇,然后利用实体识别模型和关系识别模型分别对非结构化文本的词汇进行识别处理,得到非结构化文本的实体词汇和关系词汇以及实体词汇的置信度和关系词汇的置信度,根据实体词汇的置信度和关系词汇的置信度,将非结构化文本的实体词汇和关系词汇分别存储到实体词汇库和关系词汇库,基于更新后的实体词汇库和关系词汇库构建知识图谱,有效地解决了相关知识以传统存储方式存储所带来的不足,并因此实现了建立专业的高精度的知识图谱,方便大众更高效地获取的相关知识。
在本发明的一个实施例中,上述非结构化文本库可以包括各个领域(例如,保险领域、体育领域、电子商务领域等等)的非结构化文本。
例如,上述非结构化文本库中包含保险领域的非结构化文本。该非结构化文本可以包括以下任意一项或多项:保险条款、保险产品的介绍、保险合同。其中,保险条款、保险产品的介绍、保险合同等文档中都包括保险领域的实体词汇和关系词汇。例如,非结构化文本为“泰康集团的注册地址在北京”,其中,“泰康集团”和“北京”为实体词,“注册地址”为关系词汇。再例如,非结构化文本为“购买健康险的用户的投保年龄需要在100以内”,其中,“健康险”和“100岁以内”为实体词,“投保年龄”为关系词汇。
例如,上述非结构化文本库中包含体育领域的非结构化文本。该非结构化文本可以包括以下任意一项或多项:球星与球队之间的合同、体育产品的介绍等文档中都包括体育领域的实体词汇和关系词汇。例如,非结构化文本为“梅西所属俱乐部是巴塞罗那足球俱乐部”,其中,“梅西”和“巴塞罗那足球俱乐部”为实体词汇,“所属俱乐部”为关系词汇。例如,上述非结构化文本库中包含电子商务领域的非结构化文本。该非结构化文本可以包括以下任意一项或多项:商家和购物平台之间的合同、购物平台的介绍、商品的介绍等文档中都包括电子商务领域的实体词汇和关系词汇。例如,非结构化文本为“蒙牛旗舰店的注册平台为淘宝购物平台”,其中,“蒙牛旗舰店”和“淘宝购物平台”为实体词汇,“注册平台”为关系词汇。
下面实施例以保险领域的实体词汇、关系词汇、以及非结构化文本为例,对本发明的技术方案进行描述。
在本发明的一个实施例中,包含保险领域的实体词汇的实体词汇库可以包括非结构化文本中的实体词汇。一般地,通过人工可以从非结构化文本中提取实体词汇,然后对该实体词汇进行分类,并赋予该实体词汇分类标签,最后将其存储到实体词汇库,便于为后续训练模型提供数据。具体如表1所示:
序号 |
实体词汇 |
分类标签 |
1 |
泰康集团 |
公司名(S) |
2 |
北京 |
地名(S) |
3 |
健康险 |
保险产品(S) |
4 |
100以内 |
数值(S) |
其中,S表示实体词汇的标签。
在本发明的一个实施例中,包含保险领域的关系词汇的关系词汇库可以包括非结构化文本中的关系词汇。一般地,通过人工可以从非结构化文本中提取关系词汇,然后对该关系词汇进行分类,并赋予该关系词汇分类标签,最后将其存储到关系词汇库,便于为后续训练模型提供数据。具体如表2所示:
关联实体词1 |
实体词汇 |
分类标签 |
关联实体词2 |
1 |
注册地址 |
公司属性(P) |
2 |
3 |
投保年龄 |
产品属性(P) |
4 |
其中,P表示关系词汇的标签。需要说明的是,在存储关系词汇时,需要将与该关系词汇相关联的实体词汇一起存储到关系词汇库。通常将与该关系词汇左右相邻的两个实体词汇(例如,与该关系词汇在非结构化文本的位置左右最相邻的两个实体词汇)的序号与该关系词汇一起存储到关系词汇库。
在本发明的一个实施例中,根据实体词汇库和关系词汇库对非结构化文本库中的非结构化文本进行自然语言处理,这样可以准确快速地对非结构化文本中的词汇切割分词。例如,在实体词汇库中的实体词汇为“健康险”和“100岁以内”,在关系词汇库中的关系词汇为“投保年龄”,非结构化文本为“购买健康险的投保年龄需要在100岁以内”,在这种情况下,如果对非结构化文本进行自然语言处理,可以得到非结构化文本的词汇包括:“购买”、“健康险”、“的”、“投保年龄”、“需要”、“在”、“100以内”,从而实现了准确快速地对非结构化文本中的词汇切割分词。
在本发明的一个实施例中,利用实体识别模型和关系识别模型分别可以对非结构化文本的词汇进行识别处理。例如,利用实体识别模型可以对非结构化文本的词汇进行识别处理,以此方式可以快速地确定出非结构化文本的词汇中那些是“实体词汇”,并输出实体词汇的置信度。同时可以利用关系识别模型可以对非结构化文本的词汇进行识别处理,以此方式可以快速地确定出非结构化文本的词汇中那些是“关系词汇”,并输出关系词汇的置信度。另外,实体词汇的置信度可以指该实体词汇被划分到某一类别(例如,公司名、地名、数值等等类别)的概率。关系词汇的置信度可以指该关系词汇被划分到某一类别(例如,公司属性、产品属性等等类别)的概率。
在本发明的一个实施例中,根据上述实体词汇被划分到某一类别的概率和关系词汇被划分到某一类别的概率,将实体词汇和关系词汇分别存储到上述实体词汇库和关系词汇库,以这样的方式对实体词汇和关系词汇进行存储可以大幅度的减少人工的干预,即减少了人力成本,便于更新实体词汇库和关系词汇库。
图3示意性示出了根据本发明的另一个实施例的构建知识图谱方法的流程图。
在步骤S110之前,上述方法还包括步骤S210和步骤S220,具体如图3所示。
在步骤S110中,获取包含实体词汇的实体词汇库和包含关系词汇的关系词汇库,所述实体词汇库中的每个实体词汇具有分类标识,所述关系词汇库中的每个关系词汇具有分类标识。
在步骤S120中,利用神经网络分别对所述实体词汇库中的实体词汇和所述关系词汇库中的关系词汇进行训练,并生成所述实体识别模型和所述关系识别模型。
该方法可以利用神经网络分别对所述实体词汇库中的实体词汇和所述关系词汇库中的关系词汇进行训练,以生成实体识别模型和关系识别模型,以便于后续用于识别非结构化文本的词汇,并因此实现了对非结构化文本中实体词汇和关系词汇的自动识别,以及实现了对实体词汇库和关系词汇库的自动更新,并有助于增强识别词汇的准确度。
在本发明的一个实施例中,上述循环神经网络可以是长短期记忆网络(LSTM)。长短期记忆网络可以是一种时间递归神经网络,适合于处理和预测时间序列中间隔和延迟相对较长的重要事件。长短期记忆网络可以解决循环神经网络RNN结构中存在的“梯度消失”问题。例如,当我们要预测“the clouds are in the(...)"的时候,这种情况下,相关的信息和预测的词位置之间的间隔很小,RNN会使用先前的信息预测出词是”sky“。但是如果想要预测”I grew up in France...I speak fluent(...)”,语言模型推测下一个词可能是一种语言的名字,但是具体是什么语言,需要用到间隔很长的前文中France,在这种情况下,RNN因为“梯度消失”的问题,并不能利用间隔很长的信息,然而,LSTM在设计上明确避免了长期依赖的问题,这主要归功于LSTM精心设计的“门”结构(例如,输入门、遗忘门和输出门)消除或者增加信息到细胞状态的能力,使得LSTM能够记住长期的信息。
下面具体介绍利用长短期记忆网络分别对实体词汇库中的实体词汇和关系词汇库中的关系词汇进行训练并生成所述实体识别模型和所述关系识别模型。
在对实体词汇库中的实体词汇和关系词汇库中的关系词汇进行训练时,一般利用LSTM中的计算公式对实体词汇和关系词汇进行训练,公式具体如下:
it=σ(Wxixt+Whiht-1+Wcict-1+bi)
ft=σ(Wxfxt+Whfht-1+Wcfct-1+bf)
ct=ftct-1+ittanh(Wxcxt+Whcht-1+bc)
ot=σ(Wxoxt+Whoht-1+Wcoct+bo)
ht=ottanh(ct)
其中,σ表示sigmoid激活函数,tanh表示双曲正切激活函数,xt表示在t时刻时实体词汇的词向量或在t时刻时关系词汇的词向量,it表示t时刻输入门的输出向量,ft表示t时刻遗忘门的输出向量,ot表示t时刻输出门的输出向量,ct和ct-1分别表示t时刻和t-1时刻的细胞单元的记忆流状态,ht和ht-1分别表示t时刻和t-1时刻隐藏层向量。权值矩阵和偏置参数描述有明显的含义,例如Wxi表示输入和输入门的权值矩阵,Whi表示隐藏层和输入门的权值矩阵,Wci表示细胞单元和输入门的权值矩阵,bi、bf表示输入门和遗忘门的偏置参数,其角标表示所属的计算部分。这里的参数矩阵和偏置参数都是先随机初始化,然后在模型训练中自动修正,最后会随神经网络得到最终的权值。
在本发明的一个实施例中,待实体识别模型和关系识别模型训练完毕后,需要对非结构化文本中的词汇进行预测。在预测时,LSTM的输出层会预期给出一个得分矩阵P,P满足:P∈Rn*k。
其中,n表示非结构化文本的切词长度(即非结构化文本切完词后的词汇总量),k为分类标签的种类,矩阵元素表示可以为P
ij,P
ij表示第i个词在第j个分类标签下的输出得分。接下来,可以对预测结果中每个词汇在各个标签下的得分进行归一化处理,每个词汇取分类标签的最大得分占总得分的比值作为该词汇的置信度,即:
式中,
可以是测试样本(即非结构化文本)中第i个词汇的最终分类标签的置信度,即通过知识抽取方法抽取的词汇的置信度。预期地,通过对词汇的置信度设定一个合理的阈值,取值超过阈值的可以认定实体词汇或关系词汇的预测标签可信,该实体词汇或关系词汇可直接入库(即可以直接存入保险领域实体词汇库或关系词汇库),低于该阈值的交由人工进行审核判定是否需要入库。
图4示意性示出了根据本发明的另一个实施例的构建知识图谱方法的流程图。
如图4所示,上述步骤S120可以包括步骤S310~步骤S330。
在步骤S310中,根据所述实体词汇库和所述关系词汇库对非结构化文本库中的非结构化文本进行分词处理,得到所述非结构化文本的词汇。
在步骤S320中,去除所述非结构化文本中的停用词。
在步骤S330中,对去除停用词后的所述非结构化文本的词汇进行词性标注。
该方法可以根据实体词汇库和关系词汇库对非结构化文本库中的非结构化文本进行分词处理,得到非结构化文本的词汇,并去除非结构化文本中的停用词,对去除停用词后的非结构化的词汇进行词性标注,这样可以准确快速地对非结构化文本中的词汇切割分词和标注。
例如,非结构化文本为“泰康养老的大本营在上海的黄浦区,而总部设在广州”,在切割分词之后是“泰康养老/的/大本营/在/上海/的/黄埔区/而/总部/设在/广州”,一共有9个词,在切割的同时记录词的位置,需要说明书的是在文本中的标点符号默认设定占用多个位置,以免前后两句话互相干扰,假设标点设定占用10个位置,那么上面九个词的位置分别是“1/2/3/4/5/6/7/8/9/10/11”)。实体识别模型在预测实体词汇的时候(设定阈值为0.8),会预测出上面存在实体词汇“泰康养老(公司名,置信度0.93)”、“上海(地名,置信度0.94)”、“黄浦区(地名,置信度0.91)”、“广州(地名,置信度0.96)”,此时可以先将实体词汇存入实体词汇库。关系识别模型在预测关系词汇的时候(设定阈值为0.7),先预测出可能的关系词汇“大本营”、“总部”。在存储时,可以带上关系词汇的前后临近位置的实体词一起存储到关系词汇库。例如,“大本营”前面有“泰康养老”(中间间隔为1),后面有“上海”(间隔为1),这样就形成“泰康养老-大本营-上海”这样的关联关系,在这种情况下,关系识别模型可以输出该关联关系的置信度:“泰康养老-大本营(公司属性关系词,置信度0.75)-上海”,该关系词汇的置信度0.75大于阈值,因此存入关系词汇库,在存储时,实际存储的不仅有关系词汇还有与其相邻的实体词汇以及该关系词汇的分类标签,即。“泰康养老-大本营(公司属性关系词)-上海”。另外,在针对“泰康养老的大本营在上海的黄浦区,而总部设在广州”还可以找到一个三元关系“黄浦区-总部(公司属性关系词,置信度为0.23)-广州”,该关系词汇的置信度小于阈值,因此不会将其存储关系词汇库,在这种情况下可以移交由人工审核。
在本发明的一个实施例中,在去除非结构化文本中的停用词时,可以参照预先设置的停用词表,去除停用词可以在一定程度上可以为本地节省存储空间。
图5示意性示出了根据本发明的另一个实施例的构建知识图谱方法的流程图。
如图5所示,上述方法还包括步骤S410和步骤S420。
在步骤S410中,如果所述关系识别模型在处理所述非结构化文本的一个关系词汇时得到多个置信度,对所述多个置信度进行排序。
在步骤S420中,根据排序结果,将最高的置信度作为该关系词汇的置信度。
在该方法中,如果关系识别模型在处理非结构化文本的一个关系词汇时得到多个置信度,对多个置信度进行排序,并根据排序结果,将最高的置信度作为该关系词汇的置信度,从而可以为该关系词汇赋予准确的分类别签。
例如,非结构化文本中包含有“投保年龄”,根据关系识别模型预测“投保年龄”的识别结果为:“地址属性(置信度0.05)”、“产品属性(置信度0.80)”、“公司属性(置信度0.11)”,在这种情况下,需要对多个置信度进行排序。经排序后的结果为:“产品属性(置信度0.80)”、“公司属性(置信度0.11)”、地址属性(置信度0.05)”,此时可以将“产品属性(置信度0.80)”作为“投保年龄”的置信度,即“投保年龄”属于某保险产品的产品属性的概率为0.80,从而实现为该关系词汇赋予准确的分类别签。
图6示意性示出了根据本发明的另一个实施例的构建知识图谱方法的流程图。
如图6所示,上述方法还包括步骤S510和步骤S520。
在步骤S510中,如果所述实体识别模型在处理所述非结构化文本的一个实体词汇时得到多个置信度,对所述多个置信度进行排序。
在步骤S520中,根据排序结果,将最高的置信度作为该实体词汇的置信度。
在该方法中,如果实体识别模型在处理非结构化文本的一个实体词汇时得到多个置信度,对多个置信度进行排序,并根据排序结果,将最高的置信度作为该实体词汇的置信度,从而可以为该实体词汇赋予准确的分类别签。
例如,非结构化文本中包含有“北京汽车”,根据实体识别模型预测“北京汽车”的识别结果为:“地址属性(置信度0.3)”、“公司名(置信度0.65)”,在这种情况下,需要对多个置信度进行排序。经排序后的结果为:“公司名(置信度0.65)”、“地址属性(置信度0.3)”,此时可以将公司名(置信度0.65)作为“北京汽车”的置信度,即“北京汽车”属于某公司的公司名的概率为0.65,从而实现为该实体词汇赋予准确的分类别签。
图7示意性示出了根据本发明的另一个实施例的构建知识图谱方法的流程图。
如图7所示,上述步骤140可以包括步骤S610和步骤S620。
在步骤S610中,判断所述实体词汇的置信度是否大于或等于第一阈值,如果所述实体词汇的置信度大于或等于所述第一阈值,将所述实体词汇和所述实体词汇的分类标识存储到所述实体词汇库。
在步骤S620中,判断所述关系词汇的置信度是否大于或等于第二阈值,如果所述关系词汇的置信度大于或等于所述第二阈值,将所述关系词汇的三元组和所述关系词汇的分类标识存储到所述关系词汇库,所述关系词汇的三元组包括基于所述关系词汇和其相关联的实体词汇生成的三元组。
该方法可以通过判断实体词汇的置信度是否大于或等于第一阈值,如果所述实体词汇的置信度大于或等于所述第一阈值,将实体词汇和实体词汇的分类标识存储到实体词汇库,以及判断关系词汇的置信度是否大于或等于第二阈值,如果所述关系词汇的置信度大于或等于所述第二阈值,将关系词汇的三元组和关系词汇的分类标识存储到关系词汇库,关系词汇的三元组包括基于所述关系词汇和其相关联的实体词汇生成的三元组,以这样的方式对实体词汇和关系词汇进行存储可以大幅度的减少人工的干预,即减少了人力成本,便于更新实体词汇库和关系词汇库。
在本发明的一个实施例中,上述第一阈值可以针对实体词汇的置信度进行设置,具体可以根据实际的训练和预测的结果来设置。上述第二阈值可以针对关系词汇的置信度进行设置,具体可以根据实际的训练和预测的结果来设置。
在本发明的一个实施例中,基于关系词汇和其相关联的实体词汇生成三元组。例如,非结构化文本为“泰康养老的大本营在上海的黄浦区,而总部设在广州”,在切割分词之后是“泰康养老/的/大本营/在/上海/的/黄埔区/而/总部/设在/广州”,一共有9个词,在切割的同时记录词的位置,需要说明书的是在文本中的标点符号默认设定占用多个位置,以免前后两句话互相干扰,假设标点设定占用10个位置,那么上面九个词的位置分别是“1/2/3/4/5/6/7/8/9/10/11”)。关系识别模型基于该分词结果可以生成两个三元组,例如,“泰康养老-大本营-上海”、“黄浦区-总部-广州”。
具体地,关系识别模型在预测关系词汇的时候(设定阈值为0.7),先预测出可能的关系词汇“大本营”、“总部”。在存储时,可以带上关系词汇的前后临近位置的实体词一起存储到关系词汇库。例如,“大本营”前面有“(间隔为1),这样就形成“泰康养老-大本营-上海”这样的关联关系,在这种情况下,关系识别模型可以输出该关联关系的置信度:“泰康养老-大本营(公司属性关系词,置信度0.75)-上海”,该关系词汇的置信度0.75大于阈值,因此存入关系词汇库,在存储时,实际存储的不仅有关系词汇还有与其相邻的实体词汇以及该关系词汇的分类标签,即。“泰康养老-大本营(公司属性关系词)-上海”。另外,在针对“泰康养老的大本营在上海的黄浦区,而总部设在广州”还可以找到一个三元关系“黄浦区-总部(公司属性关系词,置信度为0.23)-广州”,该关系词汇的置信度小于阈值,因此不会将其存储关系词汇库,在这种情况下可以移交由人工审核。
在本发明的一个实施例中,基于更新后的实体词汇库和关系词汇库构建保险领域的知识图谱包括:基于更新后的实体词汇库中的实体词汇及该实体词汇的分类标签和更新后的关系词汇库中的关系词汇的三元组及该关系词汇的分类标识构建保险领域的知识图谱。
图8示意性示出了根据本发明的另一个实施例的构建知识图谱方法的流程图。
如图8所示,上述方法还包括步骤S710和步骤S720。
在步骤S710中,接收用户输入的检索词。
在步骤S720中,基于所述检索词从所述知识图谱中检索出与所述检索词对应的数据。
该方法可以接收用户输入的检索词,并基于检索词从知识图谱中检索出与检索词对应的数据,这样的检索方式可以为用户提供精准的数据,提高了检索效率。
在本发明的一个实施例中,上述用户输入的关键词可以是用户直接在搜索引擎的搜索框输入的检索词,也可以是用户在智能推荐系统和智能问答系统中输入的文本中的关键词。
图9示意性示出了根据本发明的实施例的构建知识图谱装置的方框图。
如图9所示,构建知识图谱装置200包括第一获取模块210、自然语言处理模块220、识别处理模块230、存储模块240和构建模块250。
具体地,第一获取模块210,用于获取包含非结构化文本的非结构化文本库。
自然语言处理模块220,用于根据包含实体词汇的实体词汇库和包含关系词汇的关系词汇库对所述非结构化文本库中的非结构化文本进行自然语言处理,得到所述非结构化文本的词汇,所述关系词汇库中的每个关系词汇为实体词汇之间的词汇。
识别处理模块230,利用实体识别模型和关系识别模型分别对所述非结构化文本的词汇进行识别处理,得到所述非结构化文本的实体词汇和关系词汇以及所述实体词汇的置信度和所述关系词汇的置信度。
存储模块240,用于根据所述实体词汇的置信度和所述关系词汇的置信度,将非结构化文本的实体词汇和关系词汇分别存储到所述实体词汇库和所述关系词汇库,以更新所述实体词汇库和所述关系词汇库;
构建模块250,基于更新后的实体词汇库和关系词汇库构建知识图谱。
该构建知识图谱装置200可以根据实体词汇库和关系词汇库可以对非结构化文本进行自然语言处理,得到非结构化文本的词汇,然后利用实体识别模型和关系识别模型分别对非结构化文本的词汇进行识别处理,得到非结构化文本的实体词汇和关系词汇以及实体词汇的置信度和关系词汇的置信度,根据实体词汇的置信度和关系词汇的置信度,将非结构化文本的实体词汇和关系词汇分别存储到实体词汇库和关系词汇库,基于更新后的实体词汇库和关系词汇库构建知识图谱,有效地解决了各个领域相关知识以传统存储方式存储所带来的不足,并因此实现了建立专业的高精度的知识图谱,方便大众和保险行业从业者更高效地获取各个领域的相关知识。
根据本发明的实施例,该构建知识图谱装置200可以用于实现图2实施例描述的构建知识图谱方法。
图10示意性示出了根据本发明的另一个实施例的构建知识图谱装置的方框图。
除了图9实施例描述的第一获取模块210、自然语言处理模块220、识别处理模块230、存储模块240和构建模块250之外,构建知识图谱装置300还包括第二获取模块310和训练模块320,如图10所示。
具体地,第二获取模块310,用于获取包含实体词汇的实体词汇库和包含关系词汇的关系词汇库,所述实体词汇库中的每个实体词汇具有分类标识,所述关系词汇库中的每个关系词汇具有分类标识。
训练模块320,利用神经网络分别对所述实体词汇库中的实体词汇和所述关系词汇库中的关系词汇进行训练,并生成所述实体识别模型和所述关系识别模型。
该构建知识图谱装置300可以利用神经网络分别对所述实体词汇库中的实体词汇和所述关系词汇库中的关系词汇进行训练,以生成实体识别模型和关系识别模型,以便于后续用于识别非结构化文本的词汇,并因此实现了对非结构化文本中实体词汇和关系词汇的自动识别,以及实现了对实体词汇库和关系词汇库的自动更新,并有助于增强识别词汇的准确度。
根据本发明的实施例,该构建知识图谱装置300可以用于实现图3实施例描述的构建知识图谱方法。
图11示意性示出了根据本发明的另一个实施例的构建知识图谱装置的方框图。
如图11所示,上述自然语言处理模块220包括分词处理模块221、去除模块222和标注模块223。
具体地,分词处理模块221,用于根据所述实体词汇库和所述关系词汇库对非结构化文本库中的非结构化文本进行分词处理,得到所述非结构化文本的词汇。
去除模块222,用于去除所述非结构化文本中的停用词。
标注模块223,用于对去除停用词后的所述非结构化文本的词汇进行词性标注。
该自然语言处理模块220可以根据实体词汇库和关系词汇库对非结构化文本库中的非结构化文本进行分词处理,得到非结构化文本的词汇,并去除非结构化文本中的停用词,对去除停用词后的非结构化的词汇进行词性标注,这样可以准确快速地对非结构化文本中的词汇切割分词和标注。
根据本发明的实施例,该自然语言处理模块220可以用于实现图4实施例描述的构建知识图谱方法。
图12示意性示出了根据本发明的另一个实施例的构建知识图谱装置的方框图。
除了图9实施例描述的第一获取模块210、自然语言处理模块220、识别处理模块230、存储模块240和构建模块250之外,构建知识图谱400还包括第一排序模块410和第一提取模块420,如图12所示。
具体地,第一排序模块410,如果所述关系识别模型在处理所述非结构化文本的一个关系词汇时得到多个置信度,对所述多个置信度进行排序。
第一提取模块420,用于根据排序结果,将最高的置信度作为该关系词汇的置信度。
在该构建知识图谱400中,如果关系识别模型在处理非结构化文本的一个关系词汇时得到多个置信度,对多个置信度进行排序,并根据排序结果,将最高的置信度作为该关系词汇的置信度,从而可以为该关系词汇赋予准确的分类别签。
根据本发明的实施例,该构建知识图谱400可以用于实现图5实施例描述的构建知识图谱方法。
图13示意性示出了根据本发明的另一个实施例的构建知识图谱装置的方框图。
除了图9实施例描述的第一获取模块210、自然语言处理模块220、识别处理模块230、存储模块240和构建模块250之外,构建知识图谱500还包括第二排序模块510和第二提取模块520。
具体地,第二排序模块510,如果所述实体识别模型在处理所述非结构化文本的一个实体词汇时得到多个置信度,对所述多个置信度进行排序。
第二提取模块520,用于根据排序结果,将最高的置信度作为该实体词汇的置信度。
根据本发明的实施例,该构建知识图谱500可以用于实现图6实施例描述的构建知识图谱方法。
图14示意性示出了根据本发明的另一个实施例的构建知识图谱装置的方框图。
如图14所示,上述存储模块240包括第一存储模块241和第二存储模块242。
具体地,第一存储模块241,用于判断所述实体词汇的置信度是否大于或等于第一阈值,如果所述实体词汇的置信度大于或等于所述第一阈值,将所述实体词汇和所述实体词汇的分类标识存储到所述实体词汇库。
第二存储模块242,用于判断所述关系词汇的置信度是否大于或等于第二阈值,如果所述关系词汇的置信度大于或等于所述第二阈值,将所述关系词汇的三元组和所述关系词汇的分类标识存储到所述关系词汇库,所述关系词汇的三元组包括基于所述关系词汇和其相关联的实体词汇生成的三元组。
该存储模块240可以通过判断实体词汇的置信度是否大于或等于第一阈值,如果所述实体词汇的置信度大于或等于所述第一阈值,将实体词汇和实体词汇的分类标识存储到实体词汇库,以及判断关系词汇的置信度是否大于或等于第二阈值,如果所述关系词汇的置信度大于或等于所述第二阈值,将关系词汇的三元组和关系词汇的分类标识存储到关系词汇库,关系词汇的三元组包括基于所述关系词汇和其相关联的实体词汇生成的三元组,以这样的方式对实体词汇和关系词汇进行存储可以大幅度的减少人工的干预,即减少了人力成本,便于更新实体词汇库和关系词汇库。
根据本发明的实施例,该存储模块240可以用于实现图7实施例描述的构建知识图谱方法。
图15示意性示出了根据本发明的另一个实施例的构建知识图谱装置的方框图。
除了图9实施例描述的第一获取模块210、自然语言处理模块220、识别处理模块230、存储模块240和构建模块250之外,构建知识图谱装置600还包括接收模块610和检索模块620,如图15所示。
具体地,接收模块610,用于接收用户输入的检索词。
检索模块620,用于基于所述检索词从所述知识图谱中检索出与所述检索词对应的数据。
该构建知识图谱装置500可以接收用户输入的检索词,并基于检索词从知识图谱中检索出与检索词对应的数据,这样的检索方式可以为用户提供精准的数据,提高了检索效率。
根据本发明的实施例,该构建知识图谱装置500可以用于实现图8实施例描述的构建知识图谱方法。
由于本发明的示例实施例的构建知识图谱装置的各个模块可以用于实现上述2~图8描述的构建知识图谱方法的示例实施例的步骤,因此对于本发明装置实施例中未披露的细节,请参照本发明上述的构建知识图谱方法的实施例。
可以理解的是,第一获取模块210、自然语言处理模块220、分词处理模块221、去除模块222、标注模块223、识别处理模块230、存储模块240、第一存储模块241、第二存储模块242、构建模块250、第二获取模块310、训练模块320、第一排序模块410、第一提取模块420、第二排序模块510、第二提取模块520、接收模块610、以及检索模块620可以合并在一个模块中实现,或者其中的任意一个模块可以被拆分成多个模块。或者,这些模块中的一个或多个模块的至少部分功能可以与其他模块的至少部分功能相结合,并在一个模块中实现。根据本发明的实施例,第一获取模块210、自然语言处理模块220、分词处理模块221、去除模块222、标注模块223、识别处理模块230、存储模块240、第一存储模块241、第二存储模块242、构建模块250、第二获取模块310、训练模块320、第一排序模块410、第二提取模块420、第二排序模块510、第二提取模块520、接收模块610、以及检索模块620中的至少一个可以至少被部分地实现为硬件电路,例如现场可编程门阵列(FPGA)、可编程逻辑阵列(PLA)、片上系统、基板上的系统、封装上的系统、专用集成电路(ASIC),或可以以对电路进行集成或封装的任何其他的合理方式等硬件或固件来实现,或以软件、硬件以及固件三种实现方式的适当组合来实现。或者,第一获取模块210、自然语言处理模块220、分词处理模块221、去除模块222、标注模块223、识别处理模块230、存储模块240、第一存储模块241、第二存储模块242、构建模块250、第二获取模块310、训练模块320、第一排序模块410、第一提取模块420、第二排序模块510、第二提取模块520、接收模块610、以及检索模块620中的至少一个可以至少被部分地实现为计算机程序模块,当该程序被计算机运行时,可以执行相应模块的功能。
下面参考图16,其示出了适于用来实现本发明实施例的电子设备的计算机系统700的结构示意图。图16示出的电子设备的计算机系统700仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图16所示,计算机系统700包括中央处理单元(CPU)701,其可以根据存储在只读存储器(ROM)702中的程序或者从存储部分708加载到随机访问存储器(RAM)703中的程序而执行各种适当的动作和处理。在RAM 703中,还存储有系统操作所需的各种程序和数据。CPU701、ROM 702以及RAM 703通过总线704彼此相连。输入/输出(I/O)接口705也连接至总线704。
以下部件连接至I/O接口705:包括键盘、鼠标等的输入部分706;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分707;包括硬盘等的存储部分708;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分709。通信部分709经由诸如因特网的网络执行通信处理。驱动器710也根据需要连接至I/O接口705。可拆卸介质711,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器710上,以便于从其上读出的计算机程序根据需要被安装入存储部分708。
特别地,根据本发明的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分709从网络上被下载和安装,和/或从可拆卸介质711被安装。在该计算机程序被中央处理单元(CPU)701执行时,执行本申请的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
作为另一方面,本申请还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该电子设备执行时,使得该电子设备实现如上述实施例中所述的构建知识图谱方法。
例如,所述的电子设备可以实现如图2中所示的:在步骤S110中,获取包含非结构化文本的非结构化文本库。在步骤S120中,根据包含实体词汇的实体词汇库和包含关系词汇的关系词汇库对所述非结构化文本库中的非结构化文本进行自然语言处理,得到所述非结构化文本的词汇,所述关系词汇库中的每个关系词汇为实体词汇之间的词汇。在步骤S130中,利用实体识别模型和关系识别模型分别对所述非结构化文本的词汇进行识别处理,得到所述非结构化文本的实体词汇和关系词汇以及所述实体词汇的置信度和所述关系词汇的置信度。在步骤S140中,根据所述实体词汇的置信度和所述关系词汇的置信度,将非结构化文本的实体词汇和关系词汇分别存储到所述实体词汇库和所述关系词汇库,以更新所述实体词汇库和所述关系词汇库。在步骤S150中,基于更新后的实体词汇库和关系词汇库构建知识图谱。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本发明的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本发明实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、触控终端、或者网络设备等)执行根据本发明实施方式的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。