开放性事件抽取下游任务-事件预测
目录
前言
开放性事件抽取作为自然语言处理领域的一大重要技术手段,对应许多重要下游任务,例如本文重点讲述的事件预测,即利用已知事件预测未知事件。
一、脚本事件预测
1、任务描述
脚本事件预测这个任务最早是由Chambers andJurafsky于2008年提出来的,要求给定一个事件的上下文 (context),需要从候选列表中选出接下来最可能要发生的事件。
例如:已知发生事件(enter, order, server),在候选列表{eat,talk,…}中,后续更有可能发生eat,因此得出预测事件为eat。
2、目前主流方法
2.1根据事件链构建图谱
2.1.1输入输出
输入:事件图, G = ( V , E ) G = (V,E) G=(V,E)
- V = ( v 1 , v 2 , . . . , v n ) V = (v_1, v_2, ...,v_n) V=(v1,v2,...,vn), v i v_i vi表示事件 i i i,用四元组 ( p , ( a 0 , a 1 , a 2 ) ) (p,(a_0,a_1,a_2)) (p,(a0,a1,a2)), 其中,p 表示谓语动词, a 0 , a 1 , a 2 a_0, a_1,a_2 a0,a1,a2 分别表示谓语动词的主语、直接宾语、间接宾语
- E = ( l 1 , l 2 , . . . , l m ) E=(l_1,l_2,...,l_m) E=(l1,l2,...,lm),其中, l j l_j lj表示某两事件之间的关系
2.1.2模型
采用缩放图神经网络SGNN,借鉴了分而治之的思想,即我们不将整个图输入 GGNN。 相反,对于每个训练实例,只有一个带有上下文和候选事件节点的子图被馈送到其中。
网络结构:表示层,GGNN,相关性计算
2.2集成事件级信息与脚本级信息
2.2.1输入输出
输入:事件
e
=
<
v
,
a
0
,
a
1
,
a
2
,
t
>
e = <v, a_0, a_1, a_2, t>
e=<v,a0,a1,a2,t>,其中v是动词,
a
0
,
a
1
,
a
2
a_0,a_1,a_2
a0,a1,a2分别是主语,直接宾语和间接宾语,t是描述事件e的文本。
输出:给定事件候选集
S
=
(
e
c
0
,
e
c
1
,
.
.
.
,
e
c
m
−
1
)
S = (e_{c0}, e_{c1}, ..., e_{cm−1})
S=(ec0,ec1,...,ecm−1),历史事件集(已经发生过的事件)
H
=
(
e
0
,
e
1
,
.
.
.
)
H = (e_0, e_1, ...)
H=(e0,e1,...),从候选集中选出未来最有可能发生的事件。
2.2.2模型
提出了 MCPredictor 模型来整合事件级信息和脚本级信息以进行脚本事件预测。 它从原始文本中引入丰富的信息以增强事件级信息,并通过聚合多个叙事事件链对后续事件的影响来学习脚本级信息。
模型结构:(1) 事件编码,(2) 文本编码,(3) 链建模,(4) 打分器
可以深入研究的点:
事件级信息是直接依靠分析文本来获取的,有没有可能将一些希望获取的事件要素直接显示的建模然后获取事件信息。(更细粒度的事件要素)
二、事件序列预测
1、任务描述
预测给定目标的事件序列,目前现有的方法将该任务建模为统计归纳问题,通过探索给定目标与已知事件序列之间的相似性来预测事件序列。 后续为了预测更多不同的事件,将事件序列预测问题重新表述为序列生成问题。
例如:给定目标Buy a mobile phone,期望预测一个事件序列,包括四个事件确定品牌、确定价格范围、选择品牌系列和支付账单。
2、目前主流模型与方法
2.1类比过程结构归纳
2.1.1输入输出
输入:
P
=
(
v
e
r
b
,
a
r
g
u
m
e
n
t
)
,
G
=
(
G
v
e
r
b
,
G
a
r
g
u
m
e
n
t
)
P=(verb,argument), G=(G_{verb},G_{argument})
P=(verb,argument),G=(Gverb,Gargument)
其中,P为目标事件,
G
v
e
r
b
G_{verb}
Gverb为包含verb的已知子事件序列,
G
a
r
g
u
m
e
n
t
G_{argument}
Gargument为包含argument的已知子事件序列
2.1.2模型
给定目标进程 P,我们首先通过对共享谓词或参数的进程进行分组,将其语义分解为两个维度(即谓词和参数)。 对于每个这样的流程组,我们然后利用观察到的流程图 G 为其子事件序列生成抽象和概率表示。 在最后一步中,我们将它们与实例化模块合并以生成 P 的子事件序列。
2.1.3缺陷
- 预测的事件种类有限,预测的事件序列中的事件与已知事件序列中的事件相似,或者粗略地说,是这些已知事件之间的不同组合。 因此,该方法预测的事件类型有限。
- 忽略了丰富的外部事件知识
2.2基于生成模型
2.2.1输入输出
给定一个目标G,事件序列预测任务需要预测一个符合目标的事件序列(e1, e2, …, ei, …, en),其中ei是预测的第i个事件。 这里目标G和事件ei都主要由一个动词和一个宾语组成。
2.2.2模型
我们首先将事件序列预测重新表述为事件序列生成,以解决生成事件类型有限的问题。 其次,我们针对忽略外部事件知识的问题提出了一个三阶段生成模型。 如图 2 所示,我们的模型包括三个步骤,1) 增强:首先我们使用外部事件知识库设计两个预训练任务,然后用这两个任务训练生成模型。 2)检索:其次,我们通过给定的目标从现有事件序列中匹配几个相似的事件序列,然后训练一个评分模型来选择最相似的事件序列。 3)生成:最后,我们将给定的目标和检索到的最相似的事件序列输入到生成模型中,以生成满足给定目标的事件序列。
三、常用数据集
- Gigaword语料库中的NYT部分
- WikiHow 流程图
四、相关论文
论文标题 | 年限 | 关键词 |
---|---|---|
Constructing Narrative Event Evolutionary Graph for Script Event Prediction | 2018 | 事件预测,事理图结构,大规模图神经网络 |
Analogous Process Structure Induction for Sub-event Sequence Prediction | 2020 | 为看不见过程的事件生成有意义的子事件序列,类比过程结构归纳,概念化 |
Augmentation, Retrieval, Generation: Event Sequence Prediction with a Three-Stage Sequence-to-Sequence Approach | 2022 | 序列生成问题,预测更多事件种类,外部事件的丰富知识,增强、检索和生成的三阶段模型 |
Integrating Deep Event-Level and Script-Level Information for Script Event Prediction | 2021 | 事件级信息和脚本级信息,基于 Transformer 的模型 |