融合BSRU和胶囊网络的文档级实体关系抽取模型
2022-05-10杨超男彭敦陆
杨超男,彭敦陆
(上海理工大学 光电信息与计算机工程学院,上海 200093)
Email:pengdl@usst.edu.cn
1 引 言
作为自动抽取信息的中心任务,关系抽取旨在确定一对实体提及之间的关系,它被证明对自然语言理解和其他下游任务很有用.随着技术的不断进步以及对关系抽取研究的不断深入,对文档中关系抽取的需求迅速提高.文档中蕴含的丰富知识不仅有助于快速精准的了解文档的关键信息,而且对现阶段社交网络的构建提供了强有力的帮助,因此,面向文档的关系抽取成为了自然语言处理等众多领域的基础研究.
迄今,国内外众多科研学者们提出了关于实体关系抽取的一系列方法.但是,将现有的神经网络模型扩展到文档级实体关系抽取任务中,至少存在以下不足:
首先,区别于传统的句子级别的实体关系抽取,由于文档的逻辑结构更复杂,内部语义也更加丰富,很显然文档级的关系抽取难度有了很大的提升.其次,大多数的关系抽取模型都是对整个句子进行建模,不能差异化的构建跨多个句子具有复杂逻辑结构的关系特征,从而导致模型的效率低下.综上所述,结合现阶段实体关系抽取任务中存在的一些问题,可以发现文档级实体关系抽取方法的有效构建对于提升自然语言理解技术有很大的价值.
本文的贡献如下:1)将BSRU模型运用于文档级实体关系抽取;2)提出了结合多条最短依赖路径对关系特征建模的方法;3)最后,在胶囊网络中引入了注意力机制,提高模型预测的精准性.
2 相关研究
近年来,神经网络模型在实体关系抽取的相关任务中发挥着越来越重要的作用,与传统的方法相比,神经网络抽取模型在学习的特征表示方面更加完整,效率上也更加高效便捷.常见的神经网络关系抽取模型有循环神经网络模型,如Socher等[1]人提出的递归矩阵向量模型,通过对句子中实体间的最短依赖路径建模来进行句子内部的关系抽取;Geng等[2]人提出的基于双向树状结构的长短时记忆的注意力模型,用于抽取依赖树中的语义关系特征.Peng等[3]人和Song等[4]人提出了基于图的长短时记忆网络模型,用于关联蛋白质药物疾病的多个句子中的n元关系抽取,但是实体被限制在最多两个跨度的句子中.
随着胶囊网络被用来改善CNN和RNN的表示限制,越来越多的人将它应用于自然语言处理任务中.Wang 等[5]人首次尝试在循环神经网络的基础上使用胶囊进行情感分析,但是,它们没有采用路由算法,因此极大地限制了胶囊的功能;Gong 等[6]人提出了两种动态路由方法,他将RNN / CNN编码层的输出进行特征的融合,以此表示模型最终的编码向量;Zhang 等[7]人提出了一个多标签关系抽取的胶囊网络模型,用于解决单个句子中实体在不同关系中的重叠特征.
Shahroudnejad等[8]人提出了一个并行的多路径胶囊网络模型PathCapsNet,它使用了3个子网络来抽取输入特征,并利用胶囊层来建立相关特征之间的关系.
然而,上述这些方法限制了捕获长跨度句子中实体语义信息,并且它们不能从关系示例中提取一些新的有效特征.为了解决上述问题并提高模型的训练效率,本文提出了一种将双向简单循环神经网络[9]与融合注意力机制的胶囊网络[10]相结合实体关系抽取模型.接下来的部分将详细介绍本文提出的融合模型的具体实现过程.
3 方 法
模型的基本框架如图1所示.对于给定两个实体,在依存树中唯一确定一条最短依赖路径,而一篇文档中由于每一个实体都存在若干个共指,因此能够确定类似的最短依赖路径m条.接着,将最短依赖路径的所有词映射为词嵌入、依赖嵌入、共指嵌入及实体类型向量,拼接后输入到BSRU 中,其中,BSRU模型负责深入学习文本中实体对关系的语义特征和上下文信息特征.已有文献研究了对最短依赖路径建模进行关系预测的合理性[11],本文基于此对最短依赖路径进行关系建模,同时通过注意力机制给每条路径上学习到的关系特征分配不同权重,优化蕴含在文档中复杂逻辑结构的实体关系表示.随后,将最短依赖路径上的词向量和新学习到的关系向量传给CapsNet 模型,得到高级关系胶囊,最后将预测的概率与关系类别标签对应,完成本文的文档级别的关系抽取任务.
图1 基于 BSRU 和 CapsNet 模型的框架图(e1k,e2k分别是e1,e2的共指)
3.1 输入向量表示
多项研究表明,依存句法分析可以优化关系抽取的性能[12,13].在文档级关系抽取任务中,本文发现目标实体之间的最短依赖路径为确定跨句子之间目标实体对的关系提供了证据.
本文首先利用stanford corenlp解析器[14]将文档解析为依赖关系树,将最短依赖关系路径作为本文模型的输入.具体如下:跨句子的实体关系可以通过对从端点实体e1k到“公共根”,再从“公共根”到端点实体e2k构成的最短依赖路径建模.假设实体e1k到实体e2k的最短依赖路径上的文本{wk1,wk2,…,},单词嵌入xi由4个部分组成,分别为词嵌入wdi、依赖嵌入dpi、共指嵌入cfi及实体类型嵌入tpi.
xi=[wdi;dpi;cfi;tpi]
(1)
其中,[;]代表向量的拼接.则此最短依赖路径的文本就可以表示为 S =[x1,x2,…,xi,…,xl]T.这里,xi对应最短路径中第i个词的向量.
3.2 BSRU模块
LSTM模型解决了文本中长距离语义依赖的问题,但是由于当前节点的计算必须依赖上一步计算,为了简化模型的状态计算过程,实现和卷积神经网络相同的并行性,Lei等人提出了简单循环单元SRU.区别于传统的循环神经网络,SRU通过在循环层增加Skip Connection1保证网络模型的有效性,同时在传统的dropout外,增加了Variational dropout2,提高网络模型的训练效率.鉴于此,为了更高效的学习文本的双向语义关系,本文使用 BSRU模型来学习目标实体的上下文语义信息,SRU原理图如图2所示.
图2 SRU原理图
图2中,SRU的内部主要包括3个门结构:遗忘门结构f、重置门结构r、输出门结构h.SRU网络模型的计算方式如下所示:
g(t)=Wxt
(2)
ft=σf(Wfxt+bf)
(3)
rt=σr(Wrxt+br)
(4)
ct=ft⊙ct-1+(1-ft)⊙g(t)
(5)
ht=rt⊙g(ct)+(1-rt)⊙xt
(6)
其中,xt代表t时刻的输入,ct代表t时刻的细胞状态,σ、g都代表激活函数,⊙表示向量对应位置元素的乘积.
此外,为了学习双向的语义特征,这里将SRU正反两个方向的存储单元隐藏状态向量hri连接起来,作为输出向量hri∈R2B,其中B表示SRU隐藏向量的维数,即:
(7)
由上文可知,实体间的最短依赖路径存在若干条,而每条路径表示的关系特征的重要程度显然是不一样的.通过差异化每条最短依赖路径对关系特征构建的重要程度,从而使得模型学习到多样化的关系特征.
具体方式如下:在模型中,将多条路径表示的包含多种信息特征的上下文向量矩阵输入进Global Attention 中,将每条路径表示的关系语义与最短路径表示的关系语义进行相似度计算,然后经过加权求和计算出每条路径对最终关系表示的贡献度,即注意力值或权重.注意力值越高的路径,则其对推断出实体对之间关系就越重要,进而减少无关并列路径对实体关系抽取干扰的影响.对应的权重αi,可以通过下式计算:
(8)
score(Dr,hri)=Uσ(W[Dr;hri])
(9)
公式中,W、U是权重矩阵,T表示转置运算,m表示文档中实体e1(及其提及)到实体e2(及其提及)存在的最短依赖路径的条数,score代表得分函数,Dr表示m条最短依赖路径中最短的一条路径表示的关系嵌入,hri表示第i条最短依赖路径上表示的关系特征,hr目标关系特征.
然后根据权重,求出加权之后的关系表示hr,即:
(10)
算法1.动态路由算法
输入:低级胶囊u,迭代次数n,对最短依赖路径建模的关系表示hr和隐藏层状态ht
输出:高级胶囊r
1.for所有的胶囊ui和胶囊rjdo
2. 初始化耦合系数
3. bij=0
4.endfor
5.for迭代次数ndo
6.wi=softmax(bi),∀ui∈u
7.αi=σ(hTrhit),∀ui∈u
8.rj=Squash(∑iwijαiWjui),∀rj∈r
9.bij=bij+Wjuirj,∀ui∈u且∀rj∈r
10.endfor
3.3 CapsNet模块
在本文的关系抽取任务中,使用胶囊网络对BSRU抽取的底层的语义信息进行更深层次的学习,丰富特征语义的表达.倘若使用u∈Rdl表示低层胶囊,则每一个单词由k个低层胶囊表示,即该单词就有k个属性.而高级胶囊由多个维度的低级胶囊组成,具体表示如公式(11)所示.
(11)
(12)
当多个预测结果一致时,更高级别的胶囊就会生效.高级胶囊r∈Rdh根据下面等式(13)计算.
(13)
其中,wij表示耦合系数,Wj∈Rdh×dl是权重矩阵.Squash函数代表激活函数,它的作用是在保证向量方向的同时将输出向量的模长控制在0-1之间,公式(13)中的耦合系数wij计算方式如下(15):
(14)
为了量化最短依赖路径上每个单词对判断实体对关系的影响,模型又将各个单词隐藏状态输入进Global Attention 中,把单词隐藏状态的语义与BSRU模型输出的最终的关系语义进行相似度计算,求出注意力值,即:
(15)
具体的关系抽取步骤如算法1所示.
这里根据算法1得到的高级胶囊rj计算第j个关系的损失函数,计算如公式(17):
Lj=Yjmax(0,(B+γ)-‖rj‖)2+λ(1-Yj)max(0,‖rj‖-(B-γ))2
(16)
其中,Yj代表是否是关系j,取值为0或1,γ是超参数,B是可学习变量,λ是损失权重,与Sabour等人提出的损失[13]一致.需要注意的是,实体对关系在文档中的总损失是预测的所有关系损失之和.在预测关系过程中,如果预测的关系标签概率大于阈值B时,将为其分配关系标签.否则,将其预测为NA.
此外,胶囊网络输出的结果是一个向量,用来代表一个关系类,该关系预测的概率可以用向量的模长表示.最后,将概率最高的关系类别作为实体对最终预测的类别标签,计算方式如公式(18)所示:
label=argmaxj∈R{‖rj‖}
(17)
这里,R表示关系标签的集合.
4 实验结果和分析
4.1 实验数据
实验使用清华大学构建的DOCRED(1)https://cloud.tsinghua.edu.cn/d/5d8628d7f0b6453a8d7c/数据集[15]评估模型的性能,该数据集中训练集包含3,053个监督文档和101,873个弱监督文档,验证集和测试集均包含1000个文档.数据集中涵盖96种带有方向的关系,如时间、地 点、人物、事件、艺术作品、法律等.
4.2 实验评价标准
4.2.1 参数设置
实验中利用预训练的Glove 100维单词嵌入和Stanford CoreNLP工具在DOCRED中进行文档语料库的语义依赖分析.表1中列出了实验中模型使用的参数.
表1 参数设置
4.2.2 评价标准
本文选择F1-score和AUC,作为评价关系抽取模型性能的指标.其中F1-score是准确率(Precision)和召回率(Recall)的调和平均值,AUC表示的是坐标轴与ROC曲线构成的面积,其中ROC曲线的横坐标为假正类率,纵坐标为真正类率.假设ROC的函数表达式为y=f(x),则各项指标计算如下:
(18)
(19)
(20)
(21)
4.3 实验结果与分析
为了验证提出模型在文档级别实体关系抽取领域的有效性,本文设置了4个对比试验,分别验证BSRU模块、多条最短依赖路径、动态路由算法中增加注意力机制的影响,并对比了一些流行模型.
实验1.BSRU对模型的影响.从表 2可以看出,使用BSRU代替传统的BiLSTM,虽然F1-score和AUC指标在弱监督设置上有略微的下降,但是模型每一轮的训练训练速度有了明显的提升,这归功于BSRU网络模型,它能够将具有依赖关系的运算步骤进行串行处理,从而提升模型的效率.
表2 使用BSRU模型的对比实验结果(%)
实验2.结合多条最短依赖路径对模型的影响.表3显示了结合多条最短路径建模对模型性能的影响,以监督设置为例,与仅考虑单条最短依赖路径的SBSRU-ATTCapsNet模型相比,结合多条最短依赖路径的关系表示的BSRU-ATTCapsNet模型,在F1-score和AUC的表现都有了竞争性的提高,这是由于多条最短依赖路径上包含的实体关系信息更完整,更全面,而且又保留了文档复杂的逻辑结构特征,从而帮助本文的模型得到更精致的预测效果.
表3 结合多条最短依赖路径模型的对比实验结果(%)
实验3.动态路由算法中注意力机制对模型的影响.表4显示了在动态路由算法中增加注意力机制对模型性能影响,本文的BSRU-ATTCapsNet模型在监督设置中显著优于没有注意力机制的BSRU-CapsNet模型,这表明通过加入注意力机制,将不同位置学习到的关系特征进行综合加权,为相关的最短依赖路径学习到的实体关系分配更高的权重,无关并列关系分配更小的权重,能够增强系特征表示,从而有利于目标关系的预测.
表4 动态路由算法中增加注意力机制的对比实验结果(%)
实验4.本文模型与流行模型的对比.为了突出本文提出模型的有效性,将模型与以下基准进行比较:
1)BiLSTM[16],通过学习实体的表示预测实体之间的关系.
2)ContextAware[17],通过关系之间的交互效应预测目标关系.
3)GAIN-Glove[18],通过整个文档中不同提及之间的复杂交互进行目标关系的预测.
4)CorefBERT[19],通过捕获文本中的共指信息,来聚合不同共指提及的推理信息.
表5显示了各个模型在DocRED数据集上的性能,其中本文提出的BSRU-ATTCapsNet模型取得了最突出的结果,在监督设置测试集中F1-score比CorefBERT模型高出1.7%,在弱监督设置测试集中F1-score比CorefBERT模型高出0.2%,这是由于提出的模型优化了最短依赖路径上的关系建模,胶囊网络又进一步强化了关系的多维度表示.
表5 与其他模型实验的对比结果(%)
5 结束语
文档级实体关系抽取模型仍存在很多优化的地方,本文从复杂的逻辑结构出发,针对模型效率低下、实体关系特征构造单一和并列特征的负面影响问题,提出了BSRU-ATTCapsNet模型.BSRU 学习文档中复杂结构的远距离依赖信息,CapsNet从多个维度学习实体对的更深层次的关系,使得提出模型的效果得到提升.