A Two-Stream AMR-enhanced Model for Document-levelEvent Argument Extraction(TSAR)

摘要

以往的大多数研究都是从单个句子中提取事件,而文档级事件提取仍未得到充分探索。在本文中,我们着重于从整个文档中提取事件参数,这主要面临两个关键问题: a)触发器和句子参数之间的长距离依赖关系;b)对文档中事件的分散上下文。为了解决这些问题,文章提出了一个双流抽象意义表示增强提取模型(TSAR)。TSAR通过双流编码模块从不同的角度对文档进行编码,利用局部和全局信息,降低分散上下文的影响。此外,TSAR还引入了一个由AMR引导的交互模块,基于局部和全局构建的AMR语义图,同时捕获句子内和句子间的特征。引入了一种辅助边界损失来显式地增强文本跨度的边界信息。大量的实验表明,TSAR在公共RAMS和WikeEvents数据集上分别提高了2.54的F1和5.13的F1,显示了在跨句子参数提取方面的优越性。代码在https://github.com/ PKUnlp-icler/TSAR上进行了发布。

一、引言

之前的文档级别的EAE(Event Argument Extraction)面临着两个关键挑战:

  1. 远距离依赖关系:触发器和参数之间的远程依赖关系。这些参数通常位于与触发词不同的不同句子中,它们的距离可能相当远。在图中,当触发器shipment在第2句中时,vehicle、origin、artifact和importor参数位于第1句或第3句中,这大大增加了提取的难度。为了适应长期提取,不仅句子内语义,而且句间语义都应该很好地建模。
  2. 分散的上下文:虽然文档自然包含的上下文比单个句子包含更多的上下文,但一些分散的上下文可能会误导参数提取。如图所示,origin参数U.S更容易被第4句识别,它不能为事件提供有用的信息。但包含了许多可能分散注意力的地方实体,比如Saudi Arabia、Russia和Iran。在丢弃分散注意力的信息的同时,精确定位有用的上下文仍然具有挑战性。

因此本文提出了一个文档级EAE的双流编码模块,它通过两个不同的角度对文档进行编码,以更好地利用上下文。

  • 提出了一个文档级EAE的双流编码模块,它通过两个不同的角度对文档进行编码,以更好地利用上下文。
  • 引入了一个AMR引导的交互模块,以促进文档中的语义交互,以便更好地捕获远程距离依赖。
  • 我们的实验表明,TSAR在公共RAMS和Wiki事件数据集上分别有了2.54和5.13的F1值提高,特别是在跨句子事件参数提取方面。

二、方法

图2 TSAR基本框架结构

上图显示了TSAR模型的总体架构。文档被输入双流编码模块,然后是AMR-guided交互模块,以获得全局和局部上下文表示。信息融合模块融合了这些双流表示,分类模块最终预测了候选跨度的参数角色。

2.1 Two-Stream Encoding Module

虽然文档提供了更多的上下文,但它也不可避免地对事件引入了不相关的和分散注意力的信息。这些噪声信号可能对参数提取有害。为了捕获有用的信息和过滤分散注意力的信息,我们提出了一个双流编码模块,包括一个了解所有上下文的全局模块编码器(global encoder),以及只谨慎地关注最基本信息的本地编码器(local encoder)。因此,我们可以利用它们的互补优势来更好地利用上下文信息。

具体来说,全局编码器和本地编码器共享相同的基于Transformer的预训练语言模型,如BERT。通过控制自注意模块中单词的接收域,我们可以从不同的角度对文档进行编码。

在全局编码器中,注意力集中机制与传统的Transformer相同:

Attention^G(Q,K,V) = softmax(\frac{QK^T}{\sqrt{d_m}})V

然而,在本地编码器中,我们引入了一个掩码矩阵M,这样token只能注意句子本身和触发器所在的句子,以避免冗余的干扰信息:

Attention^L(Q,K,V) = softmax(\frac{QK^T+M}{\sqrt{d_m}})V

