文档级别编码:实现对候选论元和句子编码进行max-pooling,然后经过第二个Transformer建模全部的句子和论元之间的关系(句子的编码中加入位置编码)。然后对
H
s
H^s
Hs进行max-pooling操作,在对每个事件类型进行二分类,进行事件类型分类。
多粒度解码:多粒度的编码器包括三个部分:事件编码器、角色编码器、事件-角色编码器。 在事件编码器中设置m为生成事件的数量(大于文档中的平均数量),其中
Q
e
v
e
n
t
Q^{event}
Qevent为事件query。
在角色编码器中设置n为角色类型的数量(大于文档中的平均数量),其中
Q
r
o
l
e
Q^{role}
Qrole为角色query。
在事件-角色编码器中,建模事件查询和论元查询的关系。
事件预测:使用下面公式过滤虚假的事件,进行二分类(非空,空)。
使用下面公式对论元进行分类(
N
a
′
+
1
N'_a+1
Na′+1分类),
得到m个事件
Y
^
=
(
Y
^
1
,
Y
^
2
,
.
.
.
.
,
Y
^
m
)
\widehat{Y} =(\widehat{Y}_1,\widehat{Y}_2,....,\widehat{Y}_m)
Y
=(Y
1,Y
2,....,Y
m),其中每个事件包含n个预测论元。
Y
^
i
=
(
P
i
1
,
P
i
2
,
.
.
.
,
P
i
n
)
\widehat{Y}_i=(P_i^1,P_i^2,...,P_i^n)
Y
i=(Pi1,Pi2,...,Pin)。
匹配loss函数:定义双向匹配的损失公式如下:
C
m
a
t
c
h
C_{match}
Cmatch公式如下,其中
j
u
d
g
e
i
judge_i
judgei为判断事件i是否为空,
则损失函数如下:
最终的损失函数如下(候选论元识别、事件类型分类):
3 实验
数据集为ChFinAnn,实验结果如下图:
在不同发散程度的论元情况下的实验结果:
单事件和多事件实验结果:
消融实验的实验效果:
不同解码层数的实验效果:
不同事件生成数量的实验效果:
这篇关于论文笔记 ACL 2021|Document-level Event Extraction via Parallel Prediction Networks的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!