论文阅读——A Simple and Effective Approach to Automatic Post-Editing with Transfer Learning

https://www.aclweb.org/anthology/P19-1292.pdf

一个简单有效的迁移学习自动后编辑方法

Github:https://github.com/deep-spin/OpenNMT-APE

 

Abstract

自动后编辑(APE)旨在通过人工后编辑数据来自动改进黑盒机器翻译系统的输出,APE系统的训练通常使用人工后编辑数据与反向翻译生成的大量数据进行,这是一个耗时的过程,通常并不比从头训练 MT 系统容易。本文提出了另一种方法,即微调 APE 系统编/解码器的预训练 BERT 模型,并探索几种参数共享策略。在单个 GPU 上对23K个句子的数据集进行3小时的训练,得到的结果与用5M个人工句子训练的系统相当,加入这些人工数据后,可以得到最先进的结果。

 

1 Introduction

自动后编辑(APE; Simard et al., 2007)的目标是自动纠正黑盒机器翻译 MT 系统产生的错误。APE 对快速定制 MT 特别有吸引力,可避免从零开始训练新系统。常见的 APE 数据三元组包括源句 src、机器翻译输出 mt 和人工后编辑 pe。由于 pe 通常较少,现有的 APE 系统通常通过生成人工三元组来克服这一问题(Junczys-Dowmunt and Grundkiewicz, 2016; Negri et al., 2018),然而这就需要高质量的 MT 系统,类似或优于正在使用的黑盒 MT 系统。这个战利品的动机猿代替大规模太训练首先:训练 MT 系统为了提取这些人工三元组的时间,加上使用生成的大数据集训练 APE 系统的时间,很可能超过从头开始训练 MT 系统的时间。

NLP 中有很多成功的迁移学习模型:如 CoVe(McCann et al., 2017),ELMo(Peters et al., 2018),OpenAI GPT(Radford et al., 2018),ULMFiT(Howard and Ruder, 2018),BERT(Devlin et al., 2019),通过训练大型模型获得强大的表征能力,用于提高句子级和词级任务的性能。然而,像 APE 这样的语言生成任务引入了额外的挑战。

本文使用预训练 BERT 模型,证明迁移学习对 APE 是一种有效且省时的策略,虽然大型模型如 BERT 的训练成本很高,但这一步只需做一次,涵盖多种语言,极大地减少了工程工作。这与创建人工三元组所需的计算和时间资源形成了鲜明对比——需要为每个语言对分别创建三元组并训练一个 APE 系统。

现有的 APE 系统在没有额外数据的情况下难以超过 MT 基准(即不进行 MT 修正),使用小的共享任务数据集(23K个三元组),迁移策略比 WMT 2018 En-De APE 共享任务基准−4.9 TER, +7.4 BLEU,添加人工 eSCAPE 数据集(Negri et al., 2018)后可以获得17.15 的 TER——新的 sota 。

论文贡献:

• 将 BERT 处理输入句子对的能力与预训练的多语言模型结合,以便在跨语言编码器中使用 src 和 mt,该编码器以多语言句子对作为输入。

• 在语言生成任务中微调预训练 BERT 模型作为解码器。

• 对 APE 系统中耦合 BERT 模型的不同方法进行评估:参数共享、初始化及微调。

 

2 Automatic Post-Editing with BERT

2.1 Automatic Post-Editing

APE (Simard et al., 2007) 的灵感来自于人工后编辑,即译者纠正 MT 系统所犯的错误。APE系统使用三元组(src、mt、pe)训练。

Artificial triplets. 由于缺乏可用的数据,大多数研究都需要创造人工三元组,如“往返”翻译 (Junczys-Dowmunt Grundkiewicz, 2016) 或使用并行数据,如 eSCAPE 语料库 Negri et al. (2018),8M 个合成三元组。

Dual-Source Transformer. 现有的 sota APE 使用 Transformer,两个编码器 src、mt,一个解码器 pe (Junczys-Dowmunt and Grundkiewicz, 2018; Tebbifakhr et al., 2018)。将人工后编辑和人工三元组数据合并,可以极大地超过 MT 基准。

使用迁移学习,即使没有任何辅助的合成数据集,在很大程度上优于基准,与人工数据集结合后,可以取得最先进的结果。

 

2.2 BERT as a Cross-Lingual Encoder

迁移学习方法基于在104种语言上联合预训练的多语 BERT 模型,编码器(一个)对 APE 的双语输入 (src, mt) 进行编码,并使用 segment 嵌入来区分语言。在嵌入 mt 时重置位置嵌入,因为它不是 src 的延续。

 

