【论文精读】COLING 2022 - DESED: Dialogue-based Explanation for Sentence-level Event Detection

【论文精读】COLING 2022 - DESED: Dialogue-based Explanation for Sentence-level Event Detection

【论文原文】:DESED: Dialogue-based Explanation for Sentence-level Event Detection

【作者信息】:Wei, Yinyi ,Liu, Shuaipeng ,Lv, Jianwei ,Xi, Xiangyu ,Yan, Hailei ,Ye, Wei ,Mo, Tong ,Yang, Fan ,Wan, Guanglu

论文:https://aclanthology.org/2022.coling-1.219.pdf
代码:https://github.com/ydongd/desed

博主关键词:对话解释,句子级事件检测

推荐论文PAIE论文解读

摘要

最近许多句子级事件检测的工作都集中在丰富句子语义上,例如通过多任务或基于提示的学习。尽管效果非常好,但这些方法通常依赖于标签广泛的人工标注,或者需要领域专业知识来设计复杂的模板和规则。本文提出了一种新的基于对话解释的句子语义检测方法。通过基于对话的事件解释,我们指的是通过一致的信息密集型对话来解释事件,原始事件描述作为开始的话语。我们提出了三种简单的对话生成方法,然后将其输出输入混合注意力机制来表征补充事件语义。在两个事件检测数据集上的大量实验结果验证了我们方法的有效性,并为基于对话的解释范式提供了有前景的研究机会。

1、简介

句子级事件检测在事件检测中起着主导作用,对各种下游NLP任务具有重要意义。然而,由于信息有限,通常很难在一句话中准确地检测事件。因此,以往的句子级事件检测方法大多是通过增强句子语义进行改进,主要可以分为两个类别。第一类主要涉及通过多任务学习利用其他信息提取任务(例如,命名实体识别和关系提取)(Wadden et al, 2019; Lin et al, 2020; Van Nguyen et al, 2021)。然而,这些工作高度依赖于特定于任务的注释,需要花费大量人力。另一个流行的研究方向是利用预训练语言模型(PLMs),例如,通过基于提示的学习(Gao et al, 2021; Lee et al, 2021; Li et al, 2022; Hsu et al, 2022)。基于MRC的方法,将任务视为机器阅读理解任务(Liu et al, 2020; Li et al, 2020; Du and Cardie, 2020),也可以被视为提示型学习的弱版本。这些方法中的一个常见瓶颈在于它们依赖于领域专业知识和人力来设计复杂的模板和规则。

为了更有效和高效地增强句子语义,本工作提出使用生成模型以对话的形式为句子生成上下文信息,对话由特定主题上不同角色之间的多个话语组成。

作为两个动机示例,图1显示了两个真实世界的对话。在第一个例子中User_1的话语中,模型很容易被arrestprotesting诱导,从而将fired识别为attack事件,但随后的话语则被视为一个解释,fired是一个End-Position事件。在第二个例子中,对话提供了多个事件之间自然联系的线索,包括用户的身体感受、食物质量和对餐馆的抱怨。基于这两个例子,我们推测出对话在丰富事件背景方面比普通叙事文本的两个主要优点。一方面,对话比原句更一致(参见章节4.5和4.6)。另一方面,每个话语都是一个独立的语义单元,不需要额外的分割,这对于GPT-2生成的纯文本来说是不平凡的。更重要的是,这些话语之间的交互为精炼基于对话的上下文提供了空间。在本文中,我们将生成的事件描述对话引用为基于对话的解释,并将我们的方法称为DESED:基于对话解释的句子级事件检测。

为了生成语义丰富的基于对话的解释,我们提出了三种方法基于预训练的对话GPTs(Radford et al, 2018, 2019):(1)在原始句子上直接生成;(2)在原始句子上生成提示符;(3)对同一领域的对话数据进行进一步训练后生成。这三种方法如图2所示。请注意,我们使用的提示非常简单,相同的提示可以用于不同事件和数据集的对话生成中。相比之下,前面提到的基于提示的方法需要重新设计模板和提示,需要跨不同领域的专业知识。

