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

一种基于有序结构编码指针网络解码的实体关系抽取方法与流程

2021-10-27 14:02:00 来源:中国专利 TAG:自然语言


1.本发明属于自然语言处理领域。


背景技术:

2.计算机的诞生和其技术不断革新和突破以及互联网在世界范围内的普及,都使得人们的生活学习、住食交通得到了前所未有的改善。与此同时,每天有大量的文本数据通过新闻期刊文章、博客、问答社区论坛和社交媒体等形式产生。很多重要的信息被隐藏在这些文档文本数据中,人们要获取其中的重要信息需要通过大量繁琐的筛选和阅读。因此,为了能够真正获取有效信息的同时去掉冗余数据,减少人工阅读量,信息抽取技术应运而生。抽取技术提取出来的这些信息可以帮助我们获取和管理大型文本语料库中的隐含知识,并且可以用于构建问答系统,检索和推荐系统。信息抽取技术不同于人工筛选数据给你返回一系列文档数据,它可以针对给定的一个句子、一段话、一篇文档、甚至一批数据,从中抽取出包含的事件事实信息,而这些信息又是由实体和关系信息构成的,通常被称为三元组数据。实体类型比如人、组织、机构等是最基本的信息单元,一个句子中出现的实体可以通过“出生于”、“位于”等明确的关系联系起来。实体和关系提取任务(re)就是自动识别这些实体和实体之间的关系。通过信息抽取技术,人们可以不用逐字阅读数据,就可以做到获取到信息中的有效内容。针对信息抽取技术尤其是实体关系抽取技术的研究,直至今日,仍是人工智能领域的一大热点之一。
3.信息抽取技术(information extraction,ie)是自然语言中的一个新的子领域,发展到现在有二十年,其前身是文本理解,已有几十年的发展历史。80年代,在美国政府支持下成立的消息理解讨论会(muc)一直致力于推动信息抽取技术的发展。muc通过举办信息抽取比赛来吸引世界各地公司实验室和学术研究机构的参与,每一个参赛团队都可以通过官方发布的数据集以及信息抽取技术的三大指标来构建自己的模型,然后官方对这些模型使用测试集进行评测,得此信息抽取技术不断得到发展和提高。
4.目前自然语言处理最顶层的任务就是构建知识图谱(knowledge graph,kg),kg是一种可以用于各种领域的大规模信息表示方法。最常见的表示kg的方法是遵循资源描述框架方法(resource description framework,rdf)即使用节点表示实体,使用两两节点之间的边表示实体间的关系。每条边和边的两个端点之间就构成了一组三元组(头实体,关系,尾实体)的事实信息,比如:(周杰伦,出生于,台湾省新北市),就表示周杰伦的出生地是在台湾省新北市。 kg是一个异质图网络,其中包含大量的不同类型的实体节点和关系,甚至可以有句子节点。通过这样表示,我们就能从中发现实体的各种属性,实体之间的高层次关系,以及关系之间的关联。因此,实体关系抽取技术作为构建知识图谱基石的底层就显得无比重要。
5.实体关系抽取任务是信息抽取任务中的第一阶段子任务,其主要任务又可以分为2个子任务:首先是命名实体识别,即识别出一个句子中包含的头实体(也称主实体subject),然后识别出尾实体(也称客实体object);其次是关系抽取,即识别出上面所说的
头实体和尾实体之间蕴含的关系(predicate)。而这对实体和关系整合到一起就是一个三元组形式(s,p,o),例如(周杰伦,出生于,台湾省)。但实体关系抽取任务目前存在两类问题,总结如下:
6.第一类,传统pipeline管道方法由于是先进行命名实体识别,即识别出一个句子中存在的两个实体,再送入关系分类模型,识别出这两个实体之间的关系。本质就是将关系抽取任务分为2个子任务,实体识别任务模型的输出结果作为关系分类模型的输入。但这就产生了几个问题:
7.(1)误差累积:实体阶段抽取的错误会影响到关系分类阶段关系抽取性能。
8.(2)实体冗余:因为先抽取出头尾实体,再分类的时候可能会发现这两个实体间不存在关系,这对后续的知识图谱其他任务利用这两个不存在关系的实体是多余的,比如实体链接、问答系统用到没有关系的候选实体,增加了计算量、模型精确度下降。
9.(3)交互缺失:实体识别任务和关系抽取任务之间可能是存在关联或者说参数共享的,单纯把上一个子任务输出作为下一个子任务输入会导致交互缺失。
10.第二类,而且基于pipeline的方法有时会抽取并不存在关系的一对实体,由于这种方法只对句子进行一次三元组抽取,因此也会导致一个句子中包含的多个三元组不会被全部抽取出来。最主要的是如果一个句子中包含重叠实体或关系,无论是传统模型还是联合抽取模型都无法完整抽取出三元组。如附图7所示。
11.(1)单实体重叠(single entity overlap):例如表1所示,句子“周杰伦主演了《头文字d》和《不能说的秘密》。”其中头实体“周杰伦”对应了2个尾实体“头文字 d”和“不能说的秘密”,分别就形成了两组三元组,除了关系、尾实体相同,头实体是重叠的。很多句子都存在这种问题。
12.(2)实体对重叠(entity pair overlap):句子“由周杰伦导演并主演的《不能说的秘密》票房大卖。”中包含2组实体对(周杰伦,不能说的秘密),就是典型的实体对重叠,其中关系却不同,一个是“演员”,一个是“导演”。
13.本发明针对实体关系抽取任务存在的上述几个问题,提出一种联合实体关系抽取方法。鉴于编解码器框架在其他自然语言处理任务上的良好表现,因此,本发明以编解码器框架为基础,通过对传统lstm网络的改进,搭建了加入扰动项的at

