此文为CCF计算机术语审定委员会联合CCF自然语言处理专委会推出的计算机行业术语介绍文章。本期所选热词为无监督机器翻译,是目前的热门研究方向之一。无监督机器翻译方法不再依赖于大规模的平行语料,适合低资源语言的翻译场景。本文简要介绍了无监督机器翻译的发展历程,以及基本实现方法,最后阐述并分析了这项技术面临的挑战。
词条定义
无监督机器翻译(Unsupervised machine translation,UMT)是机器翻译的一种,在没有给定大规模双语平行语料的情况下,通过机器学习算法自动实现从一种自然语言到另一种自然语言的翻译。由于无监督机器翻译的方法避免了翻译模型对大规模平行语料的过度依赖,更适合低资源语言或领域。
无监督机器翻译的发展
早期研究将无监督机器翻译任务看作是解密问题[1-2]。具体地讲,将源语言视为密文,并将生成密文的过程分为目标端语言的生成和其中单词的概率替换两个阶段。然而,该方法仅适用于较短句子的翻译。
近年来,神经网络已经展现出了很强的自主学习能力,深度学习在很多自然语言处理任务上取得了显著的效果。研究者将深度学习方法应用到无监督机器翻译任务中,称之为无监督神经机器翻译。无监督神经机器翻译从 2017 年首次被实现至今[3-6],已经取得了很大的进步。其发展历程大约经历3个阶段:
第一个阶段为2017年Artetxe等人和Conneau等人分别使用无监督的方法实现跨语言词嵌入[3][4],再根据所学习到的映射矩阵获取词表,随后通过语言模型训练和反向翻译两项技术实现了无监督神经机器翻译[5][6]。
第二阶段为Lample归纳的无监督神经机器翻译的三大原则[7],同时共享双语词汇表联合学习双语词嵌入,并通过 BPE 编码将词表从单词转换为子词。
第三个阶段为无监督跨语言预训练模型的提出,成功将预训练模型应用到了无监督神经机器翻译任务上[8],大幅度刷新了无监督神经机器翻译的性能。
研究者们在这三个阶段的发展基础上提出了自己对无监督神经机器翻译模型的改进,如Yang等人在2019年提出的将共享编码器改为独立编码器以强化句子本身的语言特征[9];Ji等人在2020年使用词典完成的不同语系的无监督神经机器翻译[10]。
无监督神经机器翻译的基本实现方法
无监督神经机器翻译不使用平行语料,仅利用单语语料来实现源语言到目标语言的翻译。具体地,记S和T表示源语言和目标语言的句子集合,s(s∈S)和 t (t∈T)分别表示来自两门语言的单个句子,𝑃𝑠和𝑃𝑡分别表示使用源语言和目标语言的单语语料训练出的语言模型,𝑃𝑠→𝑡表示从源语言到目标语言的翻译模型,同理,𝑃𝑡→𝑠表示从目标语言到源语言的翻译模型。在无监督跨语言预训练模型出现之前,无监督神经机器翻译模型的训练过程主要由如下三步构成[3][4]:
(1)初始化双语词表。无监督神经机器翻译模型中对词向量的初始化大体分为两种方式:第一种方式使用Word2vec单独训练两种语言的词向量,再通过学习一个变换矩阵将两种语言的词向量映射到同一个潜在空间。这样就可以获得一个精确度良好的双语词表。第二种方法使用单词的字节对编码(BPE)作为子字单元。这样做的好处是在减少了词表大小的同时,清除了翻译过程中出现“未知(UNK)”的问题。除此之外,相比于第一种方法,第二种方法选择将两种单语语料混合打乱后共同学习词向量特征,源语言和目标语言可共享同一个词表。但是这样的跨语言词嵌入有个前提,即两种语言是同一语系中的相似语言。
(2)训练语言模型。在双语UNMT模型中,语言模型的降噪自编码器最小化损失函数为:
𝐿𝑙𝑚 = 𝐸𝑥∈𝑆[− log 𝑃𝑠→𝑠(𝑥|𝐶(𝑥))] + 𝐸𝑦∈𝑇[−𝑙𝑜𝑔 𝑃𝑡→𝑡(𝑦|𝐶(𝑦))](公式 1)
其中:𝐶(𝑥)表示给现有句子𝑥加入噪音的句子,其方法是交换句子中一些词的位置或者删除一些词。𝐸 表示训练集中的所有句子对训练的损失的期望。语言模型的训练过程实质上是以加入噪音后的句子𝐶(𝑥)为源端输入句子,以初始的句子𝑥为目标端输入句子,把(𝐶(𝑥), 𝑥)当作平行句子对进行训练。
(3)反向翻译:反向翻译的过程是把伪平行句对当作平行句对进行训练的过程。其训练的损失函数如公式(2)所示。
𝐿𝑏𝑎𝑐𝑘 = 𝐸𝑦∈𝑇[−𝑙𝑜𝑔𝑃𝑠→𝑡(𝑦|𝑢∗(𝑦))] + 𝐸𝑥∈𝑆[−𝑙𝑜𝑔𝑃𝑡→𝑠(𝑥|𝑢∗(𝑥))](公式 2)
其中:𝑢∗(𝑦)表示由目标语言句子根据当前的语言模型翻译获得的源语言句子;反之,𝑢∗(𝑥)表示由源语言句子翻译获得的目标语言句子。反向翻译过程是把(𝑢∗(𝑦), 𝑦)和(𝑢∗(𝑥), 𝑥)都当作平行句对训练,将无监督的问题转换成有监督的问题。
上述的(2)和(3)模型分别共享编码器和解码器,通过反复迭代上述的(2)和(3),即为完整的双语单任务无监督神经机器翻译模型训练过程。算法流程如图1所示[7]。
随着预训练模型的提出,跨语言预训练模型被用来训练双语词嵌入特征和无监督神经机器翻译所使用的Transformer网络结构参数,显著提高了无监督神经机器翻译模型的翻译性能。
图 1 无监督神经机器翻译的算法流程
无监督机器翻译面临的挑战
尽管近几年来无监督(神经)机器翻译得到了迅速的发展,但目前的无监督机器翻译研究仍然存在着诸多的局限,面临着诸多方面的挑战。
首先,目前无监督机器翻译的研究工作多基于英、法、德等同源语言。由于在非同源语言之间, 例如中英、英日等,学习到的词向量质量较低,无监督神经机器翻译在这些语言对上获得的性能较差[11][12]。
其次,目前无监督机器翻译的研究工作多假设测试集的领域与训练集领域类似,存在一定的局限性。除了测试集与训练集的领域可能不一致外,无监督翻译使用的源端和目标端单语语料还可能存在着领域不一致和数量规模不一致等问题,使得无监督神经机器翻译领域自适应问题变得更具挑战性[12]。
更多术语
如果读者有兴趣了解更多专业术语以及行业热词的介绍,可以访问CCFpedia计算机术语平台(http://term.ccf.org.cn), 在首页的搜索栏中快捷方便地查询术语,进入目标术语的释义界面。该界面会从多个角度详细介绍目标术语,便于用户更好的理解。属性介绍有中文名、外文名、简称、所属分类以及行业应用等,在此基础上根据术语的不同特性进行多角度分析,例如:技术性能、发展历史、关键技术、实现方法、面临的挑战等等。最后附有相关的参考文献的超链接,用户可以随时点击链接浏览更多信息,拓展专业视野。
以术语“固件”为例,CCFpedia详细地展示了术语的简明词条定义,基本属性,以及其技术性能、产品升级等详细内容,供读者浏览和学习。
除此之外,也可以点击选择右上角“可视化”切换视图,以知识图谱的形势呈现出术语的丰富关联层次关系,右侧为术语的知识卡片,简明扼要地展示术语的主要信息,包括定义描述和基础信息等。
可点击“筛选过滤”切换右侧栏视图,以可视化的方式进行图谱的筛选和编辑,降低图谱构建门槛,增强易用性。支持设定探索过滤条件,包括设定显示层数、设定扩展层级、设定查询关系的方向、设定查询节点、关系的置信度范围、设定查询节点、关系的权重范围。
术语工委及术语平台介绍
计算机术语审定委员会(Committee on Terminology)主要职能为收集、翻译、释义、审定和推荐计算机新词,并在CCF平台上宣传推广。这对厘清学科体系,开展科学研究,并将科学和知识在全社会广泛传播,都具有十分重要的意义。
术语众包平台CCFpedia的建设和持续优化,可以有效推进中国计算机术语的收集、审定、规范和传播工作,同时又能起到各领域规范化标准定制的推广作用。
新版的CCFpedia计算机术语平台(http://term.ccf.org.cn)将术语的编辑运营与浏览使用进行了整合,摒弃老版中跨平台操作的繁琐步骤,在界面可观性上进行了升级,让用户能够简单方便地查阅术语信息。同时,新版平台中引入知识图谱的方式对所有术语数据进行组织,通过图谱多层关联的形式升级了术语浏览的应用形态。
参考文献
[1]Sujith Ravi and Kevin Knight. Deciphering Foreign Language. In Proceedings of ACL 2011, pages 12– 21.
[2]Qing Dou, Ashish Vaswani, Kevin Knight, and Chris Dyer. Unifying Bayesian Inference and Vector Space Models for Improved Decipherment. In Proceedings of ACL-IJCNLP 2015, pages 836–845.
[3]Mikel Artetxe, Gorka Labaka, and Eneko Agirre. Learning bilingual word embedding with (almost) no bilingual data. In Proceedings of ACL 2017, pages 451-462.
[4]Alexis Conneau, Guillaume Lample, Marc'Aurelio Ranzato, Ludovic Denoyer, and Hervé Jégou. Word translation without parallel data. In Proceedings of ICLR 2018.
[5]Mikel Artetxe, Gorka Labaka, Eneko Agirre, and Kyunghyun Cho. Unsupervised neural machine translation. In Proceedings of ICLR 2018.
[6]Guillaume Lample, Alexis Conneau, Ludovic Denoyer, and Marc'Aurelio Ranzato. Unsupervised machine translation using monolingual corpora only. In Proceedings of ICLR 2018.
[7]Guillaume Lample, Myle Ott, Alexis Conneau, Ludovic Denoyer, and Marc'Aurelio Ranzato. Phrase- based & neural unsupervised machine translation. In Proceedings of EMNLP 2018, pages 5039-5049.
[8]Alexis Conneau and Guillaume Lample. Cross-lingual language model pretraining. In Proceedings of NeurIPS 2019, pages 7057-7067.
[9]Zhen Yang, Wei Chen, Feng Wang, and Bo Xu. Unsupervised neural machine translation with weight sharing. In Proceedings of ACL 2018, pages 46-55.
[10]Baijun Ji, Zhirui Zhang, Xiangyu Duan, Min Zhang, Boxing Chen, and Weihua Luo. Cross-Lingual Pre- Training Based Transfer for Zero-Shot Neural Machine Translation. In Proceedings of AAAI, 2020, pages 115-122.
[11]Yunsu Kim, Miguel Graça, and Hermann Ney. When and Why is Unsupervised Neural Machine Translation Useless? In Proceedings of EAMT 2020, pages 35-44.
[12]Kelly Marchisio and Kevin Duh and Philipp Koehn. When Does Unsupervised Machine Translation Work? In Proceedings of WMT 2020, pages 571-583.
点击“阅读原文”,加入CCF。