2.3 BERT as a Decoder

之前的工作已经在编码器中引入了预训练模型,但解码器中没有。由于模型不能查看尚未生成的单词,如何学习解码特定的块是一个有待解决的问题,而这在预训练模型中是不存在的。

在解码器中使用BERT,实验不同的策略初始化和共享自注意和上下文注意力层以及位置前馈层。将编码器和解码器嵌入权重(词、位置和段)与解码器输出层(词嵌入层的转置)绑在一起,对相同语言的目标句(pe)和编码器中的第二句(mt)使用相同的段嵌入,模型结构如图1所示:

实验如下将 BERT 预训练模型耦合到解码器的策略:

• Transformer. 没有任何共享参数,随机初始化 BERT_BASE 权重。

• Pre-trained BERT. 预训练的 BERT 作为解码器,随机初始化上下文注意力 CA 层,与原始 BERT 只对句子编码不同的是,给自注意增加 mask 以防止模型查看 pe 后面的词。

• BERT initialized context attention. 用 BERT 自注意层的权值初始化对应的上下文注意力层,而不是随机初始化。

• Shared self-attention. 训练时将编码器和解码器中的自注意 SA 绑在一起,而不是仅进行同样的初始化。

• Context attention shared with self-attention. 进一步将 CA 和 SA 权重绑在一起——使编码器和解码器中的所有注意变换矩阵(自注意和上下文)绑在一起。

• Shared feed-forward. 将编码器和解码器之间的前馈权值 FF 绑定在一起。

 

3 Experiments

模型是在 OpenNMT-py (Klein et al., 2017) 的分支上实现的,Pytorch 版的 BERT。

Datasets. WMT 2018 APE 共享任务(英德 SMT)的数据,该任务包括23,000个用于训练的三元组,1000个用于验证,2000个用于测试;还使用了约800万句的 eSCAPE语料库;上采样共享任务数据35倍,即最终训练数据的10%。使用 WordPiece 分割单词,使用的词汇表与多语 BERT 相同。训练时,去掉 src 和 mt 组合中200+词的三元组,或者 pe 中100+词的三元组;验证时使用 TER 和 BLEU。

Training Details. 三角形学习率的 Adam,在前5000步线性增长到5×10^−5,之后线性衰减。当使用 BERT 时,l2 decay 0.01;所有层 p_drop = 0.1,标签平滑 epsilon = 0.1。小数据实验时,bsz = 1024个词,每1000步保存ckpt (指数移动平均策略 Junczys-Dowmunt et al., 2018,decay 10^-4);使用 eSCAPE 时,bsz = 2048个词,每10000步保存ckpt。测试时选择验证集上的最佳模型,beam size 为8、平均长度惩罚的集束搜索。

Initialization and Parameter Sharing. 表1比较了不同解码策略。通过编码器和解码器之间共享 SA(编/解码器的输入 mt/pe 的语言相同),以及与 SA 权重相同的 CA 初始化(但不共享),可以获得最佳结果;另一方面,使用 BERT 的 SA 权值初始化 CA 对于获得解码器中 BERT 表征的好处是至关重要的——否则,与 Transformer decoder 相比使用 BERT 会降低性能,这可能是由于 CA 和 SA 共享相同的结构(多头注意),因此 CA 受益于预训练 BERT 的更好的权值初始化;共享前馈权值没有观察到任何好处。

Final Results. 表2为 WMT 2016-18 测试集结果,包含单个和4个独立模型集成的结果。模型 BERT Enc. + BERT Dec. 对应表1中的最佳设置,BERT Enc. + Transformer Dec. 只在编码器中使用 BERT。仅使用小型共享任务数据集 23K三元组,单个 BERT Enc. + BERT Dec. 模型大大超过了 MT 基准(−4.90 TER in test 2018),已知的唯一能够在只有共享任务数据的情况下超越基准的系统是 Berard et al., (2017),模型也超越了它(−4.05 TER in test 2017)。模型只需要训练大约 3 GPU-hours,而且数据集要小得多,其性能可以与最好的 WMT 2018 的集成系统相媲美,该系统的人工数据集为5M三元组(+0.02 TER in test 2016),但训练成本要高得多。4个模型集成,8M三元组的训练结果与之相当。添加 eSCAPE 后,在所有测试集中的性能都超过最佳水平;集成后,性能进一步提高,在2018测试中获得17.15 TER 的最终结果(超过之前 sota -0.85 TER)。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值