bionlstm

point指针网络解码模型对实体关系三元组进行抽取。


技术实现要素:

14.本发明提出一种基于有序结构编码指针网络解码的实体关系抽取方法,目的在于提升实体关系抽取任务的准确率、召回率、f1值三大指标和抽取重叠实体三元组的能力。该方法步骤如下:
15.(1)在输入层选取特征构建句子初始向量,将句子向量化表示。
16.(2)在编码层捕获层级结构信息,获取句子的每一个词语的隐藏嵌入。
17.(3)在解码层综合之前的特征利用指针网络进一步提取抽象特征,抽取句子三元组。
附图说明
18.图1为本发明的实体关系抽取模型整体框架图。
19.图2为本发明的句子中待抽取实体和关系数据集示例。
20.图3为本发明采用的在表示层后添加at扰动项示意图。
21.图4为本发明的句子中层级颗粒度示意图。
22.图5为本发明采用的on

lstm单元结构示意图。
23.图6为本发明采用的指针网络示意图。
24.图7为本发明的实体重叠类型问题示例。
25.图8为本发明采用的nyt数据集信息图。
具体实施方式
26.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
27.如附图1所示,本发明主要以编解码器框架为基础,通过对传统lstm改进,搭建了加入扰动项的指针网络进行实体关系抽取,主要由输入层(input layer)、编码层(encoder layer)、解码层(decoder layer)(包括头实体指针标注层和尾实体关系指针标注层)三部分构成。具体实施方式如下:
28.步骤一:输入层
29.本发明改进的联合实体关系抽取模型放在标准英文数据集nyt(new york times)及其衍生版本数据集上进行评估。实验使用的语料库是由zeng等人使用在freebase上的关系对齐原始数据获取到的nyt数据集,有24种关系,该数据集的测试集是人工标注的,并且加入了更多的重叠实体关系。如附图8(a)所示。
30.如附图8(b)所示为nyt数据集包含的重叠类型三元组统计得到的数量,其中可以看到不论是训练集还是测试集,其中每一个句子平均包含1.5个三元组。然后重叠实体类型分为3种类型:neo(normal)表示没有实体或实体对重叠的句子、epo表示句子中头实体尾实体都重叠、spo表示只有单个实体(可以是头实体或者尾实体)重叠的句子。
31.如附图2所示,是在实体关系抽取任务所应用的nyt数据集中,句子待抽取实体和关系数据集示例。
32.在输入层完成句子向量化,首先采用预训练模型训练好的词向量对输入句子进行wordembedding,然后在向量表示层输出到编码器的中间加入对抗训练,生成句子向量表示的负例,增强模型训练的性能。
33.我们将每个单词转换由以下两部分构成的向量。
34.1.词向量
35.实体关系抽取任务需要联系上下文去找出每一个实体词和关系词,怎么寻找这些实体和关系,就需要根据上下文去识别。所以本发明采用bert预训练语言模型训练出来的基于上下文的词向量对输入句子做空间映射。
36.bert相比word2vec的优势在于bert训练出来的词向量不是静态的,即语义不是固定的,对于含有多义词的句子就能很好地表示出来;而比起elmo采用双向lstm拼接融合特征的方式自然就比bert一体化的融合特征方式要弱;更好的gpt则是因为其为一个单向的
语言模型,自然也比bert弱得多。
37.bert采用了和gpt一致的双阶段训练模型:第一,先进行语言预训练,其次是在应用到下游任务的时候使用微调(fine

tuning)。
38.首先,输入句子序列可以表示为x={x1,x2,

x
i
,

,x
n
},其中x
i
表示序列中第i个字符,然后,我们使用预训练好的bert词向量将x
i
表示为该向量维度为d。
39.那么整个句子的词向量矩阵就如公式1所示。
40.e=[e1,e2,

,e
n
]
ꢀꢀ
(1)
[0041]
2.对抗训练
[0042]
对抗训练(adversarial training,at)是在图像处理中首次被提出来的,其目的是为了在图像识别环境下使分类器识别成功的鲁棒性提升。而在自然语言处理中,针对不同的任务对抗训练产生了各种各样的变体,比如基于文本分类、词性标注等。所谓的对抗训练,实际上被认为是一种正则化方法。但是对抗训练又和很多正则化方法不同,正则化方法引入随机噪声,而对抗训练则是通过产生容易被分类器识别成错误例子的扰动来提升模型性能。
[0043]
为了提升实体关系抽取模型的性能,本发明在词嵌入层之上加入了对抗训练,通过在拼接词向量表示层之上添加一些噪声来生成原始输入信息的负例,如附图2所示。
[0044]
本发明输入表示层模型包含词向量、对抗训练,通过在训练数据时加入小的扰动函数。如公式2所示。
[0045][0046]
即通过将最坏情况的扰动η
adv
加入到原始的嵌入向量ω中,从而使损失函数最大化。其中,是当前模型参数的副本。然后,对原始例子和生成负例进行联合训练,因此最终损失如公式3所示。
[0047][0048]
步骤二:编码层
[0049]
针对不同的领域的任务,编码层和解码层可以选用不同的组合方式,比如,在图像处理任务上,通常使用卷积神经网络构成编码层,对于事件要素抽取这样的自然语言处理领域任务,通常会选取循环神经网络。
[0050]
在中文的文本处理中,我们有一个层级的概念,字是最低的层级,其次是词语,下来就是句子、段落等。层级越高,颗粒度越粗,则信息在句子中的跨度越大。如图4是层级颗粒度示意图。
[0051]
然而,以往的lstm等循环神经网络其神经元通常都是无序的,导致其无法学习提取到层级结构信息。因此,本发明选用双向有序长短期记忆网络(bi

onlstm)作为编码层基本结构,使高层级信息能够在对应期间保留更久,而低层级信息在对应区间更容易被遗忘,这些不同的信息传播跨度就形成了输入序列的层级结构。on

