文章目录
1 简介
论文题目:Adversarial Training for Weakly Supervised Event Detection
论文来源:NAACL 2019
论文链接:https://aclanthology.org/N19-1105.pdf
代码链接:https://github.com/thunlp/Adv-ED
1.1 动机
- 基于监督学习的事件检测方法,在应用中的一个瓶颈是需要人工标注的数据。
- 基于弱监督的方法,不可避免地遭受数据噪声
- 目前,基于弱监督的方法使用精心设计的预训练规则和不完全的知识库,来自动的获取数据。这样将导致自动标注的数据覆盖面不全和具有主体偏差。
1.2 创新
- 提出了一个基于触发词的潜在实例发现策略,基于一个假设:如果一个词在已知事件实例中充当触发词,全部提到这个词的实例也表达这个事件。
- 提出一个对抗训练机制,不仅可以从候选集中提取信息实例,而且可以在噪声环境下(如远程监督)提高事件检测模型的性能。
2 背景知识
目前信息提取方法通过在编码上添加简单的噪声扰动生成对抗实例,或者使用模型降噪数据,忽视了从原始数据中获取更多的训练实例。该论文的对抗方法从真实世界获取对抗例子,而不是生成假的噪声扰动。
3 方法
提出的弱监督事件抽取模型的框架如下图所示,整个框架包括三个模块,实例编码、对抗训练策略和它们对各种弱监督事件检测场景的适应性。
3.1 实例编码
给定一个实例 x = w 1 , . . , t , . . . , w n x={w_1,..,t,...,w_n} x=w1,..,t,...,wn包含n个单词和它的候选触发词t。使用CNN和BERT作为典型的编码器,编码给定的实例。
- CNN 实例x中全部单词的输入编码包括词编码和位置编码(编码到候选触发词的相对位置),得到隐藏向量的公式如下:
- BERT 实例x中全部单词的输入编码为word piece、segment编码和位置编码的和,得到隐藏向量的公式如下
因为候选触发词t将实例x分为两部分,对隐藏向量应用动态多池化操作以得到实例编码x,公式如下,其中 [ ⋅ ] j [·]_j [⋅]j为一个向量的第j个值,i为触发词t的位置。
3.2 对抗训练
如上面框架图所示,对抗策略包括一个辨别器和生成器。辨别器在数据集的每一个实例中检测事件触发词和定义事件类型。当给定一个噪声实例,辨别器被期望抵抗噪声和明确地指出这里没有触发词和事件。生成器是用来从不可信的数据集
U
U
U中选择实例,尽可能地迷惑辨别器。
每一个实例
x
∈
R
x{\in}R
x∈R是被假设明确地表达它的触发词标签t和事件类型e。每一个实例
x
∈
U
x{\in}U
x∈U在对抗训练阶段是被假设是不可信的。因此,设计辨别器判断一个给定的实例是否可以表示它标注的事件类型,致力于最大化条件概率
P
(
e
∣
x
,
t
)
,
x
∈
R
P(e|x,t),x{\in}R
P(e∣x,t),x∈R和
1
−
P
(
e
∣
x
,
t
)
,
x
∈
U
1-P(e|x,t),x{\in}U
1−P(e∣x,t),x∈U。生成器是被训练从U中选择最迷惑的实例,迷惑辨别器。训练的过程是一个对抗的min-max过程,公式如下。其中
P
R
P_R
PR是可信赖的数据分布,尽管
ϕ
D
和
ϕ
G
{\phi}_D和{\phi}_G
ϕD和ϕG是矛盾的,U中的噪声数据对
ϕ
D
和
ϕ
G
{\phi}_D和{\phi}_G
ϕD和ϕG均有负面影响,但是经过足够的训练,生成器和辨别器将达到平衡。
3.2.1 辨别器
每个实例x被表示为编码
x
x
x,实现编码器的公式如下,其中e为事件类型的编码
e
∈
ϵ
e{\in}{\epsilon}
e∈ϵ
辨别器将对在R中的实例分配高分数,同时不相信在U中的实例和标签。辨别器的优化函数如下:
3.2.2 生成器
生成器计算U中所有实例的迷惑分数,计算迷惑概率
P
U
P_U
PU如下:
作者认为辨别器对实例的计算分数越高,该实例越迷惑,因为它们更可能迷惑辨别器做一个错误的判断。因此,期望生成器更加关注最迷惑的实例。生成器的loss函数如下,其中
P
(
e
∣
x
,
t
)
P(e|x,t)
P(e∣x,t)由辨别器计算,
在U中可能有一些实例标注为NA,这些实例经常被错误地预测为一些其他事件。因此,使用全部可能的事件的平均值代替它的
P
(
e
∣
x
,
t
)
P(e|x,t)
P(e∣x,t),公式如下:
使用其他事件的平均值计算NA事件的原因:因为NA事件表示"不是事件",NA事件没有共性和一致的语义。这里的训练目标是最小化分类为正常类别的概率,因此只要求它们跟正常类别的数据表示相远即可,不要求NA数据之间互相相似。
3.2.3 训练和实现细节
因为在R和U中有大量的实例,计算
L
D
L_D
LD和
L
G
L_G
LG是耗时的,频繁遍历整个R和U的数据集也相应地变得困难。为了提高训练效率,通过近似基本的概率分布,取样R和U的子集,新的loss函数如下:
其中
R
~
\widetilde{R}
R
和
U
~
\widetilde{U}
U
分别为R和U的子集,
P
u
~
(
x
)
P_{\widetilde{u}}(x)
Pu
(x)的计算公式如下,
a
a
a为超参数,控制概率分布,以避免权重集中在某些特定实例上。
最后,全部的loss函数如下:
3.3 弱监督场景的适应
3.3.1 基于触发词的潜在实例发现
为了利用未标注的数据,提出了一个简单的基于触发词的潜在实例发现策略,从原始数据中自动的标注触发词和事件类型。这个策略基于一个启发式的假设:如果一个词在已知事件实例中充当触发词,在原始文本中全部提到这个词的其他实例是潜在实例,可能也表达这个事件。因为这个策略是限制性较小的,在没有人工设计的情况下,它可以高效的获得一个大规模的候选集。同时,这个候选集覆盖更多的实例和主体超过现存的策略。
3.3.2 半监督策略
- 首先使用小规模的标记数据预训练编码器和辨别器,让它们在一定程度上获得检测事件触发器和识别事件类型的能力。
- 基于实例发现策略,以标记数据的中的触发词作为启发式种子,构造一个大规模的潜在候选集。
- 使用预训练的编码器和辨别器在候选集的全部实例中自动地标注触发词和事件类型,以建立带噪声的大规模数据。
- 小规模的标记数据作为可信数据R,大规模的自动标注数据为不可信数据U,以对抗学习的方式同时优化编码器、辨别器和生成器。在该阶段,经过某些训练轮数,辨别器和生成器达到平衡,生成器推荐的不可靠集U中的实例和被鉴别器视为正确标记的实例,将从U调整为R。经过反复的对抗训练,可以识别有信息的实例和过滤U中的噪音数据,实现利用大规模的未标注数据来丰富小规模的标注数据。
3.3.3 远程监督策略
- 首先使用全部的自动标注数据预训练编码器和辨别器。
- 编码器和辨别器计算自动标注集中的全部实例的相信分数。设置阀值将全部的自动标注数据分为两部分,高于阀值的为可信集R,其他为不可信集U。
- 构建对抗学习,减少U中噪声的负面影响和加强辨别器更好地识别事件。
4 实验
在半监督和远程监督两种场景下评估模型。
4.1 远程监督
使用留出法(held-out evaluation将数据集D划分为两个互斥的集合,一个集合作为训练集,另外一个作为测试集)进行评测
- DMCNN(DMBERT)+ADV为论文提出的方法
- DMCNN(DMBERT)为baseline,不使用远程监督
- +MIL:使用多实例学习,减轻噪声问题。
- +NA:简单地将不可靠集中的实例视为带有标签NA的负实例。
注:在多示例学习中,训练集由一组具有分类标签的多示例包(bag)组成 ,每个多包(bag)含有若干个没有分类标签的示例(instance)。目的是通过对具有分类标签的多示例包的学习,建立多示例分类器,并将该分类器应用于未知多示例包的预测。
p-r曲线如下:
实验结果如下图:
4.2 半监督
在半监督场景下,使用ACE 2005作为数据集,在New York Times语料库中构建大规模的候选集。
- DMCNN和DMBERT使用原始的训练集训练。
- DMCNN+Boot和DMBERT+Boot使用扩充过的训练集训练。
实验结果如下图:
4.3 人工评估
寻找4名标注者,在新构建的数据集中随机选择150个实例,进行评测,结果如下图:
4.4 例子研究
如下图,可以发现提出的方法不仅可以从未标记的数据中找到与标记数据中的实例相似的新实例,而且可以发现新的触发器并扩展数据集的覆盖范围。
5 总结
- 利用对抗学习,提出一个高效的弱监督事件检测方法。
- 该方法可以降噪和提高远程监督事件抽取模型的性能,自动为半监督事件检测模型构建更丰富和精确的训练数据。