这个题目很拗口。我的本意是说这两个东西:零样本的机器翻译,和无监督条件GAN 其实很像,如果抛开二者的domain不同(一个是NLP,一个一般是在图像领域),这两者简直一模一样。
无监督学习
Yann Lecun多次提到这样的类比: 如果把“智能”(intelligence)比作一个蛋糕,那么无监督学习就是蛋糕本体,监督学习是蛋糕上的糖霜,而增强学习是蛋糕上的樱桃。我们知道如何得到糖霜和樱桃,但不知道怎样做蛋糕。 今天少样本甚至零样本的学习,都是在更基础的方向上(蛋糕本体)发力,而且取得了很好的效果。远的不说,最近的GPT3利用海量文本通过自(无)监督学习就在很多任务达到惊人效果。
回到机器翻译。现实生活中,很难保证有高质量的语言翻译的平行语料库,尤其是对小语种来讲。所以做零样本翻译非常有实用价值。
zero-shot机器翻译
前面有两篇文章介绍过这个方向。最近Facebook做出来的TransCoder是一个很好的应用。上一篇文章(TransCoder介绍)解释过具体的细节。大致上分这么三步走:
- 初始化MT
老的做法是直接用双语词典训练一个最简单的翻译模型;高级一点的做法是可以用MLM来初始化。 - 用单语料文本自学习一个DAE(Denoising auto-encoder)
好处是让翻译模型的encoder部分更加robust,而且decoder也学会了翻译(虽然是对单语言的"翻译")。 - 用back-translation来学会语言之间的翻译。
这也是最关键的一步。如下面右图所示,首先
从源语言x翻译到目标语言y,再翻译到源语言 x ^ \hat{x} x^,最后最小化李逵x和李鬼 x ^ \hat{x}