[发明专利]一种基于有序结构编码指针网络解码的实体关系抽取方法在审
申请号: | 202110338079.9 | 申请日: | 2021-03-30 |
公开(公告)号: | CN113553850A | 公开(公告)日: | 2021-10-26 |
发明(设计)人: | 贾海涛;邢增传;张博阳;黄超;耿昊天;曾靓;刘桐;李嘉豪 | 申请(专利权)人: | 电子科技大学 |
主分类号: | G06F40/295 | 分类号: | G06F40/295;G06F40/253;G06F40/211;G06F40/30;G06N3/04;G06N3/08 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 611731 四川省成*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 有序 结构 编码 指针 网络 解码 实体 关系 抽取 方法 | ||
1.一种基于有序结构编码指针网络解码的实体关系抽取方法,其特征在于,该方法目标是对一个句子中的实体和关系组成的三元组进行识别和抽取,方法的步骤如下:
步骤1:在输入层选取特征构建句子初始向量,将句子向量化表示;
步骤2:在编码层捕获层级结构信息,获取句子的每一个词语的隐藏嵌入;
步骤3:在解码层综合之前的特征利用指针网络进一步提取抽象特征,抽取句子三元组。
2.根据权利要求1所述的基于有序结构编码指针网络解码的实体关系抽取方法,其特征在于,所述步骤1中的构建句子初始向量具体指的是:在实体关系抽取任务中,本发明选取了词向量加入对抗训练负例,表示一个句子;
步骤1.1:训练词向量
用X={x1,x2,…xi,…,xn}表示输入句子序列,其中xi表示序列中第i个字符,采用BERT预训练语言模型训练出来的基于上下文的词向量对输入句子做空间映射,采用了双阶段训练模型:第一,先进行语言预训练,其次是在应用到下游任务的时候使用微调(Fine-Tuning);然后,我们使用预训练好的BERT词向量将xi表示为该向量维度为d;
那么整个句子的词向量矩阵就如公式1所示;
E=[e1,e2,…,en] (1)
步骤1.2:对抗训练
为了提升实体关系抽取模型的性能,本发明在词嵌入层之上加入了对抗训练,通过在拼接词向量表示层之上添加一些噪声来生成原始输入信息的负例,如附图2所示;
本发明输入表示层模型包含词向量、对抗训练,通过在训练数据时加入小的扰动函数;如公式2所示;
即通过将最坏情况的扰动ηadv加入到原始的嵌入向量ω中,从而使损失函数最大化;其中,是当前模型参数的副本;然后,对原始例子和生成负例进行联合训练,因此最终损失如公式3所示。
3.根据权利要求2所述的基于有序结构编码指针网络解码的实体关系抽取方法,其特征在于,所述步骤2中的在编码层捕获层级结构信息和序列信息具体指的是:
针对不同的领域的任务,编码层和解码层可以选用不同的组合方式,比如,在图像处理任务上,通常使用卷积神经网络构成编码层,对于事件要素抽取这样的自然语言处理领域任务,通常会选取循环神经网络;
在中文的文本处理中,我们有一个层级的概念,字是最低的层级,其次是词语,下来就是句子、段落等;层级越高,颗粒度越粗,则信息在句子中的跨度越大;如附图4是层级颗粒度示意图;
然而,以往的LSTM等循环神经网络其神经元通常都是无序的,导致其无法学习提取到层级结构信息;因此,本发明选用双向有序长短期记忆网络(Bi-OnLSTM)作为编码层基本结构,使高层级信息能够在对应期间保留更久,而低层级信息在对应区间更容易被遗忘,这些不同的信息传播跨度就形成了输入序列的层级结构;On-LSTM的前向计算公式,如公式4所示,如附图5是On-LSTM单元结构示意图;
其中,On-LSTM对比传统LSTM,On-LSTM的改动主要是新增了主遗忘门主输入门和分别是右向/左向的cumsum操作;
本发明将引入的On-LSTM设计为双向网络;在实体关系抽取任务中,只获取单向的从左到右的上文信息不足以支撑实体关系抽取任务,需要一层从右向左的On-LSTM来获取下文信息,于是改进的联合实体关系抽取模型编码层结构为Bi-OnLSTM;用前向的On-LSTM计算t时刻词语xt左边的状态(正向传播层的最终隐藏状态),再利用后向On-LSTM计算t时刻词语xt右边的状态(反向传播层的最终隐藏状态),则词语xt于编码层在t时刻的输出结果即为
4.根据权利要求3所述的基于有序结构编码指针网络解码的实体关系抽取方法,其特征在于,所述步骤4中的在解码层综合之前的特征利用指针网络进一步提取抽象特征具体指的是:
由于编码层的Bi-OnLSTM已经捕获了全部层级信息和序列信息,本发明在解码层针对联合实体关系抽取,使用指针网络的解码思想解决实体关系重叠问题;
本发明不同于以往的先抽实体,再判断实体间关系的方法,转而采用改进的抽取机制;如附图6是指针网络示意图;即可以将任务分为两个阶段,第一阶段是先标注出句子中的可能候选头实体,第二阶段则是根据候选头实体的语义和位置特征去标注尾实体和关系,这样就解决了一个头实体可能对应多个尾实体和关系的重叠问题,而且,因为一个头实体都是根据语义和位置特征去获得三元组的,就避免了抽取出来无意义三元组,从而减少了冗余信息;
于是,以往的三元组抽取公式变成了求条件概率公式,如公式5所示;
p(s,p,o|Sen)=p(s|Sen)p(p,o|s,Sen) (5)
式中,Sen为句子表示,s、p、o为实体关系三元组;首先,我们使用头实体标签p(s│Sen)去识别出一个句子中的头实体,然后对于每一种关系r,使用尾实体标签p(p,o│s,Sen)去识别与该头实体有对应关系的尾实体;
通过联合实体关系抽取解码层提取抽象特征三元组,就由以下两个模块构成;
步骤4.1:头实体抽取
将Bi-OnLSTM编码层输出的编码向量hi送入解码层的头实体抽取模块进行解码,识别出所有可能是头实体的向量;首先,在编码层输出之上加上头实体标注层,即使用两层的分类器(label layer):start层和end层去识别头实体的开始位置和结束位置;具体操作是对句子表示的每一个token使用一个二进制标签(0、1)去标记:start层中token如果带有“1”标签表示起始位置,end层中token如果带有“0”标签;则头实体标注层求句子中可能存在的头实体概率如公式6所示;
其中,start标注层中首先加入了一个Bi-LSTM层,将解码之前的h_i送入该层得到进一步的头实体起始位置隐藏状态向量为头实体token开始位置的概率;头实体结束位置隐藏状态向量为头实体token结束位置的概率,σ为激活函数;
然后对头实体所有可能起始位置和结束位置求最大似然函数,以此来获得一个输入句子token表示x(xi=hN[i])的头实体范围如公式7所示;
其中L为句子token的长度,当x=1时,f{x}=1;反之,当x=0时,f{x}=0;
步骤4.2:尾实体和关系抽取
将头实体标注层输出的第w个头实体向量表示和编码层输出的隐藏状态向量表示xi=hN[i]送入尾实体和关系标注层;同理可得,尾实体可能的概率如公式8所示;
尾实体最大似然函数如公式9所示;
最终根据公式8、9计算损失函数如公式10所示。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于电子科技大学,未经电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110338079.9/1.html,转载请声明来源钻瓜专利网。