一种实体链接的方法、装置、设备及存储介质与流程

文档序号:27833730发布日期:2021-12-07 22:58阅读:83来源:国知局
一种实体链接的方法、装置、设备及存储介质与流程

1.本技术涉及自然语言处理领域,尤其涉及一种实体链接的方法、装置、设备及存储介质。


背景技术:

2.实体链接(entity linking,el)技术是近年来自然语言处理领域的一个热点,尤其在知识图谱构建等场景起着非常重要的作用。具体的,实体链接是一种将待识别文本中出现的实体映射至给定知识图谱中的技术,用于将待识别的实体与知识图谱中存在的实体对应起来,以完成问题回答、语义搜索、信息提取等自然语言任务。
3.实体链接可以包括实体识别和实体消歧两个过程,实体识别用于根据待识别实体在知识图谱中确定多个候选实体,实体消歧则用于从所有候选实体中,选出待识别实体所指的唯一实体。其中,实体消歧的本质在于一词多义,需要根据上下文的内容以及待识别实体所处语境来进行匹配识别,一般的,可以采用预处理语言模型来进行实体消歧。
4.由于基于预训练语言模型的实体消岐方法会考虑知识图谱中全部候选实体的实体信息,这样会导致实体消歧因为考虑过多实体信息而掩盖了更相关的信息,并且当候选实体过多时,这种实体消岐方法因需要对全部候选实体进行消岐分数而导致计算量巨大,耗时长。因此,如何降低用于实体消歧的预训练语言模型的计算量成为亟需解决的问题。


技术实现要素:

