AMR论文阅读之:ATP: AMRize Then Parse! Enhancing AMR Parsing with PseudoAMRs

文章目录

  • Abstract
  • Introduction
  • Methodology
    • Auxiliary Task selection
      • SRL
      • DP
    • AMRization
      • Tranform SRL to PseudoAMR
        • Connectivity Formation
        • Argument Reduction
        • Reentrancy Restoration
        • Dependency Guided Restoration
      • Transform Dependency Structure to PseudoAMR
        • Redundant Relation Removal
        • Token Lemmatization
      • Linearization
    • Training Paradiagm Selection
      • Multitask training
      • Intermediate training
      • Multitask & Intermediate training
  • Experiments
    • Dataset
    • Evaluation metrics
    • Experiment setups
      • Model setting
      • AMRization Setting
    • Main Results

  • 属于 AMR parsing 任务
  • 文章链接
  • 代码链接
  • 关于 AMR 不懂的部分(前驱知识)可以去看我的博客的分析

Abstract

  • 我们假设一些语义或者形式上相关的辅助任务与AMR parsing 任务共同进行训练可以获得更好的 AMR parsing 效果
  • 采用了两个辅助任务:
    • 语义角色标注(Semantic role labelling (SRL))
    • 依赖解析(Dependency Parsing) DP 任务
  • 由于 SRL 和 DP 任务的输出和 AMR 自身的结构存在较大差异,本文试图将 SRL 和 DP 任务的输出进行 AMR 化(AMRized),从而在 training 之前获得 伪-AMR(Pseudo-AMR)从而更加有助于 AMR parsing
  • 与多任务学习相比,中间任务学习(intermediate task leaning ITL)是在AMR解析中引入辅助任务的较好方法
  • 效果 state-of-the-art
  • 代码开源:https://github.com/PKUnlp-icler/ATP

Introduction

  • AMR 可以用在很多下游任务,比如: 信息提取,文本摘要,问答,对话建模等
    【information extraction (Rao et al., 2017; Wang et al., 2017; Zhang and Ji, 2021), text summarization, (Liao et al., 2018; Hardy and Vlachos, 2018) question answering (Mitra and Baral, 2016; Sachan and Xing, 2016) and dialogue modeling (Bonial et al., 2020)】

  • 最近 AMR 的发展是基于 seq2seq 的网络的,取得了很大成功

  • seq2seq 模型不需要复杂的数据处理工作,并且天然地适合采用 辅助任务训练 以及 预训练的 encoder-decoder的方法

  • 之前的工作 (Xu et al., 2020; Wu et al., 2021) 已经展示了 AMR parsing 任务可以用 co-training 和特定的辅助任务来提升

  • 然而现在采用 辅助任务 来提高 AMR 解析的任务存在这么几个问题,尚未弄清楚:

    • 如何选择 辅助的任务,目前尚未有一套标准,虽然很多工作取得了进展,但是对这一点还是避重就轻
    • 如何弥补 / 解决 不同任务的 gap:比如机器翻译任务和 DP 以及 SRL 任务差异很大,如果将他们共同作为辅助任务,可能会导致不好的结果
    • 如何将 辅助任务 更加高效地设计并完成:之前的操作都是结合多个 辅助任务 然后采用多模型学习策略 MTL(multi task leaning),但是我们认为 ITL 中间任务学习策略 才是更加高效的解决方案。我们的这个结论与 (Pruksachatkun et al., 2020; Poth et al., 2021) 是一致的
  • 为了解决上面的三个问题,我们的 method 设计了三个部分:

    • 辅助任务的选择:我们衡量不同的辅助任务与 AMR 任务的相似度(从语义和形式两个方面衡量相似度)最终选择了 SRL 和 DP 两个辅助任务
    • AMR化: 虽然 SRL 和 DP 任务非常接近 AMR,但是仍然需要做一些额外的处理,AMR 化的目的是让 SRL 和 DP 的特征尽可能地接近 AMR 训练时候用的 特征
      • 其中对待 SRL 我们采用 Reentrancy Restoration(重进入存储)的方法将 SRL 从树结构转换成 graph 结构,这样更加逼近 AMR 的结构
      • 通过删除冗余关系(Redundant Relation Removal)我们在依赖树(dependency tree)中进行转换,并删除AMR图中远离语义关系的 relation,用这样的方法完成 DP 任务的 AMR 化。
    • 训练范式的选择:选择 中间任务学习策略
  • 本文贡献:

    • 使用 SRL,DP 作为辅助任务来帮助 AMR 提升 parsing 效果
    • 提出 AMR化的方法将 SRL 和 DP 的特征更加逼近 AMR
    • 使用中间任务学习策略完成多个辅助任务的联合训练
  • 结果非常好,在 AMR2.0 上达到了 85.2 的match 分数,在 AMR3.0上达到了 83.9,目前是 state-of-the-art