lstm的前向计算公式,如公式4 所示,如附图5是on

lstm单元结构示意图。
[0052][0053]
其中,on

lstm对比传统lstm,on

lstm的改动主要是新增了主遗忘门主输入门和分别是右向/左向的cumsum操作。
[0054]
本发明将引入的on

lstm设计为双向网络。在实体关系抽取任务中,只获取单向的从左到右的上文信息不足以支撑实体关系抽取任务,需要一层从右向左的on

lstm来获取下文信息,于是改进的联合实体关系抽取模型编码层结构为bi

onlstm。用前向的on

lstm 计算t时刻词语x
t
左边的状态(正向传播层的最终隐藏状态),再利用后向on

lstm计算t 时刻词语x
t
右边的状态(反向传播层的最终隐藏状态),则词语x
t
于编码层在t时刻的输出结果即为
[0055]
步骤三:解码层
[0056]
由于编码层的bi

onlstm已经捕获了全部层级信息和序列信息,本发明在解码层针对联合实体关系抽取,使用指针网络的解码思想解决实体关系重叠问题。
[0057]
本发明不同于以往的先抽实体,再判断实体间关系的方法,转而采用改进的抽取机制。如附图6是指针网络示意图。即可以将任务分为两个阶段,第一阶段是先标注出句子中的可能候选头实体,第二阶段则是根据候选头实体的语义和位置特征去标注尾实体和关系,这样就解决了一个头实体可能对应多个尾实体和关系的重叠问题,而且,因为一个头实体都是根据语义和位置特征去获得三元组的,就避免了抽取出来无意义三元组,从而减少了冗余信息。
[0058]
于是,以往的三元组抽取公式变成了求条件概率公式,如公式5所示。
[0059]
p(s,p,o|sen)=p(s|sen)p(p,o|s,sen)
ꢀꢀ
(5)
[0060]
式中,sen为句子表示,s、p、o为实体关系三元组。首先,我们使用头实体标签p(s|sen)去识别出一个句子中的头实体,然后对于每一种关系r,使用尾实体标签p(p,o|s,sen)去识别与该头实体有对应关系的尾实体。
[0061]
通过联合实体关系抽取解码层提取抽象特征三元组,就由以下两个模块构成。
[0062]
1.头实体抽取模块
[0063]
将bi