5.本技术实施例提供了一种实体链接的方法、装置、设备及存储介质,当确定待链接实体在知识图谱中的链接实体时,先根据待链接实体的上下文内容对多个候选实体进行粗筛,然后将筛选后的候选实体和待链接实体输入至实体消歧模型中,以获取待链接实体与候选实体之间的消歧分数,进而通过消歧分数来最终确定候选实体中的链接实体,通过粗筛的过程即可以减少实体消歧模型的输入数据量,进而降低实体消歧模型的计算量。
6.有鉴于此,本技术一方面提供了一种实体链接的方法,包括:
7.在待识别文本中获取待链接实体和待链接实体对应的上下文内容。
8.根据待链接实体,在知识图谱中确定多个候选实体以及多个候选实体中每个候选实体的实体信息。
9.将上下文内容和每个候选实体对应的实体信息进行匹配,得到第一匹配分数。
10.根据第一匹配分数,确定多个候选实体中的目标候选实体。
11.基于待链接实体和目标候选实体之间的消歧分数,确定目标候选实体中的目标实体。
12.将目标实体确定为待链接实体对应的链接实体。
13.本技术另一方面提供了一种实体链接的装置,包括:
14.获取单元,用于在待识别文本中获取待链接实体和待链接实体对应的上下文内容。
15.确定单元,用于根据待链接实体,在知识图谱中确定多个候选实体以及多个候选实体中每个候选实体的实体信息。
16.匹配单元,用于将上下文内容和每个候选实体对应的实体信息进行匹配,得到第一匹配分数。
17.确定单元,还用于根据第一匹配分数,确定多个候选实体中的目标候选实体。
18.确定单元,还用于基于待链接实体和目标候选实体之间的消歧分数,确定目标候选实体中的目标实体。
19.确定单元,还用于将目标实体确定为待链接实体对应的链接实体。
20.在一种可能的设计中,确定单元,具体用于根据上下文内容对目标候选实体对应的实体信息进行相关性排序,根据相关性排序结果确定目标候选实体对应的实体信息中的关键信息,将待链接实体、上下文内容、目标候选实体和关键信息输入至实体消歧模型,通过实体消歧模型获取待链接实体和目标候选实体之间的消歧分数。
21.在一种可能的设计中,匹配单元,具体用于对上下文内容和每个候选实体对应的实体信息进行分词处理,得到上下文内容包括的第一分词和每个候选实体对应的实体信息包括的第二分词。计算第一分词对应的词向量和第二分词对应的词向量的余弦相似度,根据余弦相似度确定第一匹配分数。
22.在一种可能的设计中,匹配单元,具体用于根据余弦相似度获取每个候选实体对应的相似度分布向量,将每个候选实体对应的相似度分布向量输入至第一模型,通过第一模型获取上下文内容和每个候选实体对应的实体信息的第一匹配分数,第一模型用于根据相似度分布向量确定分布分数。
23.在一种可能的设计中,匹配单元,具体用于根据余弦相似度的数值,确定每个预设的余弦相似度区间中的第二分词个数,其中,余弦相似度预设有多个余弦相似度区间。根据每个预设的余弦相似度区间中的第二分词的个数,确定每个候选实体对应的相似度分布向量。
24.在一种可能的设计中,获取单元,具体用于获取每个候选实体的实体信息所对应的词频信息。
25.确定单元,具体用于根据词频信息确定每个候选实体对应的权重值,并根据权重值和第一匹配分数,确定每个候选实体对应的第二匹配分数。若第二匹配分数超过第一预设阈值,则确定该候选实体为目标候选实体。
26.在一种可能的设计中,确定单元,具体用于对上下文内容和目标候选实体对应的实体信息进行分词处理,得到上下文内容包括的第三分词和目标候选实体对应的实体信息包括的第四分词;计算第三分词对应的词向量和第四分词对应的词向量的余弦相似度。根据第三分词对应的词向量和第四分词对应的词向量的余弦相似度的数值,对第四分词进行排序,根据第四分词的排序结果,确定第四分词中的目标分词,其中,目标分词与第三分词之间的余弦相似度超过第二预设阈值;将目标分词对应的实体信息确定为关键信息。
27.在一种可能的设计中,确定单元,具体用于通过实体消歧模型对上下文内容和关键信息进行相似度计算,根据相似度计算的计算结果,确定待链接实体和目标候选实体之间的消歧分数。
28.在一种可能的设计中,该实体链接的装置还包括训练单元。获取单元,还用于获取
预训练语言模型,预训练语言模型包括词嵌入层和任务层,词嵌入层用于对输入语料进行词向量表示,任务层用于完成预训练语言任务。
29.训练单元,具体用于根据第一语料数据对预训练语言模型进行训练,更新预训练语言模型的词嵌入层参数。
30.确定单元,还用于根据更新后的预训练语言模型的词嵌入层参数,确定待训练实体消歧模型。
31.训练单元,还用于根据第二语料数据对待训练实体消歧模型进行训练,第二语料数据包括待消歧实体样本和待消歧实体样本的标注信息。当训练结果满足训练条件时,获得实体消歧模型。
32.在一种可能的设计中,获取单元,具体用于获取更新后的预训练语言模型的词嵌入层参数。
33.确定单元,还用于根据更新后的预训练语言模型的词嵌入层参数初始化待训练实体消歧模型的词嵌入层的参数,其中,待训练实体消歧模型包括词嵌入层和任务层,待训练实体消歧模型的词嵌入层与预训练语言模型的词嵌入层的模型参数相同。
34.在一种可能的设计中,确定单元,具体用于若待链接实体和目标候选实体之间的消歧分数超过第三预设阈值,则确定目标候选实体为目标实体。若目标候选实体对应的消歧分数均未超过第三预设阈值,则确定消歧分数最高的目标候选实体为目标实体。
35.在一种可能的设计中,该实体链接的装置还包括接收单元。
36.接收单元,具体用于接收文本查询指令。
37.获取单元,还用于根据文本查询指令获取查询文本,查询文本为待识别文本。
38.确定单元,还用于根据链接实体确定与查询文本相关的至少一条查询结果,反馈至少一条查询结果。
39.本技术的另一方面提供了一种计算机可读存储介质,计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述各方面的方法。
40.从以上技术方案可以看出,本技术实施例具有以下优点:
41.本技术实施例中,提供了一种实体链接的方法,当利用实体消歧模型对知识图谱中的候选实体进行实体消歧时,先根据待链接实体的上下文内容对多个候选实体进行粗筛,然后将筛选后的候选实体与待链接实体输入至实体消歧模型,这样,就可以减少实体消歧模型的匹配工作量,更加高效的确定各候选实体针对于待链接实体的消歧分数,从而减少实体链接的时长,提高实体链接任务的完成效率。
附图说明
42.图1为本技术实施例提供的一种实体链接方法的流程示意图;
43.图2为本技术实施例提供的另一种实体链接方法的流程示意图;
44.图3为本技术实施例提供的一种候选实体的筛选方法的流程示意图;
45.图4为本技术实施例提供的一种候选实体筛选的结构示意图;
46.图5为本技术实施例提供的一种实体消歧模型的获取方法的流程示意图;
47.图6为本技术实施例提供的一种预训练模型的结构示意图;
48.图7为本技术实施例提供的一种实体链接的装置的结构示意图;
49.图8为本技术实施例提供的一种计算机设备的实施例示意图。
具体实施方式
50.本技术实施例提供了一种实体链接的方法、装置、设备及存储介质,当确定待链接实体在知识图谱中的链接实体时,先根据待链接实体的上下文内容对多个候选实体进行粗筛,然后将筛选后的候选实体和待链接实体输入至实体消歧模型中,以获取待链接实体与候选实体之间的消歧分数,进而通过消歧分数来最终确定候选实体中的链接实体,通过粗筛的过程即可以减少实体消歧模型的输入数据量,进而降低实体消歧模型的计算量。
51.本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“对应于”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
52.随着网络数据呈指数级别增长,互联网俨然已经成为最大的数据仓库,其中,大量的网络数据以自然语言的形式呈现在互联网中。为了理解互联网上自然语言的具体语义信息,就需要将自然语言与知识库连接起来,利用知识库中的知识完成对自然语言的标注。由于自然语言本身具有高度的歧义性,例如同一个实体可能对应多个名称,而一个名称又可能对应多个同名实体。因此,要实现对某一自然语言文本的标注,就需要将该自然语言文本中出现的实体与知识库中唯一的一个实体(知识)对应起来,而实现这一步的关键便是实体链接技术。
53.实体链接就是将自然语言文本中的某些字符串(实体)映射到知识库中的实体上。例如将自然语言文本“学生喜欢吃苹果”中的“苹果”映射到知识库中的某个实体上。可以理解的,知识库中存在同名异实体或者同实体异名的现象,因此这个映射过程就需要进行实体消歧。实体消歧是一种在知识图谱的所有候选实体中,选出实体指称所指实体的技术,例如在上述例子中,“学生喜欢吃苹果”中的“苹果”应该指的是知识库中“苹果(水果)”这一实体,而不是“苹果(电子产品)”这一实体。
54.由上述例子可以看出,实体链接的难点在于两个方面,多词一义和一词多义。多词一义是指一个实体可能有多个名称,实体的标准名、别名、名称缩写等都可以用来指代该实体。例如“土豆”、“洋芋”和“马铃薯”都指代的是同一个实体。而一词多义是指一个指称可以指代多个实体,而要解决一词多义问题,就要利用知识库中实体信息进行实体消歧。即实体链接一般包括两个步骤,指称识别和实体消歧两个过程。其中,实体链接的第一步是进行指称识别,示例性的,可以构建一个指称

实体字典,用来统计管理某一实体的标准名和别名,然后根据指称

