2019 ACL《细粒度时序关系抽取》(Fine-Grained Temporal Relation Extraction) 的阅读笔记
一、问题
事件时序关系抽取是一个很有意义的研究方向,该领域目前的工作还是将其视为一个分类问题,标注成对的事件表达和时间表达,并进行时序关系分类。这种方法的缺点是时间表达往往依赖于显式存在的持续时间信息,但是,几乎所有的时间持续信息都可以不直接存在于句中。所以在这种方法下,一般只能对可以被识别的时间持续信息进行编码。
这篇文章中,作者开发了一种新型的框架将事件持续时间放在时序关系表示的首部或中部,将事件映射射到可能的持续时间上,并将事件对直接映射到实际值的相对应时间线。在这种做法下,不仅提升了事件持续时间在判断时序关系时的重要性,同时也帮助我们更好的判断在一整段文字下的多个复杂事件的时序结构。
二、方案
1.数据收集
作者收集了 Universal Decompositional Semantics Time(UDS-T)数据集,该数据集在 Universal Dependents English Web Treebank(UD-EWT)之上标注。
具体数据标注步骤如下:
- 作者首先使用 Predpatt 从 UD-EWT 中提取谓词
- 将其中相邻句子连接起来
- 给标注者两个连续的句子,并带有两个突出显示的事件引用表达式(谓词),要求标注者做到以下三点:
- 为突出显示的谓词所指的事件对提供有界刻度的相对时间线
- 从以下列表中得出谓词所指事件的可能持续时间: instantaneous, seconds, minutes, hours, days, weeks, months, years, decades, centuries, forever
- 标注者须对其上述两点标注行为作出打分(0-4,分数越高代表越有信心)
- 对标注者做出的标注进行归一化(Normalization)如图 3 所示,先发生事件 e 1 e_1 e1 的开始在 0 一端,后发生事件 e 2 e_2 e2的结束在 1 一端。
作者将每对事件对滑块(silder)定义为四个维度
(1)先后顺序(PRIORITY),当 e1 早于 e2 开始和/或结束时为正,否则为负;
(2)包含量(CONTAINMENT),当 e1 含有更多的 e2 时越大;
(3)相等性(EQUALITY),当 e1和 e2 的时间范围相同时,相等性最大,当它们最不相等时最小;
(4)SHIFT,即事件在时间轴上向前或向后移动。
并通过以下这个方程中 R \mathbf R R 的解得出这四个维度
R [ − 1 − 1 1 1 − 1 1 1 − 1 − 1 1 − 1 1 1 1 1 1 ] = 2 S − 1 \mathbf R \begin{bmatrix}-1&-1&1&1\\-1&1&1&-1\\-1&1&-1&1\\1&1&1&1\end{bmatrix} = 2\mathbf S -1 R⎣⎢⎢⎡−1−1−11−111111−111−111⎦⎥⎥⎤=2S−1
S = [ b e g ( e 1 ) e n d ( e 1 ) b e g ( e 2 ) e n d ( e 2 ) ] \mathbf S = \begin{bmatrix}beg(e_1)&end(e_1)&beg(e_2)&end(e_2)\end{bmatrix} S=[beg(e1)end(e1)beg(e2)end(e2)]
S \mathbf S S 中的元素由归一化后的标注数据决定,即 S ∈ [ 0 , 1 ] N ∗ 4 \mathbf S \in [0,1]^{N*4} S∈[0,1]N∗4 , N N N 为事件对数目。
为帮助理解求出了上述给定矩阵的逆矩阵:
[ − 0.25 − 0.25 − 0.25 0.25 − 0.25 0.25 0.25 0.25 0.25 0.25 − 0.25 0.25 0.25 − 0.25 0.25 0.25 ] \begin{bmatrix}-0.25&-0.25&-0.25&0.25\\-0.25&0.25&0.25&0.25\\0.25&0.25&-0.25&0.25\\0.25&-0.25&0.25&0.25\end{bmatrix} ⎣⎢⎢⎡−0.25−0.250.250.25−0.250.250.25−0.25−0.250.25−0.250.250.250.250.250.25⎦⎥⎥⎤
作者最终收集的数据分布如图:
2.模型
作者的想法是:对于句子中提到的每一对事件,共同预测这些事件的相对时间线以及它们的持续时间,然后使用一个单独的模型从相对时间轴中归纳出整篇文章的时间线。
Tuner 是一个降维器,把 ELMo 降到 256 维。
相对时间线(Relative timelines)
相对时间线模型包含三个组件:事件模型(Event model)、持续时长模型(Duration model)、关系模型(Relation model)。
这些组件在 H ∈ R N × D \mathbf H \in \R^{N\times D} H∈RN×D 这个 embedding 上使用多层点积注意力机制(dot-product attention)。
H = tanh ( E L M o ( s ) W T U N E + b T U N E ) \mathbf H = \tanh(\mathrm{ELMo}(\mathbf s)\mathbf W^{\mathrm{TUNE}}+\mathbf b^\mathrm{TUNE}) H=tanh(ELMo(s)WTUNE+bTUNE)
其中
s = [ w 1 , . . . , w N ] \mathbf s = [w_1,...,w_N] s=[w1,...,wN] 代表一个句子,这个句子会经由 ELMo 产生三个 M 维上下文 embedding,并进行串联。
D D D 代表 tuned embedding 的维数, W T U N E ∈ R 3 M × D \mathbf W^{\mathrm{TUNE}}\in \R^{3M\times D} WTUNE∈R3M×D , b T U N E ∈ R N × D \mathbf b^\mathrm{TUNE}\in\R^{N\times D} bTUNE∈RN×D
事件模型(Event model)
定义 g p r e d k ∈ R D \mathbf {g}_{\mathrm{pred}_k} \in \R^D gpredk∈RD 表示谓词 k k k 所指代的事件,使用点积注意力机制(dot-product attention)的变体建立。
a p r e d k S P A N = t a n h ( A P R E D S P A N h R O O T ( p r e d k ) + b P R E D S P A N ) \mathrm {\mathbf a^{SPAN}_{pred_k}=tanh(\mathbf A^{SPAN}_{PRED}\mathbf h_{ROOT(pred_k)}+\mathbf b^{SPAN}_{PRED})} apredkSPAN=tanh(APREDSPANhROOT(predk)+bPREDSPAN)
α p r e d k = s o f t m a x ( H s p a n ( p r e