前言
论文地址https://aclanthology.org/2021.emnlp-main.664.pdf
前人工作&存在问题
在多语言机器翻译中,前人通过1. 在source端开头加入language tag;2. 给token embedding加上language embedding来给模型提供语种信息。有两个缺点:
- 语言信息不强,被忽略之后,target端翻译出错误的语种。(原文说的是对于没有见过的语言对的off-target问题)
- 训练的稳定性不强
本文贡献
本文考虑language tag的情形。
利用对cross-attention模块得到的attention矩阵,和外部得到的对齐矩阵进行显式的对齐,加强对language tag的关注。
具体方法
第一步:对于训练样本source(M个token)-target(N个token),利用外部工具awesome-align得到MxN对齐矩阵。然后取出cross-attention模块的attention矩阵,给总的损失函数加入KL散度的监督(视一行为一个单词对其它所有单词的概率分布,最后需要对行取平均)
attention矩阵需要经过softmax得到概率,由于对齐的稀疏性,文中使用α-entmax function代替之。
模型的输入是< target_language > source sentence + target sentence,因此可以选择三种外部对齐策略:source word-source word\language label-target word\两者结合
具体实验
TED benchmark上的supervised、zero-shot结果
3、4、5分别对应对齐策略1、2、3。
以2为baseline,发现3、4反而下降,5好!
WMT2018 benchmark上的supervised、zero-shot结果
在高资源的情境下,bilingual(0)的效果最好,其它效果和TED差不多。
OPUS-100
虽然比不过MATT+LALN+LALT,但还是有效的。
问题
- word alignment也是一个研究方向:https://arxiv.org/abs/2101.08231