Methodology

  • 我们将 Pseudo-amr 和 AMR 的任务都看做是 seq2seq 的生成任务,即给定一个句子 x = [ x i ] 1 ≤ i ≤ N x=[x_i]_{1\leq i \leq N} x=[xi]1iN,模型试图产生一个现行的 PseudoAMR或者 AMR graph y = [ y i ] 1 ≤ i ≤ M y=[y_i]_{1\leq i \leq M} y=[yi]1iM,通过下面描述的条件概率:
    AMR论文阅读之:ATP: AMRize Then Parse! Enhancing AMR Parsing with PseudoAMRs_第1张图片

Auxiliary Task selection

  • 从语义(semantically)和形式(formally)两个方面筛选,因此选择了 SRL 和 DP,也就是:我们的辅助训练任务 与 Translation 和 Summarization 作为辅助任务的情况进行了比较

SRL

  • SRL 的目的是恢复一个句子中的 predicate-argument (述词论元结构),可以提高 AMR parsing 任务的精度,原因如下:
    • AMR 的一个子任务就是恢复 predicate-argument,当然 AMR 包含的内容更加丰富一些,但是在恢复 predicate-argument 方面,这两个任务是重合的,所以通过训练 SRL 也可以促进 AMR 解析模型的训练效果。他们都针对一个中心的 predicate 来捕获与他相关的那些 arguments
    • SRL 和 AMR 分别可以看做浅层和深层语义解析任务。从这个角度看,浅层任务做好了可以促进深层任务的理解和效果也是符合常理的

DP

  • DP 的任务是把一个句子解析成 tree 的结构,从而代表不同的 token 之间的依赖关系(dependency relation)
  • DP 的知识对于 AMR parsing 有意义因为:
    • 从语言学上来说, DP 是 AMR 任务的前驱工作
    • DP任务中关注的 依赖关系 同样也与 AMR 任务中的 semantic relation 这个概念是相关的
    • DP 和 AMR 解析从 edge prediction 这个角度来看是很相似的任务,因为他们都需要捕一句话中不同 nodes(concepts / tokens) 之间的关系

AMRization

Tranform SRL to PseudoAMR

  • SRL 和 AMR 之间的 gap 存在于:
    • 连通性(Connectivity):AMR 是连通的 graph,SRL 是个 forest
    • 短语-概念的差距(Span-Concept Gap):AMR 中的每个 node 都表示成一个 concept,而 SRL 中是以 token span 的形式存在的
    • 重入性(Reentrancy):重入性是 AMR 一个很重要的性质,在图三中,AMR 中的 boy 被引用了两次,但是 SRL 中没有任何的重用
      AMR论文阅读之:ATP: AMRize Then Parse! Enhancing AMR Parsing with PseudoAMRs_第2张图片
  • 为了解决上述三点,采用了三个对应的解决方案:

Connectivity Formation

  • 将 SRL tree 转化成一个 graph。这种改造并不能保证在语义层面是正确的(图三 b1),首先添加一个虚拟的 root 节点,然后基于 root 生成directed edge(有向边)到 SRL 原本树结构中的每个 root 节点,因此 SRL 就变成了一个 graph 结构

