【ACL 2023】Enhancing Document-level Event Argument Extraction with Contextual Clues and Role Relevance
论文:https://aclanthology.org/2023.findings-acl.817/
代码:https://github.com/LWL-cpu/SCPRG-master
Abstract
与句子级推理相比,文档级事件论元抽取在长输入和跨句推理方面提出了新的挑战。然而,大多数先前的工作都集中在捕捉每个事件中候选论元和事件触发词之间的关系,忽略了两个关键点:a)非论元上下文线索信息;b) 论元角色之间的相关性。在本文中,我们提出了一个SCPRG(基于跨度触发词的上下文池化和潜在角色引导)模型,该模型包含两个新颖有效的模块来解决上述问题。基于跨度触发的上下文池化(STCP)基于预训练模型中特定论元-触发词对的上下文注意力权重,自适应地选择和聚合非论元线索词的信息。基于角色的潜在信息引导(RLIG)模块构建潜在角色表示,使其通过角色交互编码进行交互,以获取语义相关性,并将其合并为候选论点。与基本模型相比,STCP和RLIG都引入了不超过1%的新参数,并且可以很容易地应用于其他事件抽取模型,这些模型紧凑且可移植。在两个公共数据集上的实验表明,我们的SCPRG优于以前最先进的方法,在RAMS和WikiEvents上分别改进了1.13 F1和2.64 F1。进一步的分析说明了我们模型的可解释性。
Introduction
然而,先前所有SOTA的作品都忽略了两个关键点:(a)非论元的线索信息;(b) 论点角色之间的相关性。
非论元线索是除目标论元外的上下文文本,可以为预测许多复杂的论元角色提供重要的指导信息。例如,在图1中,对于Conflict and Attack事件,非论元线索被detonated, claim responsibility 和 terrorist attack可以为识别论元explosive belts和Islamic State提供重要的线索信息。然而,以前的许多工作只使用了经过预训练的Transformer编码器隐式获取全局上下文信息,忽略了对于事件中出现的不同论元,他们应该关注与实体和目标事件高度相关的上下文信息。因此,在本文中,我们设计了一个基于跨度触发词的上下文池化(STCP)模块,该模块基于预训练模型中的上下文注意力乘积,将每个论元-触发词对的非论元线索的信息合并,用额外的相关上下文信息增强候选论元的表示。
一些论元角色具有密切的语义相关性,这有利于论元抽取。例如,在图1中,角色injurer和victim之间存在密切的语义相关性,这可以为目标事件Conflict and Attack中这两个角色的论点抽取提供重要的信息指导。此外,许多角色共同发生在多个事件中,这可能具有密切的语义相关性。具体而言,我们统计并可视化了图2中RAMS数据集中15个最频繁角色之间的共现频率。例如,attacker, target 和 instrument的角色经常同时出现,这表明它们在语义上比其他角色更相关。在本文中,我们提出了一个基于角色的潜在信息引导(RLIG)模块,该模块由角色交互编码和角色信息融合组成。具体来说,我们设计了一个角色交互编码器,将角色添加到输入序列中,其中角色嵌入不仅可以学习角色的潜在语义信息,还可以捕捉角色之间的语义相关性。然后,通过池化和串联操作将潜在的角色嵌入合并到候选论元中,为文档级EAE提供信息指导。
针对上述两个问题,本文分别提出了一个有效的文档级EAE模型SCPRG(Span-trigger-based Contextual Pooling and Role-based Potential information Guidance),该模型包含STCP模块和RLIG模块。值得注意的是,这两个模块利用了来自预训练的语言模型的学习良好的注意力权重,引入了不超过1%的新参数,并且很容易应用于其他紧凑且可移植的事件抽取模型。此外,我们试图通过排除有争议的不可能跨度来消除噪声信息。我们的贡献总结如下:
- 我们提出了一个基于跨度触发词的上下文池化模块,该模块自适应地选择和聚合非论元线索的信息,用相关的上下文信息增强候选论元的表示。
- 我们提出了一个基于角色的潜在信息指导模块,该模块提供包含角色之间语义相关性的潜在角色信息指导。
- 大量实验表明,SCPRG的性能优于之前的最新模型,在公共RAMS和WikiEvents数据集上分别提高了1.13 F1和2.64 F1。我们进一步分析了注意力权重和潜在角色表征,这表明了我们模型的可解释性。
Method
文档级时间论元抽取可以作为一个多分类问题。给出一个文档 D D D包含 N N N个单词, D = { w 1 , w 2 , … , w N } D=\{ w_1,w_2,\dots,w_N \} D={w1,w2,…,wN},预定义的事件类型集合 E \mathcal{E} E,对应的论元角色集合 R e \mathcal{R}_e Re,触发词 t ∈ D t \in D t∈D,每一个事件 e ∈ E e \in \mathcal{E} e∈E。该任务的目的是预测出文档 D D D中的所有事件对 ( r , s ) (r,s) (r,s)。其中 r ∈ R e r \in \mathcal{R}_e r∈Re是事件 e ∈ E e \in \mathcal{E} e∈E的论元角色, s ⊆ D s \subseteq D s⊆D。
Role-interactive Encoder
Role Type Representation:为了捕捉角色之间的语义相关性,我们将角色类型信息添加到输入序列中,并通过多头注意力在上下文和角色之间进行交互,从而在共享的知识空间中获得上下文和角色的表示。具体来说,我们在预训练的模型中构建具有不同特殊标记的角色的潜在嵌入,其中每个角色类型都有特定的潜在表示。考虑到角色名称也包含有价值的语义信息,我们用特殊的角色类型标记包裹角色名称,并将起始特殊标记的嵌入作为角色嵌入。以角色Place为例,我们最终将其表示为[R0] Place [R0],其中[R0]是 Place 的特殊角色类型表征。
Role-interactive Encoding:对于输入文档
D
=
{
w
1
,
w
2
,
…
,
w
N
}
D=\{ w_1,w_2,\dots,w_N\}
D={w1,w2,…,wN},目标事件
e
e
e和其对应的论元角色集合
R
e
=
{
r
1
,
r
2
,
r
3
,
…
}
\mathcal{R}_e =\{ r_1,r_2,r_3,\dots\}
Re={r1,r2,r3,…},我们将其连接成一个序列:
S
=
[
C
L
S
]
[
E
e
]
e
[
E
e
]
[
S
E
P
]
w
1
…
w
N
[
S
E
P
]
[
R
1
]
r
1
[
R
2
]
r
2
…
[
S
E
P
]
S =[CLS]\ [E_e]\ e\ [E_e]\ [SEP] \ w_1 \dots\ w_N \ [SEP]\ [R1] \ r_1 \ [R2]\ r_2 \dots [SEP]
S=[CLS] [Ee] e [Ee] [SEP] w1… wN [SEP] [R1] r1 [R2] r2…[SEP]
[
E
e
]
[E_e]
[Ee]是事件
e
e
e的特殊事件token,
[
R
1
]
,
[
R
2
]
[R1],[R2]
[R1],[R2]是角色类型
r
1
,
r
2
r_1,r_2
r1,r2的特殊token。最后的
[
S
E
P
]
[SEP]
[SEP]来表示无类别。接下来,我们利用预训练的语言模型作为编码器来获得每个token的嵌入,如下所示:
H
s
=
E
n
c
o
d
e
r
(
S
)
H^s=Encoder(S)
Hs=Encoder(S)
然后我们获取
[
E
e
]
[E_e]
[Ee]的事件嵌入
H
e
∈
R
1
×
d
H^e \in \mathbb{R}^{1 \times d}
He∈R1×d,上下文表示
H
w
∈
R
l
w
×
d
H^w \in \mathbb{R}^{l_w \times d}
Hw∈Rlw×d,角色表示
H
r
∈
R
l
r
×
d
H^r \in \mathbb{R}^{l_r \times d}
Hr∈Rlr×d,其中
l
w
l_w
lw是分词列表的长度,
l
r
l_r
lr是角色列表的长度。对于长度超过512的输入序列,我们利用动态窗口对整个序列进行编码,并对不同窗口的重叠token嵌入进行平均,以获得最终表示。
值得注意的是,通过角色交互编码,角色嵌入可以捕捉语义相关性并适应目标事件和上下文,从而更好地指导论元抽取。
Span-Trigger-based Contextual Pooling
Argument-impossible Spans Exclusion:为了消除无用跨度的噪声信息,我们通过排除一些有争议的不可能跨度来减少候选跨度的数量,例如在中间的跨度。有了这样的改进,我们平均减少了四分之一的候选跨度并使我们的模型关注具有有用信息的候选跨度。
Span-Trigger-based Contextual Pooling: 对于从 w i w_i wi到 w j w_j wj的候选跨度,大多数以前的基于跨度的方法通过该跨度内token的隐藏状态的平均池化来表示: 1 j − i + 1 ∑ k = i j h k w \frac{1}{j-i+1} \sum_{k=i}^j h_k^w j−i+11∑k=ijhkw,其中 h k w h_k^w hkw是从 H w H^w Hw嵌入的第 k k k个token。
然而,平均池化表示忽略了其他非论元词的重要线索信息。尽管预训练编码器的自注意机制可以对token级交互进行建模,但这种全局交互是特定于事件和候选论元的。因此,我们建议选择并融合与由候选跨度和事件触发词组成的每个元组高度相关的有用上下文信息,即 ( s i : j , t ) (s_{i:j},t) (si:j,t)。我们直接利用预训练的基于Transformer的编码器的注意力头进行基于跨度触发词的上下文池化,这将从预训练的语言模型中转移学习良好的依赖关系,而无需从头开始学习新的注意力层。
具体来说,我们在预训练的语言模型中使用来自最后一个Transformer的上下文的token级注意力头
A
w
∈
R
H
×
l
w
×
l
w
A^w∈\mathbb{R}^{H \times l_w \times l_w}
Aw∈RH×lw×lw。然后,我们可以通过平均池化获得从
w
i
w_i
wi到
w
j
w_j
wj的每个候选跨度的上下文注意力
A
i
:
j
C
∈
R
l
w
A^C_{i:j}∈\mathbb{R}^{l_w}
Ai:jC∈Rlw:
A
i
:
j
C
=
1
H
(
j
−
i
+
1
)
∑
h
=
1
H
∑
m
=
i
j
A
h
,
m
w
A_{i:j}^C=\frac{1}{H(j-i+1)} \sum_{h=1}^H \sum_{m=i}^j A_{h,m}^w
Ai:jC=H(j−i+1)1h=1∑Hm=i∑jAh,mw
然后,对于跨度触发词对
(
s
i
:
j
,
t
)
(s_{i:j},t)
(si:j,t),我们通过乘以注意力和归一化来获得对候选跨度重要的上下文线索信息
c
s
i
:
j
∈
R
d
c^{s_{i:j}}∈\mathbb{R}^d
csi:j∈Rd:
p
i
:
j
c
=
s
o
f
t
m
a
x
(
A
i
:
j
C
⋅
A
t
C
)
,
c
s
i
:
j
=
H
w
p
i
:
j
c
p_{i:j}^c=softmax(A_{i:j}^C \cdot A_t^C),\\ c^{s_{i:j}}=H^w p_{i:j}^c
pi:jc=softmax(Ai:jC⋅AtC),csi:j=Hwpi:jc
A
t
c
∈
R
l
w
A_t^c \in \mathbb{R}^{l_w}
Atc∈Rlw是触发词
t
t
t的上下文注意力,
p
i
:
j
c
∈
R
l
w
p_{i:j}^c \in \mathbb{R}^{l_w}
pi:jc∈Rlw是上下文的计算注意力权重向量。
Role-based Latent Information Guidance
RLIG模块通过角色交互编码构建潜在角色嵌入,并通过池化操作进行角色信息融合,为潜在角色信息提供有价值的指导。
Role Information Fusion:为了使每个候选论点都能得到有用的角色信息指导,我们修改了基于跨度触发词的上下文池化方法,以自适应地选择角色信息。通过上下文池化得到
s
i
:
j
s_{i:j}
si:j的潜在角色信息
r
s
i
:
j
∈
R
d
r^{s_{i:j}}\in \mathbb{R}^d
rsi:j∈Rd,
A
i
:
j
R
=
1
H
(
j
−
i
+
1
)
∑
h
=
1
H
∑
m
=
i
j
A
h
,
m
r
,
p
i
:
j
r
=
s
o
f
t
m
a
x
(
A
i
:
j
R
⋅
A
t
R
)
,
r
s
i
:
j
=
H
r
p
i
:
j
r
A_{i:j}^R=\frac{1}{H(j-i+1)} \sum_{h=1}^H \sum_{m=i}^j A_{h,m}^r,\\ p_{i:j}^r=softmax(A_{i:j}^R \cdot A_t^R),\\ r^{s_{i:j}}=H^r p_{i:j}^r
Ai:jR=H(j−i+1)1h=1∑Hm=i∑jAh,mr,pi:jr=softmax(Ai:jR⋅AtR),rsi:j=Hrpi:jr
A
r
∈
R
H
×
l
w
×
l
r
A^r \in \mathbb{R}^{H \times l_w \times l_r}
Ar∈RH×lw×lr是来自预训练语言模型中最后一个transformer层的角色的注意力。
A
i
:
j
R
∈
R
l
r
A^R_{i:j} \in \mathbb{R}^{l_r}
Ai:jR∈Rlr是每个候选跨度的角色注意力,
A
t
R
∈
R
l
r
A^R_t \in \mathbb{R}^{l_r}
AtR∈Rlr是触发词
t
t
t的角色注意力。
p
i
:
j
r
∈
R
l
r
p^r_{i:j} \in \mathbb{R}^{l_r}
pi:jr∈Rlr为角色的计算注意力权重向量。
对于候选跨度
s
i
:
j
s_{i:j}
si:j,我们如下融合平均池化表示、上下文线索信息
c
s
i
:
j
c^{s_{i:j}}
csi:j和潜在角色信息
r
s
i
:
j
r^{s_{i:j}}
rsi:j:
s
i
:
j
=
tanh
(
W
1
[
1
j
−
i
+
1
∑
k
=
i
j
h
k
w
;
c
s
i
:
j
;
r
s
i
:
j
]
)
s_{i:j}=\tanh (W_1 [\frac{1}{j-i+1} \sum_{k=i}^{j} h_k^w;c^{s_{i:j}};r^{s_{i:j}}])
si:j=tanh(W1[j−i+11k=i∑jhkw;csi:j;rsi:j])
W
1
∈
R
3
d
×
d
W_1 \in \mathbb{R}^{3d \times d}
W1∈R3d×d是可学习参数。
Classification Module
Boundary Loss:由于我们抽取跨度级别的论元,其边界可能是模糊的,因此我们使用全连接神经网络构建开始和结束表示,以增强候选跨度的表示:
H
s
t
a
r
t
=
W
s
t
a
r
t
H
s
H^{start}=W^{start}H^{s}
Hstart=WstartHs,
H
e
n
d
=
W
e
n
d
H
s
H^{end}=W^{end}H^s
Hend=WendHs,其中
H
s
H^s
Hs是输入序列
S
S
S的隐藏表示。在此基础上,我们通过将上下文和角色信息与基于跨度触发词的上下文池化集成来增强开始和结束表示,如下所示:
z
i
:
j
s
t
a
r
t
=
H
s
t
a
r
t
p
i
:
j
,
z
i
:
j
e
n
d
=
H
e
n
d
p
i
:
j
,
h
i
:
j
s
t
a
r
t
=
tanh
(
W
2
[
h
i
s
t
a
r
t
;
z
i
:
j
s
t
a
r
t
]
)
,
h
i
:
j
e
n
d
=
tanh
(
W
3
[
h
j
e
n
d
;
z
i
:
j
e
n
d
]
)
z_{i:j}^{start}=H^{start}p_{i:j},\\ z_{i:j}^{end}=H^{end}p_{i:j},\\ h_{i:j}^{start}=\tanh(W_2[h_i^{start};z_{i:j}^{start}]),\\ h_{i:j}^{end}=\tanh(W_3[h_j^{end};z_{i:j}^{end}])
zi:jstart=Hstartpi:j,zi:jend=Hendpi:j,hi:jstart=tanh(W2[histart;zi:jstart]),hi:jend=tanh(W3[hjend;zi:jend])
h
i
s
t
a
r
t
,
h
j
e
n
d
h_i^{start},h_j^{end}
histart,hjend是
H
s
t
a
r
t
,
H
e
n
d
H^{start},H^{end}
Hstart,Hend的第
i
,
j
i,j
i,j个向量。
W
2
,
W
3
∈
R
2
d
×
d
W_2,W_3 \in \mathbb{R}^{2d \times d}
W2,W3∈R2d×d是可学习参数,我们获得最终的候选片段表征
s
~
i
:
j
\tilde{s}_{i:j}
s~i:j:
s
~
i
:
j
=
W
s
[
h
i
:
j
s
t
a
r
t
;
s
i
:
j
;
h
i
:
j
e
n
d
]
\tilde{s}_{i:j} = W^s[h_{i:j}^{start};s_{i:j};h_{i:j}^{end}]
s~i:j=Ws[hi:jstart;si:j;hi:jend],
W
s
∈
R
3
d
×
d
W^s \in \mathbb{R}^{3d \times d}
Ws∈R3d×d是可学习参数。
最终的边界损失被定义去检测开始和结束位置:
L
b
=
∑
i
=
1
∣
D
∣
[
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
)
]
\mathcal{L}_b=\sum_{i=1}^{|\mathcal{D}|}[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)]
Lb=i=1∑∣D∣[yislogPis+(1−yis)log(1−Pis)+yielogPie+(1−yie)log(1−Pie)]
其中
y
i
s
y^s_i
yis和
y
i
e
y^e_i
yie表示标准标注,并且
P
i
s
=
s
i
g
m
o
i
d
(
W
4
h
i
s
t
a
r
t
)
P^s_i=sigmoid(W_4h^{start}_i)
Pis=sigmoid(W4histart)和
P
i
s
=
s
i
g
m
o
i
d
(
W
5
h
i
e
n
d
)
P^s_i=sigmoid(W_5h^{end}_i)
Pis=sigmoid(W5hiend)是单词
w
i
w_i
wi被预测为正确论元跨度的第一个或最后一个单词的概率。
Classification Loss:对于事件
e
e
e中的候选跨度
s
i
:
j
s_{i:j}
si:j,我们将跨度表示
s
~
i
:
j
\tilde{s}_{i:j}
s~i:j、触发词表示
h
t
h_t
ht、它们的绝对差
∣
h
t
−
s
~
i
:
j
∣
|h_t−\tilde{s}_{i:j}|
∣ht−s~i:j∣、逐元素乘法
h
t
⊙
s
~
i
:
j
h_t \odot \tilde{s}_{i:j}
ht⊙s~i:j,事件类型嵌入
H
e
H^e
He和跨度长度嵌入
E
l
e
n
E_{len}
Elen连接起来,并通过前馈网络获得候选跨度
s
i
:
j
s_{i:j}
si:j的预测
P
(
r
i
:
j
)
P(r_{i:j})
P(ri:j):
I
i
:
j
=
[
s
~
i
:
j
;
h
t
;
∣
h
t
−
s
~
i
:
j
∣
;
h
t
⊙
s
~
i
:
j
;
H
e
;
E
l
e
n
]
,
P
(
r
i
:
j
)
=
F
F
N
(
I
i
:
j
)
I_{i:j}=[\tilde{s}_{i:j};h_t;|h_t - \tilde{s}_{i:j}|;h_t \odot \tilde{s}_{i:j};H^e;E_{len}],\\ P(r_{i:j})=FFN(I_{i:j})
Ii:j=[s~i:j;ht;∣ht−s~i:j∣;ht⊙s~i:j;He;Elen],P(ri:j)=FFN(Ii:j)
考虑到大多数候选论点都是负样本和不平衡的角色分布,我们采用focal loss来使训练过程更多地关注有用的正样本,其中
α
α
α和
γ
γ
γ是超参数。
L
c
=
−
∑
i
=
1
∣
D
∣
∑
j
=
1
∣
D
∣
α
[
1
−
P
(
r
i
:
j
=
y
i
:
j
)
]
γ
⋅
log
P
(
r
i
:
j
=
y
i
:
j
)
\mathcal{L}_c=-\sum_{i=1}^{|\mathcal{D}|} \sum_{j=1}^{|\mathcal{D}|} \alpha [1-P(r_{i:j}=y_{i:j})]^{\gamma} \cdot \log P(r_{i:j}=y_{i:j})
Lc=−i=1∑∣D∣j=1∑∣D∣α[1−P(ri:j=yi:j)]γ⋅logP(ri:j=yi:j)
最后,训练损失被定义如下:
L
=
L
c
+
λ
L
b
\mathcal{L}=\mathcal{L}_c + \lambda \mathcal{L}_b
L=Lc+λLb
Experiments
Conclusion
在本文中,我们提出了一种新的用于文档级EAE的SCPRG框架,该框架主要由两个紧凑、有效且可移植的模块组成。具体来说,我们的STCP自适应地聚合了非论元线索词的信息,RLIG提供了包含角色之间语义相关性的潜在角色信息指导。实验结果表明,SCPRG的性能优于现有最先进的EAE模型和进一步的分析表明,我们的方法既有效又可解释。对于未来的工作,我们希望将SCPRG应用于更多的信息抽取任务,如关系抽取和多语言抽取,其中上下文信息发挥着重要作用。