基于相似样本检索的在线更新机器翻译系统|EMNLP 2021 | 样本( 二 )


文章插图

【 基于相似样本检索的在线更新机器翻译系统|EMNLP 2021 | 样本】图1 带有领域内数据库的kNN-MT,在领域内数据和通用领域数据上的翻译效果。


2

模型结构
在这篇工作的模型结构中,翻译系统由两个部分组成,分别是一个通用领域的神经机器翻译模型——采用经典的 Transformer 结构[1],和一个样本检索模块——用于执行相似样本检索、相似度计算和概率估计。自回归的机器翻译模型生成译文是按相似的方式逐词生成,因此只需考虑单步的解码过程。在解码生成译文的每一步中,翻译系统的两个部分都会产生一个下一个词对应的概率分布。这两个分布会根据一个混合系数进行线性插值,估计出一个混合的概率分布。下一个词将由这个混合的分布预测出。
基于相似样本检索的在线更新机器翻译系统|EMNLP 2021 | 样本
文章插图
图2 模型结构

离线数据库构建
为了在解码过程中进行样本检索,作者构建了一些词级别的翻译数据库。数据库中存储的是词级别的翻译样本,每一个样本是一个键值对 。这个键指的是目标端语言的句子中一个词出现的上下文的向量表示 ,值指的是对应的目标端语言的词 。使用一个通用领域上训练好的 Transformer 模型,对每一条训练数据做强制解码,即可计算出目标语言每个词的上下文相关向量表示,构造出一组词级别翻译样本以供检索。
样本检索
在解码的每一步中,NMT 模型会计算出一个基于模型的下一个词分布 。另外,NMT 模型会计算当前上下文的向量表示作为查询,从翻译数据库中检索Top- k 个 L2 距离最小的样本。
可学习的核函数
然后利用核密度估计根据检索到的样本估计出一个基于样本的分布 ,其中核函数是一个具有可学习带宽参数的高斯核或拉普拉斯核。带宽参数基于当前上下文和检索到的样本动态估计得出,主要是为了调整 的锐度。当检索出的 k 个样本只有几个头部样本与当前上下文相似时,低带宽的核密度估计会生成一个尖锐的分布,将绝大多数概率质量分配给头部样本,忽略尾部样本引入的噪声。
基于相似样本检索的在线更新机器翻译系统|EMNLP 2021 | 样本
文章插图
图3 核函数的带宽参数越小,估计出的分布越尖锐。
自适应分布混合
基于模型的分布 将和基于样本的分布 按一定权重 进行线性插值,得到一个混合分布 ,并由混合分布预测出下一个词。混合权重 决定了翻译系统预测下一个词是更多地依赖 NMT 模型的输出还是检索到的样本。如图4 所示,在解码的每一步中,混合权重都是不同的,根据当前上下文和检索到的样本估计出。翻译系统自适应地决定更多地依赖哪个部分。
基于相似样本检索的在线更新机器翻译系统|EMNLP 2021 | 样本
文章插图

图4 动态的混合权重。Memory 表示基于样本的分布权重 ,Translation 表示基于模型的分布权重 。
模型训练策略
在 KSTER 训练过程中,NMT模型参数是固定不变的,需要训练的部分只有一个带宽参数估计器和一个混合权重估计器。作者使用交叉熵损失函数对翻译系统整体进行优化,但只更新带宽参数估计器和混合权重估计器的参数。
由于训练翻译系统的数据与构建翻译数据库的数据是相同的,在训练时总能检索到 top 1 相似的翻译样本就是查询自身。而测试数据通常在翻译数据库中没有出现过。这种训练和测试的不一致性,导致翻译系统容易过度依赖检索到的样本,产生过拟合的现象。为了缓解训练和测试的不一致性,作者在训练时检索最相似的 k + 1 个样本,并把第 1 相似的样本丢弃,保留剩下的 k 个样本用于后续的计算。这种训练策略被称为检索丢弃,在测试时并不使用这种策略。