M_{ij} = \begin{cases} 0, & \text{if } \text{SEN}(w_j) \in \{ \text{SEN}(w_i), \text{SEN}(t) \} \\ -\infty, & \text{otherwise} \end{cases}

因此,我们用两个不同的流对文档进行编码,一个全局编码器编码Encoder^G和一个本地编码器Encoder^L,最后导出两个表示,Z^GZ^L

Z^G = \left[ z_1^G, z_2^G, \dots, z_{|D|}^G \right] = \text{Encoder}^G \left( [w_1, w_2, \dots, w_{|D|}] \right) \\ Z^L = \left[ z_1^L, z_2^L, \dots, z_{|D|}^L \right] = \text{Encoder}^L \left( [w_1, w_2, \dots, w_{|D|}] \right)

2.2   AMR-Guided Interaction Module

 从文档中提取参数的一个关键挑战是捕获句内和句间的特征。因此,文中提出了一个AMR导向的交互模块,该模块采用抽象意义表示(AMR,Banarescu et al.,2013)图,提供丰富的语义结构,促进概念之间的交互,也从语言驱动的角度提供了文档的逻辑意义,有利于语言理解。

AMR语义图将一个句子的意义表示建模为一个有根的、有向的、有标记的图。具体地说,使用一个AMR解析器,一个自然的句子可以被解析为一个AMR图G =(V,E)。节点v =(a,b)∈v表示一个概念,它对应于原点句子中从w_aw_b的跨度,而边缘表示一个特定的AMR关系。

因此,AMR关注的是语义关系而不是语法关系,语义关系更高层次,有利于事件理解,其结构更接近事件触发参数结构。例如,下图演示了如何将一个句子解析为一个AMR语义图。由于事件参数在文本中扮演着重要的角色,大多数都会涉及其中,如果不是AMR图(RAMS和WikiEvents数据集中90%和88%的参数)。文中使用最先进的AMR解析器费尔南德斯Astudillo等人(2020),为下游应用取得了令人满意的结果(AMR2.0数据高达81.3Smatch)。由于AMR关系类型的数量较大,导致需要的参数过多,我们也遵循Zhang和Ji(2021)将关系类型聚类为主要类别。

AMR-guided交互模块附加在全局和本地编码器之后,如图2所示。在组合、交互和分解范式下,我们使用AMR图作为信息交互的骨架。

从局部的角度来看,我们为文档中的每个句子构建AMR图,并且它们彼此隔离。对于初始化,节点u=(a_u, b_u)的向量表示是通过平均其对应的局部文本跨度表示来组成的:

h_u^0= \frac{1}{|b_u-a_u + 1|}\sum_{i=a_u}^{b_u}z_i^L

类似Zeng等人(2020),我们使用L层堆叠图卷积神经网络(Kipf和Welling,2017)通过不同关系类型的边建模不同概念节点之间的交互。给定第l层的节点u,信息交互和聚合操作定义如下:

h_u^{(l+1)} = \text{ReLU} \left( \sum_{k \in \mathcal{K}} \sum_{v \in \mathcal{N}_k(u) \cup \{u\}} \frac{1}{c_{u,k}} W_k^{(l)} h_v^{(l)} \right)

其中\mathcal{K}表示不同的关系类型,\mathcal{N}_k(u)表示u与第k个关系类型连接的邻居,c_{u,k}是一个归一化常数。此外,W_k^{(l)}\in R^{d_m \times d_m}是一个可训练的参数。

最后,我们将所有层的向量连接起来,得到h_u = W_1 [h_u^0;h_u1; ..., h_u^L]\in R^{d_m}。然后将h_u分解为对应单词的局部表示,然后进行标记聚合,其中I(·)表示指示函数:

\tilde{h}_i^L = z_i^L + \frac{\sum_u \mathbb{I}(a_u \leq i \land b_u \geq i) h_u}{\sum_u \mathbb{I}(a_u \leq i \land b_u \geq i)}