为了利用生成的媒介信息,我们提出了三种方法:(1)利用PLMs的自注意力机制进行token级注意;(2)带有话语门的话语级注意;(3)两者结合的混合注意。我们在ACE2005和另一个基于我们自己策划的真实数据的事件检测数据集上进行实验。实验表明,该方法比以往的多任务和基于提示的方法具有较好的性能。

我们的主要贡献包括:

  • 我们提出了基于对话的解释,这是一种新的范式,通过对特定事件生成一致的对话来丰富事件检测的句子语义。
  • 我们提出了三种概念上简单的方法来生成基于对话的解释,并设计混合(token级和话语级)注意机制,在两个数据集上展示竞争结果。
  • 我们的实验表明,与简单的叙事上下文相比,对话更符合原始句子,包含更丰富的事件检测上下文知识,并且在特定领域中适当的提示或对话数据可以指导预训练的模型生成更好的以事件为中心的对话。

2、相关工作

2.1 句子级事件抽取

为了从句子中识别触发词并将触发词分类为事件类型,传统的基于特征的方法在很大程度上依赖于手工设计特征(Ahn, 2006; McClosky et al, 2011)。随着深度学习的发展,神经网络在事件检测中得到了广泛的应用。神经网络最常见的用途是token分类,它用各种神经方法对每个token进行编码和分类(Chen et al, 2015; Nguyen et al, 2016; Sha et al, 2018)。此外,基于图的 (Liu et al, 2018; Yan et al, 2019),多任务(Wadden et al, 2019; Lin et al, 2020; Van Nguyen et al, 2021; Lu et al, 2022),基于MRC的(Liu et al, 2020; Li et al, 2020; Du and Cardie, 2020), Seq2Seq-based(sequence -to - sequence -based) (Lu et al, 2021; Hsu et al, 2022; Paolini et al, 2021)的方法也被引入到句子级事件检测中。

2.2 基于提示学习

基于提示的学习旨在激发PLM的知识,为下游任务服务(Schick和Schütze, 2021)。单向语言模型(如GPTs (Radford et al, 2018, 2019))、双向语言模型(如BERT (Kenton and Toutanova, 2019))和混合语言模型(如BART (Lewis et al, 2020))都可以用作骨干网络。通过检索训练集中类似的实例或添加标签的手动定义(Gao et al, 2021; Lee et al, 2021; Kumar and Talukdar, 2021),或通过将信息提取任务转换为槽填充任务(Lu et al, 2021; Hsu et al, 2022; Li et al, 2022),基于提示的学习使PLMs具有任务的先验知识,从而有助于最终的性能。

2.3 基于生成对话系统

基于生成的对话系统可以产生非常多样化的回应,不局限于现有的语料库(Chen et al, 2017)。基于生成的模型利用gpt (Radford et al, 2018,2019)和大量对话数据,可以在不同语言上取得优异的结果(Zhang et al, 2020;Wang et al, 2020)。

3、方法

3.1 任务定义

在本文中,我们将句子级事件检测作为使用BIO标记格式的序列标记任务。给定一个触发事件EventType的触发词。每个token都被标记为B-EventTypeI-EventTypeO,表示该token位于触发词token的开始、内部或外部。

形式上,将 S , Y , M S,Y,M S,Y,M表示为实例集、标签集和双向语言模型。对于一个句子实例 s ∈ S , s = ( s 0 , s 1 , … , s N s − 1 ) s∈S, s = (s_0, s_1,\ldots, s_{N_s−1}) sS,s=(s0,s1,,sNs1)。在一般设置中,表示 h = M ( s ) , h ∈ R N s × D h = M(s), h∈\mathbb{R}^{N_s×D} h=M(s),hRNs×D,其中 D D D M M M的隐藏大小。当采用BIO标签格式时,所有标签的集合为 E E E, E E E的总数为 ∣ E ∣ = 2 × ∣ Y ∣ + 1 |E| = 2 × |Y| + 1 E=2×Y+1。为了进行序列标记,引入权重矩阵 W ∈ R D × ∣ E ∣ W∈\mathbb{R}^{D \times |E|} WRD×E和偏置项 b ∈ R ∣ E ∣ b∈\mathbb{R}^{|E|} bRE,将每个token表示分类为 E E E中的一个标签,分类logits p = h W + b , p ∈ R N s × ∣ E ∣ p = hW + b, p∈\mathbb{R}^{N_s \times |E|} p=hW+b,pRNs×E。最终的标记结果 e = arg ⁡ max ⁡ ( p ) , e ∈ R N s e = \arg \max(p), e∈\mathbb{R}^{N_s} e=argmax(p),eRNs,其中 e i e_i ei s i s_i si的标记。优化目标设定为分类logits p p p与正确标注之间的交叉熵损失。

