一种基于多粒度认知的领域知识库实体识别方法

文档序号:28364295发布日期:2022-01-05 12:57阅读:110来源:国知局
一种基于多粒度认知的领域知识库实体识别方法

1.本发明属于知识库实体识别技术领域,特别是涉及一种基于多粒度认知的领域知识库实体识别方法。


背景技术:

2.知识库能够以结构化的形式描述客观世界中概念、实体及其关系,完成海量信息的有效组织、管理和理解。知识库系统在知识融合、智能问答、大数据决策等应用上的潜力受到了广泛的关注。知识库可以分为通用知识库和领域知识库两类,其中通用知识库是指面向通用一般领域的知识库,其通常覆盖很多方面,而领域知识库则是在特定的领域背景下所构建的知识库。不管是哪一类型的知识库,其本质都是一个以实体为节点的巨大网络,包括实体、实体属性以及实体间的关系。因此实体识别是进行知识库构建的第一步。
3.实体识别是指从文本中识别出具有特定意义的实体,并对其确定类别。实体识别在各种自然语言处理应用中发挥着重要作用,如信息抽取、信息检索、自动文本摘要、机器翻译、知识库等等。关于实体识别,国内外已经有了相当广泛的研究,用来实体识别的方法大致可以分成三类:基于规则的方法、基于传统机器学习的方法和基于深度学习的方法。基于规则的方法依赖于大量的手工规则,不需要语料的标注。但是规则的制定是耗时耗力的,在某些专业领域需要有专业知识的支持。基于规则的方法的可移植性受到限制,对于来自新领域的文本,需要通过更新规则来获得好的性能。因此,现在该方法慢慢地较少被使用。随着传统机器学习的发展,许多传统机器学习的方法被成功应用到实体识别任务中去,如隐马尔可夫模型、最大熵模型、条件随机场等等。除了单独使用机器学习算法外,也可以将多个方法进行结合,来完成实体识别任务。基于深度学习的方法,如双向长短期记忆神经网络模型,也成功应用到了实体识别任务中去。基于深度学习的方法相对于基于传统机器学习的方法,无需精心的特征工程,它能自动捕获输入文本中的上下文依赖,且能得到很好地表现。
4.然而,在实际的场景中,尤其构建某些特定领域的知识库时,由于样本匮乏或者受限于标注成本,造成可使用的训练数据较少,基于常规深度学习的方法对字词特征向量的学习效果欠佳。为此,出现了很多基于多任务学习的命名实体识别研究,如联合分词、词性标注、语义角色标注等任务。这些方法通过与其他相关任务的联合学习,对字词特征向量的捕捉效果有一定的提升,但需要额外进行辅助任务数据标注,在标注成本有限的场景下并不适用。


技术实现要素:

