[ACL2019 Best Paper] Bridging the Gap between Training and Inference for Neural Machine Translation

ACL2019 Best Long Paper解读:

  • 目的:解决训练数据的Teacher Forcing问题
  • 训练时使用true ground数据,而推断时使用预测结果作为上文,在训练时会造成overcorrection(同义词结果被过度矫正)
  • 提出在训练时不仅仅使用true ground label,还会结合oracle word作为上下文,结构如下:

在原始NTM的基础上,在j时,输入j-1不再仅仅使用true groud label,而是会结合oracle word(soft机制),文章的重点在于如何选择oracle word,提出两种方式:词粒度和句子粒度。

  • 使用oracle word机制的三步走:

  • Word-Level Oracle(WO)机制
  • 直接拿预测概率最大的输出作为oracle word,下图及公式(9)所示

  • 引入Gumbel noise正则项增加模型鲁棒性

  • Sentence-Level Oracle (SO)
  • 在每个step时,对batch内样本做beam search decode,使用BLEU进行效果度量,得到最优目标句子,句子中第j-1个word作为SO

  • 由于SO及来自于true ground又来自于beam search,所以需要二者长度对齐,对齐方式使用Force Decoding
  • Force Decoding:根据EOS作为判断,步骤如下:

  • Sampling with Decay 原则:训练开始的时候倾向于使用true ground label,训练后期倾向于选择oracle word
  • p控制true groud和oracle word的选择,衰减公式如下,e为epoch,μ为超参

  • 结果展示:使用Transformat结果效果好用RNN,引入sentence oracle效果好于WO

  • 总结:文章创新性地使用了soft label作为next step的输入,可以解决训练过程中的「过度矫正及误差累及」问题,该方法在NMT上提及,但感觉可以扩展应用到其他「联合训练的模型上」,第二个任务基于第一个任务的输出label,在训练阶段可采用此soft label选取的方法。

猜你喜欢

转载自blog.csdn.net/iling5/article/details/101681405
今日推荐