实体字典来识别自然语言文本中的实体以及知识库中的候选实体。实体链接的第二步则可以根据知识库中的实体信息以及自然语言文本的内容来对候选实体进行实体消歧操作,确定最终的实体序列。
55.其中,用来进行实体消歧的知识库可以是知识图谱,知识图谱作为一种规模非常大的语义网络系统,目的是为了确定实体或概念之间的关联关系。通过大量的数据收集,知
识图谱被整理成机器能处理的知识库,并且实现可视化展示。其中,知识图谱由节点和连接节点的边构成,节点可以是实体,边则用来表示实体与实体之间的关系。比如“苹果”与“水果”,在知识图谱中对应两个节点,这两个节点通过一条由“苹果”指向“水果”的边连接,这条边就可以为“属性”,代表“苹果”的属性是“水果”。
56.由于知识图谱是机器学习自然语言的基础,并且其中存储有大量的实体信息,因此需要严格保证其安全性,保证其包括的内容不能被轻易篡改。因此,可以使用区块链技术来对知识图谱进行存储,以维护知识图谱的安全性和稳定性。下面对区块链技术来进行简单描述:
57.区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层。
58.区块链底层平台可以包括用户管理、基础服务、智能合约以及运营监控等处理模块。其中,用户管理模块负责所有区块链参与者的身份信息管理,包括维护公私钥生成(账户管理)、密钥管理以及用户真实身份和区块链地址对应关系维护(权限管理)等,并且在授权的情况下,监管和审计某些真实身份的交易情况,提供风险控制的规则配置(风控审计);基础服务模块部署在所有区块链节点设备上,用来验证业务请求的有效性,并对有效请求完成共识后记录到存储上,对于一个新的业务请求,基础服务先对接口适配解析和鉴权处理(接口适配),然后通过共识算法将业务信息加密(共识管理),在加密之后完整一致的传输至共享账本上(网络通信),并进行记录存储;智能合约模块负责合约的注册发行以及合约触发和合约执行,开发人员可以通过某种编程语言定义合约逻辑,发布到区块链上(合约注册),根据合约条款的逻辑,调用密钥或者其它的事件触发执行,完成合约逻辑,同时还提供对合约升级注销的功能;运营监控模块主要负责产品发布过程中的部署、配置的修改、合约设置、云适配以及产品运行中的实时状态的可视化输出,例如:告警、监控网络情况、监控节点设备健康状态等。
59.平台产品服务层提供典型应用的基本能力和实现框架,开发人员可以基于这些基本能力,叠加业务的特性,完成业务逻辑的区块链实现。应用服务层提供基于区块链方案的应用服务给业务参与方进行使用。
60.通过上述描述可以看出,实体链接的关键在于实体消歧,实体消歧的本质在于自然语言的多样性和歧义性。其中,多样性是指同一实体在文本中有不同指称,例如某一段自然语言文本中,“飞人”、“帮主”和“mj”均指的是美国篮球运动员a。而歧义性是指相同的实体指称在某个知识图谱中可以指不同的实体,例如某个知识图谱中,a可以指美国篮球运动员,还可以指爱尔兰政治家等。在现有技术中,实体消歧的方法有多种,最常见的是利用神经网络来得到用来进行实体消歧的自然语言模型,最后利用自然语言模型来完成实体消歧任务。
61.具体的,可以先确定某个自然语言文本中的实体指称(待链接实体),然后根据实体指称确定知识图谱中的所有候选实体,其中,候选实体的指称与实体指称相同。然后通过知识图谱中的网络关系获取候选实体的信息,最后将实体指称、实体指称的上下文内容以
及候选实体和候选实体信息输入至自然语言模型中,根据上下文内容来匹配候选实体信息,得到与上下文信息最相关的实体信息,并将该实体信息对应的候选实体确定为实体指称对应的目标实体。在上述方法中,自然语言模型需要对全部候选实体的全部实体信息进行分析,获取每个候选实体对应的消岐分数,这样将导致自然语言模型计算量巨大,耗时长。因此,如何降低用于自然语言模型的计算量成为亟需解决的问题。
62.基于上述问题,本技术实施例提供了一种实体链接的方法,在确定待链接实体在知识图谱中的候选实体后,先根据待链接实体的上下文内容对多个候选实体进行粗筛,并且对粗筛后的候选实体的实体信息也进行筛选,然后将筛选后的候选实体和待链接实体输入至实体消歧模型中,以获取实体消歧结果,这样,通过实体粗筛和信息筛选的过程,就可以减少实体消歧模型的输入数据量,从而降低自然语言模型的计算量。
63.在介绍本技术方案之前,先对自然语言处理(nature language processing,nlp)领域进行简单介绍,自然语言处理是计算机科学领域与人工智能领域中的一个重要方向。它研究能实现人与计算机之间用自然语言进行有效通信的各种理论和方法。自然语言处理是一门融语言学、计算机科学、数学于一体的科学。因此,这一领域的研究将涉及自然语言,即人们日常使用的语言,所以它与语言学的研究有着密切的联系。自然语言处理技术通常包括文本处理、语义理解、机器翻译、机器人问答、知识图谱等技术。
64.图1为本技术实施例提供的一种实体链接方法的流程示意图,如图1所示,包括如下步骤:
65.s1、确定待识别文本中的待链接实体。
66.s2、根据待链接实体确定知识图谱中的候选实体。
67.s3、根据待链接实体的上下文内容进行候选实体粗筛。
68.s4、基于深度相关性排序对候选实体的实体信息进行筛选。
69.s5、基于筛选后的候选实体和实体信息利用自然语言模型进行实体消歧。
70.s6、输出消歧结果。
71.当需要对一段自然语言文本进行识别时,可以先利用分词技术对待识别文本进行分词操作,并根据分词结果确定待识别文本中的待链接实体(实体指称),然后根据实体指称在预先选定的知识图谱中确定多个候选实体,并且获取多个候选实体的实体信息。然后根据实体指称对应的上下文内容(待识别文本)以及多个候选实体的实体信息,先对多个候选实体进行粗筛,具体粗筛的过程有多种,以下将进行详细介绍。对候选实体进行粗筛后,还需要对剩下的候选实体所包括的实体信息进行筛选,以获得更有利于实体消歧的信息,这样,结合筛选后的候选实体以及实体信息进行实体消歧,具体的,利用自然语言模型来对实体指称的上下文内容和候选实体的实体信息进行匹配,最终输出消歧结果,确定实体指称对应的唯一的目标实体。由于在自然语言模型输入数据之前,已经进行了候选实体的粗筛和实体信息的筛选,这样就可以减少自然语言模型的匹配工作量,更高效的确定各候选实体针对于待链接实体的消歧分数,从而减少实体链接的运算量和时长,提高实体链接任务的完成效率。
72.下面对实体链接的方法进行具体介绍,图2为本技术实施例提供的一种实体链接方法的流程示意图,如图2所示,该方法包括以下几个步骤。
73.201、在待识别文本中获取待链接实体和待链接实体的上下文内容。
74.当需要利用机器对自然语言文本进行语义识别时,就需要先确定待识别文本中的至少一个实体。由于自然语言具有多样性和歧义性的特点,那么机器首先需要解决的是多样性的问题,即需要先确定待识别文本中的待链接实体。示例性的,可以先对待识别文本进行分词操作,然后根据词语来确定待链接实体,例如,某待识别文本为“刘某即将开演唱会,据悉铁肺歌手此次将演唱20多首歌,展现天王魅力。”通过对上述文本进行分词操作,可以确定其包括的词语“刘某”、“铁肺歌手”和“天王”都表示影视明星刘某,那么就可以确定上述文本的一个待链接实体为“刘某”。
75.示例性的,解决自然语言多样性问题可以利用指称