3.2 对话生成

一个预训连对话生成模型 G G G将被用于生成对话,对话生成的整体架构如图3所示。

3.2.1 直接生成

对于一个句子实例 s = ( s 0 , s 1 , … , s N s − 1 ) s=(s_0,s_1,\ldots,s_{N_s-1}) s=(s0,s1,,sNs1),目标是生成 N U N_U NU话语。首先将 s s s输入 G G G,得到话语 u 1 u^1 u1 u 1 = G ( s ) u^1 = G(s) u1=G(s)。然后将 s s s u 1 u^1 u1串联为对话历史,将对话历史输入 G G G,得到新的响应话语 u 2 u^2 u2, u 2 = G ( s + u 1 ) u^2 = G(s + u^1) u2=G(s+u1)。重复循环,直到得到 u N U u^{N_U} uNU,即 u N U = G ( s + u 1 + ⋅ ⋅ ⋅ + u N U − 1 ) u^{N_U} = G(s+u^1+···+u^{N_U−1}) uNU=G(s+u1+⋅⋅⋅+uNU1)

3.2.2 生成提示

为了使生成的对话更集中于特定的主题,我们建议在原句的末尾添加一个直接的提示符(例如:What event does the previous sentence describe?),即s = s +prompt。然后重复3.2.1中描述的过程,直到获得 N U N_U NU话语。

3.2.3 更长远的训练和生成

当为数据集提供对话数据时,可以根据该数据进行进一步的训练。对于包含 k k k个角色的对话数据,为了模拟不同角色的特征,对 k k k个不同的对话模型进行了针对角色的响应训练。在推理时,我们使用 k k k种不同的对话模型来生成不同角色的话语。图3的右侧显示了一个关于两个角色的对话生成示例。

3.3 开发对话信息

我们探索了不同的注意力机制在对话信息的序列标注。具体如图4所示。

3.3.1 token水平的注意力

通过使用双向语言模型 M M M同时编码原始句子和生成的话语的连接,我们可以利用自注意力机制和捕获 M M M中的长期依赖关系的能力。

给出一个句子实例 s s s和生成的语句 u 1 , … , u N U u^1,\ldots,u^{N_U} u1,,uNU中,我们使用 M M M的分隔符号(例如[SEP]代表BERT)来连接原句和所有的话语。因此,组合输入 c = s [ S E P ] u 1 [ S E P ] … [ S E P ] u N u c = s [SEP] u^1 [SEP]…[SEP] u^{N_u} c=s[SEP]u1[SEP][SEP]uNu。在通过将 c c c输入 M M M获得上下文表示之后,对应于s的token表示被分类器分类为特定的标记。

3.3.2 话语级别的注意力

由于 G G G的不确定性,生成的话语可能是杂乱无章的。直接结合和应用自注意力机制会给原句的表示带来噪声。因此,我们提出使用话语注意力机制和话语门来将对话信息整合到原句的表示中

给定一个句子实例 s s s和生成的话语 u 1 , … , u N U u^1,\ldots, u^{N_U} u1,,uNU,假设原句和所有话语的长度为 n n n,如图4(b)所示,将它们输入 M M M,可以得到 h = ( h 0 , h 1 , … , h N U ) h = (h^0, h^1,\ldots, h^{N_U}) h=(h0,h1,,hNU),其中 h 0 h^0 h0 s s s的表示; h j , j ≥ 1 h^j, j≥1 hj,j1表示 u j u^j uj。对于所有 h i , i ≥ 0 , h i ∈ R D h^i, i≥0,h^i∈\mathbb{R}^D hi,i0,hiRD

