
摘要
近期提出的BERT在多种自然语言理解任务中展现出强大的性能,例如文本分类、阅读理解等。然而,如何有效将BERT应用于神经机器翻译(NMT)仍缺乏充分探索。尽管BERT通常被用于下游语言理解任务的微调(fine-tuning),而非作为上下文嵌入(contextual embedding)使用,但在NMT任务中,我们初步研究表明,将BERT用作上下文嵌入的效果优于微调方式。这一发现促使我们进一步思考:如何在此方向上更有效地利用BERT提升NMT性能。为此,我们提出了一种名为BERT融合模型(BERT-fused model)的新算法。该方法首先利用BERT对输入序列提取语义表示,随后通过注意力机制将这些表示融合至NMT模型编码器与解码器的每一层中。我们在监督学习(包括句子级和文档级翻译)、半监督及无监督机器翻译任务上进行了实验,结果在七个基准数据集上均取得了当前最优(state-of-the-art)的性能表现。相关代码已公开,地址为:\url{https://github.com/bert-nmt/bert-nmt}。
代码仓库
bert-nmt/bert-nmt
官方
pytorch
StuartCHAN/KARL
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| machine-translation-on-wmt2014-english-french | BERT-fused NMT | BLEU score: 43.78 |
| machine-translation-on-wmt2014-english-german | BERT-fused NMT | BLEU score: 30.75 |
| unsupervised-machine-translation-on-wmt2014-2 | BERT-fused NMT | BLEU: 38.27 |
| unsupervised-machine-translation-on-wmt2016-5 | BERT-fused NMT | BLEU: 36.02 |