实体字典的形式来建立知识库,该知识库用于存储实体的多种指称,包括实体的标准名,别名和名称速写等。在确定待识别文本中的待链接实体时,就可以根据待识别文本包括的词语匹配指称

实体字典中的实体,根据实体的标准名,别名和名称速写等来确定最终的实体指称。
76.当确定好待链接实体时,机器就需要来解决自然语言的歧义性问题,歧义性问题的本质在于自然语言存在一词多义的问题,这个问题不能单纯利用表面的文字表示来解决,需要结合语境和上下文内容来确定实体指称的语义,因此,就需要从待识别文本中获取待链接实体的上下文内容,结合上下文内容来确定待链接实体。
77.202、根据待链接实体,在知识图谱中确定多个候选实体以及每个候选实体的实体信息。
78.当确定好待识别文本中的待链接实体后,首先需要根据实体指称在知识图谱中确定多个候选实体,并且需要利用知识图谱中的边关系获取每个候选实体对应的实体信息。示例性的,在上述例子中,当确定待链接实体为“刘某”时,就可以根据“刘某”这两个字来确定知识图谱中的多个候选“刘某”。由于知识图谱中包括海量的实体信息,假设知识图谱中包括两个“刘某”实体,就需要将两个“刘某”实体都确定为候选实体,然后获取每个“刘某”实体对应的实体信息,示例性的,实体信息可以包括国籍、职业、年龄和性别等。
79.203、将待链接实体的上下文内容和每个候选实体的实体信息进行匹配,得到第一匹配分数。
80.在获得多个候选实体后,首先需要对候选实体进行粗筛,其目的是将一些相关性极低的候选实体进行删除,这样可以减轻后续实体消歧过程的工作量。具体的,可以结合待链接实体的上下文内容以及每个候选实体的实体信息对候选实体进行筛选,通过确定待链接实体的上下文内容以及每个候选实体的实体信息的匹配程度,获得第一匹配分数。
81.204、根据第一匹配分数,确定多个候选实体中的目标候选实体。
82.当确定好待链接实体的上下文内容与每一个候选实体的实体信息之间的第一匹配分数后,就可以根据第一匹配分数对候选实体进行筛选。示例性的,可以根据匹配分数的大小来对候选实体进行排序,根据预设个数将匹配分数高的候选实体作为目标候选实体。示例性的,还可以根据预设阈值的方式来挑选目标候选实体,若某候选实体对应的第一匹配分数高于预设阈值时,则确定该候选实体为目标候选实体。
83.在上述例子中,待链接实体“刘某”匹配到了两个候选实体“刘某”,假设其中一个候选实体“刘某”的职业为公交司机,结合待链接实体“刘某”对应的上下文内容中的“开演唱会”确定出的匹配分数低于预设阈值,那么就需要将该候选实体“刘某”进行删除,确定另一个候选实体“刘某”为目标候选实体。
84.205、根据待链接实体的上下文内容,对目标候选实体的实体信息进行相关性排序。
85.在对候选实体进行粗筛后,还需要对目标候选实体的实体信息进行相关性排序,由于知识图谱中的每一个实体均包括海量的实体信息,而针对于某种语境而言,实体信息与该语境的关联度也有差别,若结合目标候选实体的所有实体信息进行实体消歧,势必会带来极大的工作量,实体消歧的效率极低,因此在实体消歧前,还可以对目标候选实体的实体信息进行相关性排序,筛选出与待链接实体的上下文内容更相关的实体信息来进行后续的实体消歧过程。
86.206、根据相关性排序结果确定目标候选实体的关键信息。
87.结合上述步骤,可以根据相关性排序的排序结果来确定目标候选实体的关键信息,并利用目标候选实体的关键信息来进行实体消歧。示例性的,在上述例子中,待链接实体“刘某”的上下文内容包括“开演唱会”和“演唱”,结合上下文内容可以得知职业与该上下文内容的关联度最高,这样就可以根据关联度关系对目标候选实体中的实体信息进行排序,并且可以确定职业这一实体信息为关键信息。
88.207、根据待链接实体、待链接实体的上下文内容、目标候选实体、目标候选实体的关键信息,获取待链接实体和目标候选实体之间的消歧分数。
89.当对候选实体以及候选实体对应的实体信息进行筛选后,就需要将待链接实体、待链接实体的上下文内容、目标候选实体、目标候选实体的关键信息输入至最终的实体消歧模型中,获得消歧分数,完成实体消歧的过程。
90.可以理解的,实体消歧模型为自然语言处理模型,可以包括词嵌入层和任务层。其中,词嵌入层的任务是对输入的自然语言进行更好的词向量表示,而任务层则是对词向量进行运算,以得到最终的任务结果。在实体消歧模型中,任务层的任务就是实体消歧,即可以确定词向量之间的相关性,评价待链接实体与候选实体的相关度,得到消歧分数。其中,消歧分数即是待链接实体与候选实体之间相关度的评价,根据消歧分数可以最终确定待链接实体在多个目标候选实体中对应的目标实体。
91.208、基于待链接实体和目标候选实体之间的消歧分数,确定目标候选实体中的目标实体。
92.示例性的,可以预先设置预设阈值(第三预设阈值),若待链接实体和目标候选实体之间的消歧分数超过第三预设阈值,则确定该目标候选实体为目标实体。若待链接实体和目标候选实体之间的消歧分数均未超过第三预设阈值,则可以确定消歧分数最高的目标候选实体为目标实体。
93.209、将目标实体确定为待链接实体对应的链接实体。
94.在确定好待链接实体对应的目标实体后,就可以将待链接实体与目标实体链接起来,完成相关的自然语言任务。示例性的,如语义搜索,关键字识别等。例如,机器基于接收的文本查询指令来进行实体链接的过程,在确定好带识别文本中待链接实体对应的链接实体时,可以响应该文本查询指令,根据知识图谱中的链接实体来获取多个查询结果,这些查询结果均来自于链接实体的实体信息,然后将查询结果反馈并展示。
95.本技术实施例中,提供了一种实体链接的方法,当利用实体消歧模型对知识图谱中的候选实体进行实体消歧时,先根据待链接实体的上下文内容对多个候选实体进行粗
筛,然后再对剩下的候选实体的实体信息进行筛选,最后将筛选后的候选实体与实体信息输入至实体消歧模型,以得到最后的实体消歧结果,这样,就可以减少实体消歧模型的匹配工作量,更加高效的确定各候选实体针对于待链接实体的消歧分数,从而减少实体链接的时长,提高实体链接任务的完成效率。
96.下面将结合图2所示实施例,对候选实体的粗筛以及目标候选实体的关键信息选择这两个过程进行详细的介绍。图3为本技术实施例提供的一种候选实体的筛选方法的流程示意图,包括:
97.301、对待链接实体的上下文内容进行分词处理,得到上下文内容包括的第一分词。
98.在进行候选实体粗筛的过程中,需要对待链接实体的上下文内容进行分词处理,根据其包括的第一分词来表示上下文表示的语境信息,图4为本技术实施例提供的候选实体筛选的结构示意图,如图4所示,上下文内容经过分词处理被分为多个第一分词,每个第一分词都需要与候选实体对应的实体信息进行匹配。
99.302、对候选实体对应的实体信息进行分词处理,得到实体信息包括的第二分词。
100.同理,还需要对候选实体对应的实体信息进行分词处理,如图4所示,候选实体可能包括多个实体信息,机器需要对每个实体信息均进行分词处理,得到多个第二分词,而每个第二分词也需要与待链接实体的上下文内容包括的每一个第一分词进行匹配。
101.303、计算第一分词对应的词向量和第二分词对应的词向量之间的余弦相似度。
102.具体的匹配过程,可以是计算第一分词和第二分词所对应词向量之间的余弦相似度,将每一个第一分词进行词向量表示,将每个第二分词也用词向量进行表示。然后将每个第一分词对应的词向量分别与每一个第二分词对应的词向量进行余弦相似度计算。可以理解的,若第一分词有m个,第二分词有n个,那么就需要进行m*n次余弦相似度的计算,得到m*n个余弦相似度值。
103.304、根据预设的余弦相似度区间,统计每个余弦相似度区间对应的第二分词的个数。
104.当得到多个余弦相似度数值时,就需要对该多个余弦相似度数值进行统计表示。示例性的,由于余弦相似度的数值在[

1,1]的区间内,那么可以根据预设的步长先对[

1,1]区间进行划分,例如可以以0.2的步长将[

1,1]划分为10个区间。然后再确定落入每个区间的余弦相似度的个数,示例性的,第一分词有5个,第二分词有10个,一共进行50次余弦相似度的计算,那么就需要统计落入每个余弦相似度区间的个数,例如,落入[

1,

0.8]的余弦相似度的个数为10。
[0105]
305、根据每个余弦相似度区间对应的第二分词的个数,确定候选实体对应的相似度分布向量。
[0106]
待统计好每个余弦相似度区间对应的余弦相似度的个数后,就需要根据统计结果来确定候选实体对应的相似度分布向量,例如,在上述例子中,落入[

1,

0.8]的余弦相似度的个数为10,落入[

0.8,

0.6]的余弦相似度的个数为2,落入[

0.6,

0.4]的余弦相似度的个数为0......那么就可以确定该相似度分布向量为[10,2,0,5,4,6,8,5,3,7,0]。可以理解的,相似度分布向量与余弦相似度区间的步长有很大关系,当步长为0.2时,相似度分布向量为十维向量,当步长为0.1时,相似度分布向量为二十维向量。
[0107]
306、根据相似度分布向量,确定待链接实体的上下文内容和候选实体的实体信息之间的第一匹配分数。
[0108]
当确定好相似度分布向量后,就可以将其输入至第一模型中,得到第一匹配分数。可以理解的,第一模型可以根据相似度分布向量来评价余弦相似度的分布情况,即根据相似度分布向量来确定分布分数,根据分布分数来评价二者相似度。其中,第一模型也可以是模型的全链接层,将相似度分布向量输入至全链接层得到分布分数,具体不做限定。
[0109]
307、获取候选实体的实体信息所对应的词频信息,并根据词频信息确定候选实体对应的权重值。
[0110]
其中,词频信息是指上下文包括的第一分词与实体信息包括的第二分词的性质,包括第一分词在上下文内容中出现的频率以及第一分词针对于上下文内容的逆向文本频率,反映的是第一分词对上下文内容语义理解的重要程度,其主要思想为如果某个单词在一篇文章中出现的频率高,并且在其他文章中很少出现,则认为此词或者短语具有很好的类别区分能力,适合用来分类识别。同理,第二分词在实体信息中出现的频率以及第二分词针对于实体信息的逆向文本频率,也能反应第二分词对实体信息的重要程度。利用词频信息就可以对每个候选实体中的第二分词进行评价,并根据评价结果来确定每个候选实体的权重值,示例性的,若一个候选实体包括的第二分词具有良好的类别区分能力时,就需要适当提高该候选实体的权重值。
[0111]
308、根据权重值和第一匹配分数,确定候选实体对应的第二匹配分数。
[0112]
根据上述每个候选实体的权重值以及每个候选实体针对待链接实体的第一匹配分数,可以综合得到第二匹配分数。然后根据第二匹配分数来对候选实体进行筛选。
[0113]
309、根据第二匹配分数确定候选实体中的目标候选实体。
[0114]
具体的,可以设置第一预设阈值,若第二匹配分数超过第一预设阈值,则确定该候选实体为目标候选实体。还可以根据第二匹配分数确定多个候选实体的优先等级,根据优先级等级来确定候选实体中的目标候选实体。
[0115]
在上述实施例中,对待链接实体对应的上下文内容以及候选实体的实体信息进行分词处理,然后根据第一分词和第二分词对应的词向量之间的余弦相似度来获取相似度分布向量,然后根据该相似度分布向量来评价上下文内容和实体信息的相关度,最后筛选出与上下文内容相关度高的候选实体作为目标候选实体,利用该方法,能够更精准高效的完成候选实体的筛选,减少后续实体消歧过程的工作量,从而大大提高实体链接的效率。
[0116]
在完成候选实体粗筛,获得目标候选实体后,还需要对目标候选实体的实体信息进行筛选,其目的是为了选择出与待链接实体对应的上下文内容更相关的关键信息作为后续实体消歧的对比信息。具体的,可以基于深度相关性排序思想对候选实体的实体信息进行排序,再根据排序结果选择重要的信息作为关键信息以输入至实体消歧模型中。
[0117]
深度相关性排序也可以基于余弦相似度来进行。首先,先对待链接实体对应的上下文内容进行分词处理,得到多个上下文内容对应的第三分词,可以理解的,该第三分词可以与上述候选实体粗筛过程中的第一分词相同,也可以不同,具体分词结果与分词操作对应的算法相关,在此不做限定。然后还需要对目标候选实体的实体信息进行分词,得到第四分词,同理,该第四分词与上述候选实体粗筛过程中的第二分词可以相同,也可以不同。
[0118]
在得到第三分词和第四分词后,就需要依次对第三分词和第四分词进行余弦相似
度的计算,具体的,可以先分别确定第三分词和第四分词的词向量,然后依次计算每个第三分词和每一个第四分词对应的词向量的余弦相似度。接着,根据获得的余弦相似度的数值,对多个第四分词进行排序,筛选出与第三分词相似度高的第四分词,并将其对应的实体信息确定为目标候选实体的关键信息。
[0119]
利用上述方法对目标候选实体的实体信息进行筛选,可以选择出与待链接实体上下文内容更相关的关键信息来进行实体消歧,这样,后续的实体消歧过程就无需对目标候选实体的所有实体信息进行对比识别,从而减少实体消歧模型的工作量,提高整个实体链接的效率,减少实体链接的时长。
[0120]
下面对实体消歧模型进行简单介绍,实体消歧模型的通过对比候选实体的实体信息和待链接实体的上下文内容,来获得两者的消歧分数,该消歧分数用来衡量候选实体的实体信息和待链接实体的上下文内容的匹配程度,其目的就是为了从候选实体中找到与待链接实体高度一致的目标实体,即获得的目标实体与待链接实体指的是同一实体。为了提高实体消歧结果的精确度,可以通过自然语言模型来进行实体消歧,具体的,可以基于预训练模型来获取用于实体消歧的实体消歧模型。
[0121]
现有主流的自然语言理解模型都是基于预训练模型的微调模型。即基于公开的无标注数据,首先在掩码语言模型(masked language model,mlm)或者下句预测模型(next sentence prediction,nsp)等任务上预训练一个模型,然后基于具体的自然语言理解任务来设计该预训练模型的下游网络结构,接着再利于该任务的标注数据来对整个网络结构进行微调训练,最终得到关于具体任务的神经网络模型。因此,实体消歧模型的获取可以先获取预训练模型,然后根据实体消歧任务来设计下游网络结构,然后在训练好的预训练模型中,更换任务层获得实体消歧模型,再基于实体消歧的样本数据来对该实体消歧模型进行训练,当达到训练要求时,就可以获取最后的实体消歧模型。
[0122]
自然语言模型的按照网络模型结构的功能可以分为词嵌入层(word embedding)、转换器层(transformers)以及下游任务层;其中,词嵌入层用于将输入的自然语言进行分词,并将词语转换为词向量,转换器层用于处理并理解输入的自然语言数据,明确自然语言中各词语之间的逻辑关系以及词语序列;而下游网络层则与具体的自然语言任务相关,不同任务对应的下游网络层的网络结构不同,下游网络层通过转换器层的逻辑关系对词向量进行运算,最终得到自然语言对应的关于具体任务的输出结果;因此可以看出,词嵌入层主要用于机器识别文字数据,对文字数据向量化,与具体的任务无关;而转换器层和下游任务层则需要理解输入的文字数据,并对文字数据进行反应,得到输出结果,因此其与具体的语言任务密切相关,可以统称为任务层。
[0123]
由于自然语言模型的网络结构层数很深,若每一层网络结构的参数都随机初始化,则需要大量的训练数据对模型进行训练,其自然语言模型的训练过程将极其缓慢;现有的,一般采取预训练方式,来获取针对具体任务的自然语言模型;即先用一个较大的训练数据集合针对预任务对网络模型进行预先训练,得到预训练模型,可以理解的,该预训练模型已经学习到部分语言知识;然后根据预训练模型的部分网络参数来对任务模型(自然语言模型)的参数进行初始化,这样,就可以在预训练模型的基础上训练任务模型,既减少了任务模型的训练数据的数量,又可以加速任务模型的收敛速度,提高任务模型的获取效率。
[0124]
下面基于预训练模型对实体消歧模型的训练过程进行介绍,图5为本技术实施例
提供的一种实体消歧模型的获取方法的流程示意图,包括:
[0125]
501、获取预训练模型。
[0126]
预训练模型的网络结构可以分为第一词嵌入层和第一任务层,其中,第一词嵌入层用于对输入的语料进行词向量转换,第一任务层则与预训练模型的预任务相关,根据任务对词向量进行运算,得到输入语料的输出结果。示例性的,该预训练模型可以是基于mlm或者nsp等任务预训练出的一个模型,第一词嵌入层的主要目的为对输入的语料进行很好的词向量表示。
[0127]
502、利用无标注语料对预训练模型进行训练。
[0128]
要通过预训练模型得到关于实体消歧的自然语言模型时,就需要利用实体消歧语料对预训练模型进行微调,这样,预训练模型能更有针对性的学习实体消歧的知识,同时也会提高训练速度。
[0129]
其中,实体消歧语料中的样本包括待链接实体以及待链接实体的上下文,候选实体和候选实体的实体信息,将实体消歧语料输入至预训练模型,可以使得预训练模型获取实体消歧的知识,以便词嵌入层对语料进行更好的词向量表示。
[0130]
503、确定训练后的预训练模型的词嵌入层参数。
[0131]
当预训练模型的训练过程结束后,预训练模型的词嵌入层已经能很好的表达输入的实体消歧语料,这样,就需要获取该预训练模型的词嵌入层参数,利用预训练模型的词嵌入层参数来初始化实体消歧模型的词嵌入层参数,完成知识的迁移,并且能加快后续实体消歧模型的训练过程,使得实体消歧模型能够快速收敛。
[0132]
504、根据训练后的预训练模型的词嵌入层参数确定实体消歧模型的词嵌入层参数。
[0133]
结合实体消歧任务,来设计目标任务层的结构,使得目标任务层能够对待链接实体的上下文内容和候选实体的实体信息进行匹配,以评价其相似程度。然后对预训练模型的词嵌入层结构和目标任务层结构进行组合,得到实体消歧模型的结构,并利用预训练模型的词嵌入层参数对实体消歧模型的词嵌入层参数进行初始化,最终得到待训练的模型。
[0134]
505、利用实体消歧样本对实体消歧模型进行训练,得到训练后的实体消歧模型。
[0135]
具体的,实体消歧样本包括待链接实体、待链接实体的上下文内容、候选实体和候选实体的实体信息,以及待链接实体的标注信息,训练过程为将待链接实体、待链接实体的上下文内容、候选实体和候选实体的实体信息输入实体消歧模型,得到实体消歧结果,然后计算实体消歧结果和待链接实体的标注信息之间的损失,然后反向传递该损失,调整实体消歧模型的参数,通过多次反向迭代,当达到训练条件时,例如达到预设训练次数或者损失值小于预设阈值时,结束训练过程,得到最终的实体消歧模型。
[0136]
通过上述方法,可以基于预训练模型来获得实体消歧模型,利用知识迁移来加快实体消歧模型的训练过程,提高实体消歧模型的训练效率。
[0137]
图6为本技术实施例提供的一种预训练模型的结构示意图;其中,将待链接实体上下文、候选实体以及候选实体的实体信息输入至预训练模型bert,通过预训练模型bert对待链接实体上下文和候选实体的实体信息进行对比,得到最终的消歧分数。
[0138]
图7为本技术实施例提供的一种实体链接的装置的结构示意图,包括:
[0139]
获取单元701,用于在待识别文本中获取待链接实体和待链接实体对应的上下文
内容。
[0140]
确定单元702,用于根据待链接实体,在知识图谱中确定多个候选实体以及多个候选实体中每个候选实体的实体信息。
[0141]
匹配单元703,用于将上下文内容和每个候选实体对应的实体信息进行匹配,得到第一匹配分数。
[0142]
确定单元702,还用于根据第一匹配分数,确定多个候选实体中的目标候选实体。
[0143]
确定单元702,还用于基于待链接实体和目标候选实体之间的消歧分数,确定目标候选实体中的目标实体。
[0144]
确定单元702,还用于将目标实体确定为待链接实体对应的链接实体。
[0145]
在一种可能的设计中,确定单元702,具体用于根据上下文内容对目标候选实体对应的实体信息进行相关性排序,根据相关性排序结果确定目标候选实体对应的实体信息中的关键信息,将待链接实体、上下文内容、目标候选实体和关键信息输入至实体消歧模型,通过实体消歧模型获取待链接实体和目标候选实体之间的消歧分数。
[0146]
在一种可能的设计中,匹配单元703,具体用于对上下文内容和每个候选实体对应的实体信息进行分词处理,得到上下文内容包括的第一分词和每个候选实体对应的实体信息包括的第二分词。计算第一分词对应的词向量和第二分词对应的词向量的余弦相似度,根据余弦相似度确定第一匹配分数。
[0147]
在一种可能的设计中,匹配单元703,具体用于根据余弦相似度获取每个候选实体对应的相似度分布向量,将每个候选实体对应的相似度分布向量输入至第一模型,通过第一模型获取上下文内容和每个候选实体对应的实体信息的第一匹配分数,第一模型用于根据相似度分布向量确定分布分数。
[0148]
在一种可能的设计中,匹配单元703,具体用于根据余弦相似度的数值,确定每个预设的余弦相似度区间中的第二分词个数,其中,余弦相似度预设有多个余弦相似度区间。根据每个预设的余弦相似度区间中的第二分词的个数,确定每个候选实体对应的相似度分布向量。
[0149]
在一种可能的设计中,获取单元701,具体用于获取每个候选实体的实体信息所对应的词频信息。
[0150]
确定单元702,具体用于根据词频信息确定每个候选实体对应的权重值,并根据权重值和第一匹配分数,确定每个候选实体对应的第二匹配分数。若第二匹配分数超过第一预设阈值,则确定该候选实体为目标候选实体。
[0151]
在一种可能的设计中,确定单元702,具体用于对上下文内容和目标候选实体对应的实体信息进行分词处理,得到上下文内容包括的第三分词和目标候选实体对应的实体信息包括的第四分词;计算第三分词对应的词向量和第四分词对应的词向量的余弦相似度。根据第三分词对应的词向量和第四分词对应的词向量的余弦相似度的数值,对第四分词进行排序,根据第四分词的排序结果,确定第四分词中的目标分词,其中,目标分词与第三分词之间的余弦相似度超过第二预设阈值;将目标分词对应的实体信息确定为关键信息。
[0152]
在一种可能的设计中,确定单元702,具体用于通过实体消歧模型对上下文内容和关键信息进行相似度计算,根据相似度计算的计算结果,确定待链接实体和目标候选实体之间的消歧分数。
[0153]
在一种可能的设计中,该实体链接的装置还包括训练单元704。获取单元701,还用于获取预训练语言模型,预训练语言模型包括词嵌入层和任务层,词嵌入层用于对输入语料进行词向量表示,任务层用于完成预训练语言任务。
[0154]
训练单元704,具体用于根据第一语料数据对预训练语言模型进行训练,更新预训练语言模型的词嵌入层参数。
[0155]
确定单元702,还用于根据更新后的预训练语言模型的词嵌入层参数,确定待训练实体消歧模型。
[0156]
训练单元704,还用于根据第二语料数据对待训练实体消歧模型进行训练,第二语料数据包括待消歧实体样本和待消歧实体样本的标注信息。当训练结果满足训练条件时,获得实体消歧模型。
[0157]
在一种可能的设计中,获取单元701,具体用于获取更新后的预训练语言模型的词嵌入层参数。
[0158]
确定单元702,还用于根据更新后的预训练语言模型的词嵌入层参数初始化待训练实体消歧模型的词嵌入层的参数,其中,待训练实体消歧模型包括词嵌入层和任务层,待训练实体消歧模型的词嵌入层与预训练语言模型的词嵌入层的模型参数相同。
[0159]
在一种可能的设计中,确定单元702,具体用于若待链接实体和目标候选实体之间的消歧分数超过第三预设阈值,则确定目标候选实体为目标实体。若目标候选实体对应的消歧分数均未超过第三预设阈值,则确定消歧分数最高的目标候选实体为目标实体。
[0160]
在一种可能的设计中,该实体链接的装置还包括接收单元705。
[0161]
接收单元705,具体用于接收文本查询指令。
[0162]
获取单元701,还用于根据文本查询指令获取查询文本,查询文本为待识别文本。
[0163]
确定单元702,还用于根据链接实体确定与查询文本相关的至少一条查询结果,反馈至少一条查询结果。
[0164]
本技术实施例还提供了一种计算机设备,计算机设备可以部署于服务器,请参阅图8,图8为本技术实施例中计算机设备一个实施例示意图,如图所示,该服务器800可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processing units,cpu)822(例如,一个或一个以上处理器)和存储器832,一个或一个以上存储应用程序842或数据844的存储介质830(例如一个或一个以上海量存储设备)。其中,存储器832和存储介质830可以是短暂存储或持久存储。存储在存储介质830的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器822可以设置为与存储介质830通信,在服务器800上执行存储介质830中的一系列指令操作。
[0165]
服务器800还可以包括一个或一个以上电源826,一个或一个以上有线或无线网络接口850,一个或一个以上输入输出接口858,和/或,一个或一个以上操作系统841,例如windows server
tm
,mac os x
tm
,unix
tm
,linux
tm
,freebsd
tm
等等。
[0166]
上述实施例中由服务器所执行的步骤可以基于该图8所示的服务器结构。
[0167]
在本技术实施例中,该服务器所包括的cpu 822用于执行图2至图5所示实施例中目标服务器所执行的步骤。
[0168]
本技术实施例中还提供一种计算机可读存储介质,该计算机可读存储介质中存储
有计算机程序,当其在计算机上运行时,使得计算机执行如前述图2至图5所示实施例描述的方法中服务器所执行的步骤。
[0169]
本技术实施例中还提供一种包括程序的计算机程序产品,当其在计算机上运行时,使得计算机执行如前述图2至图5所示实施例描述的方法中服务器所执行的步骤。
[0170]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0171]
在本技术所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0172]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0173]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0174]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read

only memory,rom)、随机存取存储器(random access memory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。
[0175]
以上所述,以上实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1