采用注意力机制,得到以[CLS]标记 h [ C L S ] i h^i_{[CLS]} h[CLS]i表示的对话状态 d d d,并学习到注意权重 α i α_i αi:
d = ∑ i = 0 N u α i h [ C L S ] i , d ∈ R D d=\sum_{i=0}^{N_u} \alpha_i h_{[CLS]}^{i},d \in \mathbb{R}^D d=i=0Nuαih[CLS]i,dRD

α i = exp ⁡ ( s i ) ∑ j = 0 N U exp ⁡ ( s j ) \alpha_i=\frac{\exp(s_i)}{\sum_{j=0}^{N_U} \exp (s_j)} αi=j=0NUexp(sj)exp(si)

s i = tanh ⁡ ( h [ C L S ] 0 ⋅ ( W a ⋅ ( h [ C L S ] i ) T + b a ) ) s_i=\tanh (h_{[CLS]}^0 \cdot ( W_a \cdot ( h_{[CLS]}^i)^T + b_a)) si=tanh(h[CLS]0(Wa(h[CLS]i)T+ba))

其中 W a W_a Wa b a b_a ba是前馈神经网络的权重矩阵和偏置项, s i s_i si是原始句子 s s s和生成的话语 u i u_i ui之间的相关性得分。

d d d是整个对话的语义抽象,我们进一步提出一个话语门,将 d d d融合成 s s s的符号表示。

对于原句的表示, h 0 = ( h 0 0 , h 1 0 , … , h n − 1 0 ) h^0 = (h^0_0, h^0_1,\ldots, h^0_{n−1}) h0=(h00,h10,,hn10),融合表示 p = ( p 0 , p 1 , … , p n − 1 ) p = (p_0, p_1,\ldots, p_{n−1}) p=(p0,p1,,pn1)的计算公式如下:
p i = h i 0 ∥ f i p_i=h_i^0 \parallel f_i pi=hi0fi

f i = θ i ∘ h i 0 + ( 1 − θ i ) ∘ d f_i=\theta_i \circ h_i^0 +(1-\theta_i) \circ d fi=θihi0+(1θi)d

θ i = s i g m o i d ( ( h i 0 ∥ d ) ⋅ W g + b g ) \theta_i=sigmoid((h_i^0 \parallel d) \cdot W_g + b_g) θi=sigmoid((hi0d)Wg+bg)

其中 ∥ ∥ 是两个向量的拼接符号, ◦ ◦ 表示标量乘法, W g W_g Wg b g b_g bg是前馈神经网络的权值矩阵和偏置项。 θ θ θ可以被看作是一个动态阈值,它决定了有多少对话信息需要被合并到token表示中。然后对 p p p进行分类器,得到最终的标注结果。

3.3.3 混合注意力

为了涵盖不同层次的注意,我们建议在token层和话语层同时使用注意力机制。为了得到token级注意的表示 h c h^c hc,将句子 c c c被送入 M M M中, h c = M ( c ) h^c=M(c) hc=M(c)。然后利用话语注意力机制和话语门计算对话状态 d d d,并将 d d d融合到 h c h^c hc中。最后对 s s s对应的融合表示进行token分类。

4、实验

**数据集:**ACE2005,FOSAED。

评估指标:Trig-I、Trig-C。

baseline:BILSTM-CRF,DMBERT,BERT,BERT_QA_TRIGGER,OneIE,FourIE,Text2Event,DEGREE,PILED,TANL,UIE。

实验结果

不同注意力机制对DESED的影响:

不同提示的影响

5、总结

在本文中,我们提出了一种新的基于对话的解释范式,来增强句子语义,并用于句子级事件检测。我们提出了三种概念简单的方法来为给定的原始句子生成对话,分别集中于随意对话、集中对话和特定领域的对话。为了有效地利用生成的对话,我们在不同的粒度级别上设计了混合注意力机制。大量的实验和分析表明,DESED在事件检测方面具有良好的性能。在未来,我们有兴趣以更可控的方式生成基于对话的解释,并将基于对话的解释扩展到其他任务。

【论文速递 | 精选】

论坛地址:https://bbs.csdn.net/forums/paper

最近工作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Trouble..

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值