一种利用上下文将文本中实体关联到知识库的方法
文献发布时间:2023-06-19 19:30:30
技术领域
本发明涉及自然语言处理技术领域,尤其涉及一种利用上下文将文本中实体关联到知识库的方法。
背景技术
自然语言文本作为现在互联网数据的主要承载形式,包括人工编写的新闻报告、说明分析等,相较于结构化的数据,其存在的数量更多、包含的信息更多,而实体往往作为与现实物体、概念等对应的词语,是查询、分析的核心。因此,围绕实体名词处理是现代数据处理的重要方法,通过推荐与实体名词语义相关的词语可以有效地为用户提供数据漫游的能力,但是实体名词存在歧义与多义的问题,并不能直接关联到知识库中的特定词条上。
从而,现有技术中存在以下问题:文中出现的简称,传统的检索难以在知识库命中;一般上下文与指称存在关联的部分并不多,而一般的对齐并没有在知识库的实体描述句子之上进行提炼,降低了正确的实体与指称之间的关联性;传统的实体是通过阈值的方式判断,这种方法只能分别考虑是否关联;实体并非一定会出现在知识库中,仅仅通过找出关联度最大的一项又会导致错误的关联。
发明内容
本发明意在提供一种利用上下文将文本中实体关联到知识库的方法,以解决现有技术中存在的不足,本发明要解决的技术问题通过以下技术方案来实现。
本发明提供了一种利用上下文将文本中实体关联到知识库的方法,所述方法包括:
获取互联网知识百科数据,建立包括各个类别实体名词的词典集合的知识库;
建立知识库中各个实体名词对应的知识库索引;
对输入文本中实体指称的字符进行预处理,将实体指称的字符拆解形成多个查询字符,将查询字符输入至知识库中进行搜索,获取实体指称对应的知识库中包含K个候选实体的候选实体集合;
建立实体指称与对应的候选实体集合中K个候选实体组成的K个<指称,实体>对;
分别计算K个<指称,实体>对中各个候选实体描述的特征向量与实体指称的上下文的特征向量,并分别选取与实体指称的上下文相关度较高的多个候选实体描述句子作为选择依据;
根据选择依据判断实体指称对应的知识库中的实体名词或判断知识库中没有实体指称对应的实体名词。
在上述的方案中,所述对输入文本中实体指称的字符进行预处理包括:
去除标点符号;
将大写字母转化为小写字母;
将数字文字转化为阿拉伯数字。
在上述的方案中,通过2-gram算法拆解将实体指称的字符拆解形成多个查询字符。
在上述的方案中,分别计算K个<指称,实体>对中各个候选实体描述的特征向量与实体指称的上下文的特征向量,并分别选取与实体指称的上下文相关度较高的多个候选实体描述句子作为选择依据包括:
通过Doc2vec模型分别计算K个<指称,实体>对中各个候选实体描述的特征向量与实体指称的上下文的特征向量;
计算特征向量之间的余弦相似度,根据余弦相似度找出与实体指称的上下文相近的多个候选实体描述句子,将与实体指称的上下文相近的多个候选实体描述句子作为选择依据。
在上述的方案中,与实体指称的上下文相近的多个候选实体描述句子长度之和小于512字。
在上述的方案中,根据选择依据判断实体指称对应的知识库中的实体名词或判断知识库中没有实体指称对应的实体名词包括:
使用BERT预训练模型对选择依据、选择依据对应的实体指称的上下文进行字符串直接拼接,构成输入串;
将上述的输入串作为输入BERT预训练模型的token,并标记;
采用first-last-avg特征,把BERT预训练模型的第一层与最后一层的所有向量取平均,作为选择依据、选择依据对应的候选实体的关系表征向量;
将所有的关系表征向量依序进行拼接,组成一个长向量;
将长向量输入至在预测结果标记处添加无法链接分类标签的MLP多层感知模型中获取选择依据中实体指称对应的知识库中的实体名词或判断知识库中没有实体指称对应的实体名词。
在上述的方案中,所述建立知识库中各个实体名词对应的知识库索引包括:
对知识库中的各个类别实体名词分别进行拆分处理获取多个n元词,并对获取的n元词进行分析,将n元词进行扩展,以及将获取的n元词以及扩展结果存储至知识库中对应类别的文档。
在上述的方案中,所述建立知识库中各个实体名词对应的知识库索引还包括:
计算各个n元词的IDF值,将各个文档中IDF值大于预设的IDF阈值的n元词进行去掉;
根据各个实体名词对应的剩余的n元词,建立知识库中各个实体名词对应的知识库索引。
在上述的方案中,通过已构建的分词库对知识库中的各个类别实体名词分别进行拆分处理。
在上述的方案中,通过IDF计算公式计算各个n元词的IDF值,其中,IDF计算公式为:
其中, IDF
本发明实施例包括以下优点:
本发明实施例提供的利用上下文将文本中实体关联到知识库的方法使用知识库中的各个类别实体名词分别进行拆分处理,可以扩充匹配范围;通过对候选实体描述句子进行初步筛选,获取与实体指称的上下文相近的多个候选实体描述句子,可以有效提升关联的准确性;通过在预测结果标记处添加无法链接分类标签的MLP多层感知模型进行实体指称对应的知识库中的实体名词判断,可判断该指称是否不存在对应的知识库实体,解决了现有技术中实体并非一定会出现在知识库中,仅仅通过找出关联度最大的一项会导致错误的关联这一问题。
附图说明
图1是本发明的一种利用上下文将文本中实体关联到知识库的方法实施例的步骤流程图。
图2是本发明的建立知识库索引的步骤流程图。
图3是本发明的获取选择依据的步骤流程图。
图4是本发明的判断实体指称对应的知识库中的实体名词的步骤流程图。
图5是本发明的BERT预训练模型示意图。
图6是本发明的BERT预训练模型的工作过程示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
如图1所示,本发明提供了一种利用上下文将文本中实体关联到知识库的方法,所述方法包括:
步骤S1:获取互联网知识百科数据,建立包括各个类别实体名词的词典集合的知识库。
步骤S2:建立知识库中各个实体名词对应的知识库索引。
在本实施例中,建立知识库中各个实体名词对应的知识库索引是为了将词条描述中与该实体不相关的部分去除,将描述文本中主体不是本实体的句子从内容索引中剔除,从而保证在检索与计算相似度时不会产生错误。
如图2所示,建立知识库中各个实体名词对应的知识库索引包括:
步骤S21:对知识库中的各个类别实体名词分别进行拆分处理获取多个n元词,并对获取的n元词进行分析,将n元词进行扩展,以及将获取的n元词以及扩展结果存储至知识库中对应类别的文档;
步骤S22:计算各个n元词的IDF值,将各个文档中IDF值大于预设的IDF阈值的n元词进行去掉;
步骤S23:根据各个实体名词对应的剩余的n元词,建立知识库中各个实体名词对应的知识库索引。
在本实施例中,实体是知识库中的每个词条,通常包含了一个格式非常标准的全称以及相关的描述文本。
在本实施例中,通过已构建的分词库对知识库中的各个类别实体名词分别进行拆分处理。
在本实施例中,通过IDF计算公式计算各个n元词的IDF值,其中,IDF计算公式为:
其中,IDF
在本发明的一个实施例中,对于国家名称,排名前30的各个词的IDF值如下表所示:
表1 国家名称的IDF值表
在本发明的另一个实施例中,对于武器装备,其名称往往是多个部分组成,如型号-子类型-分类,J-20攻击机为其中的一个例子,需要特别地关注其型号作为其标志,本发明采用序列标注来特别地对武器装备类的实体进行其词根识别,特别地,词根必然是实体名称的一部分,而实体标注的数据集相对丰富,这里使用大量的实体识别数据标注信息,为武器装备的词根识别提供辅助,
对于标注、识别的武器,使用IDF计算公式计算统计词根,其中IDF值排名前40的词根如下表所示:
表2 IDF值排名前40的武器词根表
步骤S3:对输入文本中实体指称的字符进行预处理,将实体指称的字符拆解形成多个查询字符,将查询字符输入至知识库中进行搜索,获取实体指称对应的知识库中包含K个候选实体的候选实体集合。
在本实施例中,指称一般指输入文本中出现的实体名词,即人名、机构名、地名以及其他所有以名称为标识的实体,在本发明中指称是指在处理的文本对象中,文本中出现的人物名称、组织机构名称等实体物品的文字名称构成。
在本实施例中,所述对输入文本中实体指称的字符进行预处理包括:去除标点符号;将大写字母转化为小写字母;将数字文字转化为阿拉伯数字。
在本实施例中,通过2-gram算法拆解将实体指称的字符拆解形成多个查询字符。
步骤S4:建立实体指称与对应的候选实体集合中K个候选实体组成的K个<指称,实体>对。
步骤S5:分别计算K个<指称,实体>对中各个候选实体描述的特征向量与实体指称的上下文的特征向量,并分别选取与实体指称的上下文相关度较高的多个候选实体描述句子作为选择依据。
在本实施例中,在输入文本中的指称左右的多个字符,即为上下文,为编码方便选用上下各64或128,需要保留句子的完整性,故为输入原文中包含指称的子句。
如图3所示,步骤S5包括:
步骤S51:通过Doc2vec模型分别计算K个<指称,实体>对中各个候选实体描述的特征向量与实体指称的上下文的特征向量;
步骤S52:计算特征向量之间的余弦相似度,根据余弦相似度找出与实体指称的上下文相近的多个候选实体描述句子,将与实体指称的上下文相近的多个候选实体描述句子作为选择依据。
在本实施例中,实体描述是对实体的描述片段,用来作为实体的特征进行特征抽取。
在本实施例中,与实体指称的上下文相近的多个候选实体描述句子长度之和小于512字,以满足后续模型的输入限制。
步骤S6:根据选择依据判断实体指称对应的知识库中的实体名词或判断知识库中没有实体指称对应的实体名词。
如图4所示,步骤S6包括:
步骤S61:使用BERT预训练模型对选择依据、选择依据对应的实体指称的上下文进行字符串直接拼接,构成输入串;
步骤S62:将上述的输入串作为输入BERT预训练模型的token,并标记;
步骤S63:采用first-last-avg特征,把BERT预训练模型的第一层与最后一层的所有向量取平均,作为选择依据、选择依据对应的候选实体的关系表征向量;
步骤S64:将所有的关系表征向量依序进行拼接,组成一个长向量;
步骤S65:将长向量输入至在预测结果标记处添加无法链接分类标签的MLP多层感知模型中获取选择依据中实体指称对应的知识库中的实体名词或判断知识库中没有实体指称对应的实体名词。
在本实施例中,步骤S61中使用BERT预训练模型对选择依据、选择依据对应的实体指称的上下文进行字符串直接拼接,构成输入串:
[CLS]description[SPE]mention[SEP]context[SEP];
步骤S62中将上述的字符串作为输入BERT的token,并利用segment标记[CLS]description[SPE]部分与mention[SEP]context[SEP]部分。
如图5所示,BERT预训练模型首先将每个候选实体对应的实体描述句子与实体指称上下文拼接在一起构成输入串作为模型的输入,将拼输入串转化为token_ids_i和segment_ids_i,其中i=0,1,2,3;其次将每一对token_ids_i和segment_ids_i经过Functional变换形成为model_1;将变换后的4个结果通过concatenate层进行拼接Concatenate变换;将concatenate层输出的结果拼接在一起进入一个Dence层,经过一次Dense线性变换;最后经过Softmax将得分最高的作为最终候选实体。
如图6所示,BERT预训练模型通过查询字向量表将每个候选实体对应的实体描述句子与实体指称上下文中的每个字转换为一维向量,作为模型输入;模型输出是输入各字对应的融合全文语义信息后的向量表示。此外,模型输入除了字向量,还包括:
文本向量Token_ids:该向量的取值在模型训练过程中自动学习,用于刻画文本的全局语义信息,并与单字或词的语义信息相融合;
位置向量segment_ids:由于出现在文本不同位置的字或词所携带的语义信息存在差异。
进一步地,模型输入在经过Dropout后输入经过一个全连接层Dense实现一次线性变换后,通过Concat拼接操作,将多个候选实体的特征向量合并为一个;再经过一次Dense线性变换后,使用softmax完成相似概率抽样计算,从而得到最有可能的分类结果。
应该指出,上述详细说明都是示例性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语均具有与本申请所属技术领域的普通技术人员的通常理解所相同的含义。
需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式。此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,以便这里描述的本申请的实施方式能够以除了在这里图示或描述的那些以外的顺序实施。
此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含。例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为了便于描述,在这里可以使用空间相对术语,如“在……之上”、“在……上方”、“在……上表面”、“上面的”等,用来描述如在图中所示的一个器件或特征与其他器件或特征的空间位置关系。应当理解的是,空间相对术语旨在包含除了器件在图中所描述的方位之外的在使用或操作中的不同方位。例如,如果附图中的器件被倒置,则描述为“在其他器件或构造上方”或“在其他器件或构造之上”的器件之后将被定位为“在其他器件或构造下方”或“在其他器件或构造之下”。因而,示例性术语“在……上方”可以包括“在……上方”和“在……下方”两种方位。该器件也可以其他不同方式定位,如旋转90度或处于其他方位,并且对这里所使用的空间相对描述作出相应解释。
在上面详细的说明中,参考了附图,附图形成本文的一部分。在附图中,类似的符号典型地确定类似的部件,除非上下文以其他方式指明。在详细的说明书、附图及权利要求书中所描述的图示说明的实施方案不意味是限制性的。在不脱离本文所呈现的主题的精神或范围下,其他实施方案可以被使用,并且可以作其他改变。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
- 一种基于实体及文本联合嵌入的实体关联度衡量方法、系统及存储介质
- 连接短文本中实体提及与语义知识库中实体的方法和设备
- 一种文本中实体的关联方法、装置、电子设备及存储介质