5.为了解决上述问题,本发明提出了一种基于多粒度认知的领域知识库实体识别方法,能够解决小规模语料库的实体识别问题,在此基础上完成对应领域知识库的构建。
6.为达到上述目的,本发明采用的技术方案是:一种基于多粒度认知的领域知识库实体识别方法,包括步骤:
7.s10,获取对应领域的数据文件,根据这些文件构建语料库,并将语料库分成训练集和测试集;
8.s20,对训练集数据进行字嵌入处理,获得自嵌入矩阵;
9.s30,将字嵌入矩阵分别作为实体识别模型中字粒度命名实体识别模块和全局粒度实体数量预测模块的输入,分别对两个模块进行训练;将两个粒度的损失函数进行联合,得到最终模型优化目标;
10.s40,利用获得的实体识别模型对测试集中的样本进行分类,识别该领域知识库实体。
11.进一步的是,在所述步骤s20中,对训练集数据进行字嵌入处理,获得自嵌入矩阵,包括步骤:
12.在训练集中随机选取相关文件中的独立句子作为输入,通过预处理构建字表,将句子转化为高维独热编码矩阵,传入字嵌入层;字嵌入层将独热编码矩阵映射为压缩的低维字嵌入矩阵。
13.进一步的是,所述字粒度命名实体识别模块采用bilstm层和crf层,预测标签序列并标定标签序列,实现字粒度的序列标记任务。
14.进一步的是,所述全局粒度实体数量预测模块采用bilstm结合注意力层,预测实体数量并标定实体数量,实现句子全局粒度的命名实体数量预测任务。
15.进一步的是,任意选择两个不在测试集中的文件,对于选中的文件进行分词,对分词结果进行人工标注,构建开发集,利用开发集对模型进行优化。
16.进一步的是,在模型优化的过程中,所述字粒度命名实体识别模块包括步骤:
17.s311,接收字嵌入矩阵,通过捕捉前后文语义信息,初步获取命名实体识别任务的标签预测概率;
18.s312,以命名实体识别双向长短记忆网络层的输出为发射矩阵,通过状态转移矩阵进一步修正命名实体识别任务的标签预测概率;
19.s313,根据分类结果和人工标注结果,计算命名实体识别在开发集上的损失函数值,采取log似然,损失函数值计算公式为:
[0020][0021]
其中,p
realpath
为在给定观测序列x的条件下真实的目标序列的概率;p1‑
p
n
为在给定观测序列x的条件下,预测目标序列y
n
的概率。
[0022]
进一步的是,在模型优化的过程中,所述全局粒度实体数量预测模块包括步骤:
[0023]
s321,接收字嵌入矩阵,通过捕捉前后向语义信息,进一步获取句子的语义特征;
[0024]
s322,接收实体数量预测双向长短记忆网络层的输出特征矩阵,通过注意力机制获取句子的全局的重要特征信息,最终预测出该句子中包含的实体数量;
[0025]
s323,根据分类结果和人工标注结果,计算实体数量预测在开发集上的损失函数值,采取交叉熵损失,损失函数值计算公式为:
[0026]
[0027]
其中,y为实体数量标定类别张量,为实体数量预测概率张量。
[0028]
进一步的是,命名实体识别的损失函数loss1采取log似然,实体数量预测的损失函数loss2采取交叉熵损失,通过系数d将loss1与loss2联合,得到最终模型优化目标:loss=loss1+d*loss2。
[0029]
进一步的是,所述系数d为超参数,通过建立验证集进行调整。
[0030]
采用本技术方案的有益效果:
[0031]
本发明提出了一种结合字粒度与句子全局粒度的命名实体识别方法,在字粒度层面,模型解决命名实体识别任务,在句子全局粒度层面,模型解决命名实体数量预测任务,两个粒度认知任务共同联合优化,以提高命名实体识别效果。
[0032]
本发明提出在bilstm+crf命名实体识别模型上实现字粒度的序列标记任务,同时并列采用bilstm结合注意力层的全局粒度实体数量预测模块预测实体数量并标定实体数量,实现句子全局粒度的命名实体数量预测任务,引入基于多粒度认知的联合优化方法,能够解决小规模语料库的领域知识库中实体识别问题,得到的结果优于单独的实体识别方法,提高了识别效果。
附图说明
[0033]
图1为本发明的一种基于多粒度认知的领域知识库实体识别方法流程示意图;
[0034]
图2为本发明实施例中一种基于多粒度认知的领域知识库实体识别方法的原理示意图。
具体实施方式
[0035]
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图对本发明作进一步阐述。
[0036]
在本实施例中,参见图1和图2所示,本发明提出了一种基于多粒度认知的领域知识库实体识别方法,包括步骤:
[0037]
s10,获取对应领域的数据文件,根据这些文件构建语料库,并将语料库分成训练集和测试集;
[0038]
s20,对训练集数据进行字嵌入处理,获得自嵌入矩阵;
[0039]
s30,将字嵌入矩阵分别作为实体识别模型中字粒度命名实体识别模块和全局粒度实体数量预测模块的输入,分别对两个模块进行训练;将两个粒度的损失函数进行联合,得到最终模型优化目标;
[0040]
s40,利用获得的实体识别模型对测试集中的样本进行分类,识别该领域知识库实体。
[0041]
作为上述实施例的优化方案,在所述步骤s20中,对训练集数据进行字嵌入处理,获得自嵌入矩阵,包括步骤:
[0042]
在训练集中随机选取相关文件中的独立句子作为输入,通过预处理构建字表,将句子转化为高维独热编码矩阵,传入字嵌入层;字嵌入层将独热编码矩阵映射为压缩的低维字嵌入矩阵。
[0043]
作为上述实施例的优化方案,对给定包含m个样本的训练数据集,输入模型经过字
嵌入过程后,传入学习器内字粒度命名实体识别模块和命名实体数量预测模块,根据预先标定值,得到两个模块的损失函数值,并对两个损失函数值进行联合。
[0044]
所述字粒度命名实体识别模块采用bilstm层和crf层,预测标签序列并标定标签序列,实现字粒度的序列标记任务。
[0045]
所述全局粒度实体数量预测模块采用bilstm结合注意力层,预测实体数量并标定实体数量,实现句子全局粒度的命名实体数量预测任务。
[0046]
优选的是,字嵌入维度300维,bilstm隐层维度256维,注意力隐层维度100维,实体数量预测区间数为5,粒度联合系数d为0.3.
[0047]
作为上述实施例的优化方案,任意选择两个不在测试集中的文件,对于选中的文件进行分词,对分词结果进行人工标注,构建开发集,利用开发集对模型进行优化。
[0048]
在模型优化的过程中,所述字粒度命名实体识别模块包括步骤:
[0049]
s311,接收字嵌入矩阵,通过捕捉前后文语义信息,初步获取命名实体识别任务的标签预测概率;
[0050]
s312,以命名实体识别双向长短记忆网络层的输出为发射矩阵,通过状态转移矩阵进一步修正命名实体识别任务的标签预测概率;
[0051]
s313,根据分类结果和人工标注结果,计算命名实体识别在开发集上的损失函数值,采取log似然,损失函数值计算公式为:
[0052][0053]
其中,p
realpath
为在给定观测序列x的条件下真实的目标序列的概率;p1‑
p
n
为在给定观测序列x的条件下,预测目标序列y
n
的概率。
[0054]
在模型优化的过程中,所述全局粒度实体数量预测模块包括步骤:
[0055]
s321,接收字嵌入矩阵,通过捕捉前后向语义信息,进一步获取句子的语义特征;
[0056]
s322,接收实体数量预测双向长短记忆网络层的输出特征矩阵,通过注意力机制获取句子的全局的重要特征信息,最终预测出该句子中包含的实体数量;
[0057]
s323,根据分类结果和人工标注结果,计算实体数量预测在开发集上的损失函数值,采取交叉熵损失,损失函数值计算公式为:
[0058][0059]
其中,y为实体数量标定类别张量,为实体数量预测概率张量。
[0060]
在所述学习器模型优化的过程中,为实现两个粒度联合优化,命名实体识别的损失函数loss1采取log似然,实体数量预测的损失函数loss2采取交叉熵损失,通过系数d将loss1与loss2联合,得到最终模型优化目标:loss=loss1+d*loss2。
[0061]
所述系数d为超参数,通过建立验证集进行调整。
[0062]
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其
等效物界定。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1