从全局的角度来看,我们首先通过完全连接不同句子的AMR图的根节点来构建全局AMR图,因为根节点根据AMR核心语义原则包含核心语义(Cai and Lam,2019)。然后使用类似的基于图的交互方法来获得AMR增强的全局表示\tilde{h}_i^G,而是基于全局AMR图。这样,句子间的信息就可以流过句子的边界,因此也可以更好地捕捉到长距离的依赖关系。

2.3 Information Fusion Module

在信息融合模块中,我们融合了全局表示\tilde{H}^G = [\tilde{h}_1^G, \tilde{h}_2^G, ..., \tilde{h}_{|D|}^G]\title{H}和局部表示\tilde{H}^L = [\tilde{h}_1^L, \tilde{h}_2^L, ..., \tilde{h}_{|D|}^L],构建候选跨度的最终向量表示。详细地说,我们使用门控融合来控制从双流表示中合并了多少信息。

\tilde{h}_i = g_i \odot \tilde{h}_i^G + (1 - g_i) \odot \tilde{h}_i^L

对于候选文本跨度从w_iw_j,其融合表示包含起始表示\tilde{h}_i^{\text{start}} 、结束表示\tilde{h}_j^{\text{end}}以及跨度中隐藏状态的平均池化,表示如下,其中W_{\text{span}} \in \mathbb{R}^{d \times (3d)}

s_{i, j} = W_{\text{span}} \left[ \tilde{h}_i^{\text{start}}; \tilde{h}_j^{\text{end}}; \frac{1}{j-i+1} \sum_{k=i}^{j} h_k \right]

其中,\tilde{h}_i^{\text{start}} = W_s \tilde{h}_i, \quad \tilde{h}_j^{\text{end}} = W_e \tilde{h}_j 

由于我们在跨度级别提取参数,其边界可能是模糊的,因此引入了一个辅助边界损失来增强\tilde{h}_i^{\text{start}}\tilde{h}_j^{\text{end}}的边界信息。具体来说,我们预测词w_i是否为黄金参数跨度的第一个或最后一个词,通过基于词的分类器实现。 我们使用线性变换后跟随一个 sigmoid 函数,来计算词 \( w_i \) 是黄金参数跨度的第一个或最后一个词的概率,即P_i^sP_i^e

P_i^s = \text{sigmoid} \left( W_s^{\intercal} \tilde{h}_i^{\text{start}} \right), \quad P_i^e = \text{sigmoid} \left( W_s^{\intercal} \tilde{h}_i^{\text{end}} \right)

最后,边界损失定义为检测起始和结束位置的交叉熵损失:

\mathcal{L}_b = -\frac{1}{|D|} \sum_{i=1}^{|D|} \left[ y_i^s \log P_i^s + (1 - y_i^s) \log (1 - P_i^s) + y_i^e \log P_i^e + (1 - y_i^e) \log (1 - P_i^e) \right]

其中,y_i^sy_i^e 表示黄金标签。通过这种方式,我们为跨度的起始和结束表示引入了显式监督信号,以增强边界信息,这在提取和探索实验中被证明是有效的。

2.4 Classification Module

 在分类模块中,我们预测候选跨度扮演什么参数角色,或者它不属于任何特定的参数角色。除了跨度表示s_{i:j}之外,我们还考虑了触发器、事件类型和跨度的长度。具体地说,我们连接以下表示,得到最终的预测向量I_{i:j}

1)触发表示\tilde{h}_t,和跨度表示s_{i:j},与它们的绝对差异|\tilde{h}_t-s_{i:j}|,和元素级乘法,\tilde{h}_ts_{i:j}

2)事件类型−的嵌入;

3)跨度长度Elen的嵌入。

然后我们使用交叉熵\mathcal{L}_c作为损失函数:

\mathcal{L}_c = -\sum_{i=1}^{|D|} \sum_{j=i}^{|D|} y_{ij} \log P(r_{ij} = y_{ij})

最后,我们用具有超参数λ的最终损失函数\mathcal{L} = \mathcal{L}_c + \lambda \mathcal{L}_b进行端到端训练模型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

星宇星静

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值