on

lstm编码层输出的编码向量h
i
送入解码层的头实体抽取模块进行解码,识别出所有可能是头实体的向量。首先,在编码层输出之上加上头实体标注层,即使用两层的分类器(label layer):start层和end层去识别头实体的开始位置和结束位置。具体操作
是对句子表示的每一个token使用一个二进制标签(0、1)去标记:start层中token如果带有“1”标签表示起始位置,end层中token如果带有“0”标签。则头实体标注层求句子中可能存在的头实体概率如公式6所示。
[0064][0065]
其中,start标注层中首先加入了一个bi

onlstm层,将解码之前的h
i
送入该层得到进一步的头实体起始位置隐藏状态向量为头实体token开始位置的概率。头实体结束位置隐藏状态向量为头实体token结束位置的概率,σ为激活函数。
[0066]
然后对头实体所有可能起始位置和结束位置求最大似然函数,以此来获得一个输入句子 token表示x(x
i
=h
n
[i])的头实体范围如公式7所示。
[0067][0068]
其中l为句子token的长度,当x=1时,f{x}=1;反之,当x=0时,f{x}=0。
[0069]
2.尾实体和关系抽取模块
[0070]
将头实体标注层输出的第w个头实体向量表示和编码层输出的隐藏状态向量表示x
i
=h
n
[i]送入尾实体和关系标注层。同理可得,尾实体可能的概率如公式8所示。
[0071][0072]
尾实体最大似然函数如公式9所示。
[0073][0074]
最终根据公式8、9计算损失函数如公式10所示。
[0075][0076]
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围。凡采用等同替换或等效替换,这些变化是显而易见,一切利用本发明构思的发明创造均在保护之列。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