Argument Reduction

  • 为了解决 SRL 中用 token span 而 AMR 中用concept 表示的差异,在图3 b2 中可以看到,如果对于一个核心的 predicate(图中的 leavewantthe boyto leave)这个 predicate 如果是一个拥有多于一个 token 的 span,就将这个 span 用它的 head token 来代替,例如 the boy -> boy; to leave -> leave 这样更接近 AMR 中的 concept 的表示方法

Reentrancy Restoration

  • 本文设计了一个启发式算法(基于 深度优先遍历 DFS)来保存 reentrancy。图三 b3 显示,这个做法的核心是:当这个基于 DFS 的启发式算法第一次遍历到某个 node 的时候就创建一个变量 variable,如果 DFS 再次遍历到这个 node ,那么当前这个 edge 的重点就直接变成第一次的变量 variable,这样就构造了多个 node 共同引用一个 node 的结构
  • 举个例子来说,看图三中的 b-2,假设深度优先是从 want 开始,那么遍历的顺序是 want->boy->leave 然后是 leave-01->boy 到这个 boy 的时候直接把这个边指向第一次的 boy 节点

Dependency Guided Restoration

  • 在上述的处理中,只能保证像 boy 这种词被重用,但是像 leaveleave-01 其实是一个东西,但是却出现了两次,没有进行重用,他们也应该被 merge 成一个 node

  • 但是这个操作不能简单的从 SRL 的 annotation 中继续进行,为了解决这个问题,我们又提出了一种新的方法,在图四中展示 AMR论文阅读之:ATP: AMRize Then Parse! Enhancing AMR Parsing with PseudoAMRs_第3张图片

  • 这个算法将之前的 Connectivity Formation 的结果作为输入,首先合并那些有相同 token 的叶子节点,这一步不会产生任何误差,因为 leaf-nodes 的合并不会产生误差,只是把相同的token 进行整合

  • 第二步是将那些重要的 predicate(谓词 / 述词)进行和并,比如 want , leave ,这一步会首先检查一个 predicate 是否在其他 span 的 argument 中出现过,并且是否这个 predicate 直接 depend on 其他 span 的 predicate,如果这两个条件都符合,那么算法将会将这个 predicate 和符合条件的那个 span 进行融合(图4 (3)中,因为 leave-01 出现在 to leave 这个 span 中,而且 leave 依赖于 the

  • 最终如果当前的结构在删除 root node 和 root-edges 之后依然连通的话,会删除 root node 和 root edges

Transform Dependency Structure to PseudoAMR

  • 上面一个部分讲解的是如何将 SRL 的任务的输出适配成 AMR 的形式
  • 这个部分是将如何将 DP 的任务的输出适配成 AMR 的形式
  • DP 的主要问题是:
    • Redundant Relation:一些 DP 任务中的关系更多地是语义层面(syntax)的表示,例如 “:PUNCT” 和 “:DET”,这些和 AMR 中表示的 relation 相去甚远
    • Token-Concept GAP: 这个是指 DP 中使用的最基本单位是 token,但是在 AMR 中是 concept,concept 表示的意义更加的 syntax-independent(也就是 concept 与语义无关)
  • 为了解决这两个部分的问题,本文采用了 redundant relation removal 和 token lemmatization 来处理

Redundant Relation Removal

  • 首先移除那些与 AMR 的表示体系相差太大的 DP 中的元素,例如 “:PUNCT” 和 “:DET”。图3 c-1 中表示了这个操作,通过移除这些内容,解析的结果与原来的 DP tree 结构相比更加紧凑,迫使模型在进行 seq2seq 训练的时候忽略掉那些与语义不相关的 tokens

Token Lemmatization

  • 在图 3c-2 中展示了这个操作,通过将 DP tree 进行词元化我们发现,单个词的词缀不会影响到它相关的 concept。结合 Bevilacqua 等人提出的 smart-initialization,通过将concept token 的 embedding 设置成子词的均值(average of the subword constituents),这个 want 的 embedding 向量更加接近于 concept(want-01) 的 embedding matrix,因此,需要模型在执行DP任务时捕捉更深层次的语义。

Linearization

  • 经过对 SRL 和 DP 的 AMRization 的步骤,SRL 和 DP 的图结构已经形成,在进行 seq2seq 的训练以前,还需要进行线性化,按照 Bevilacqua 提出的线性化方式,通过 DFS 遍历的方式构建线性的 token 序列,通过 < R 0 > , < R 1 > , . . . . , < R k > , ,...., <R0>,<R1>,....,<Rk> 来表示不同的 variables,括号用来标记深度,这是最好的线性化方式。

Training Paradiagm Selection

  • 我们探究了两种不同的训练范式:
    • 多任务训练范式
    • 中间任务训练范式

Multitask training

  • 在序列对序列的多任务训练中使用经典模式,在输入句的开头添加特殊的任务标签,并同时训练所有任务
  • 最佳模型的验证只在AMR解析子任务上进行

Intermediate training

  • 首先 fine-tune 一个在 intermediate task 上预训练的模型(PseudoAMR parsing),然后在同样的参数条件下微调 target 的 AMR parsing 任务
  • 也就是说,先用 SRL 和 DP 的任务做预训练模型,然后用这个预训练模型来微调 AMR parsing 任务的模型

Multitask & Intermediate training

  • 首先先用 multitask training,然后再 AMR parsing 任务上进行微调,这里的预训练模型就不只是 PseudoAMR parsing 的任务了,而是 PseudoAMR + AMR paring 模型,然后微调 target 的 AMR parsing 任务

Experiments

Dataset

  • 在 AMR2.0 的数据集上和 AMR3.0 的数据集上进行实验

    • AMR2.0 包含 36521 training, 1368 validation, 1371 testing
    • AMR3.0 包含 55635 training, 1722 validation,1898 testing
  • 我们还在一些其他的分布不同的数据中进行了实验(BIO, TLP, News3),这些数据集的数据量都很小

Evaluation metrics

  • 首选 Smatch score,然后采用 break down score
  • 为了探究辅助任务到底帮助 AMR 进行了何种提升,我们将 fine-grained score 分成了两个大类:
    • concept-related:包括 Concept, NER和 Negation score,这些指标更加关注于 concept 为主的预测结果
    • topology-related:包括 Unlabeled, Reentrancy 和 SRL score,这些更注重 relation 的预测结果
    • NoWSD和Wikification被列为独立评测的分数,因为NoWSD与Smatch分数高度相关,Wikification依赖于外部实体链接系统

Experiment setups

Model setting

  • 采用 SPRING model(seq2seq 训练 AMR parsing 的 state-of-the-art)作为 baseline
  • 将 BART-LARGE 模型作为预训练模型
  • 我们采用 (Bevilac- qua et al., 2021) 这篇文章中所有的 postprocessing 方法来获得 token sequence

AMRization Setting

  • 对于SRL, 我们使用了四种不同的 AMRization setting 方式:

    • Trivial——对于 SRL tree,我们用 concept :multi-sentence 和 relation :snt 来表示虚拟的 rootedges
    • With argument reduction. 使用斯坦福大学提供的 CoreNLP toolkit 中的 dependency parser来做 argument reduction
    • With reentrancy Restoration
    • ALL techniques
  • 对于 DP, 采取 4 种不同的 AMRization settings:

    • Trivial:讲 DP tree 中的额外的 relation 都加入到 BART 的 vocabulary 中
    • With lemmatization:使用 NLTK 来执行 token 的 lemmatization
    • With Redundant Relation Removal:将 PUNCT, DET, MARK 和 ROOT relation 都删掉
    • 结合所有的技术(all techniques)

Main Results

  • 当采用 ITL 训练范式 + 所有的 AMRization 方法之后,达到了最好的结果。
  • 与 SPRINT(之前最好的结果,采用了200k 的额外训练数据)相比,我们采用的extra data 要少很多,只用了 40k 的额外数据就超过了他们的结果
  • 结果表明,我们的集成模型以更少的额外数据击败了对手,达到了更高的性能
  • 即使不采用集成模型,我们的模型依然表现的比那些 集成模型好,并且使用 Dependency guided restoration 的方法达到了比 trivial 更好的精度表现,体现了方法的有效性

你可能感兴趣的:(论文阅读与代码复现,论文阅读)