1. 前言

本文介绍一种无监督的机器翻译的模型。无监督机器翻译最早是《UNSUPERVISED NEURAL MACHINE TRANSLATION》提出。这个模型主要的特点,无需使用平行语料库,使用去噪和回译的步骤构建NMT系统。

2018年Facebook人工智能实验室再次公布了有关无监督神经网络翻译的最新模型《Phrase-Based & Neural Unsupervised Machine Translation》,相当于用 10 万个参考译文训练过的监督模型。“在机器翻译领域,这是一个重大的发现,尽管世界上有超过 6500 种语言,但可利用的翻译训练资源池要么不存在、要么就是太小不足以运用在现有系统中。”

2. Facebook论文原理

Neural Unsupervised Machine Translation介绍了两个模型:

  1. 基于短语的无监督翻译模型 (PBSMT)
  2. 基于神经网络的无监督翻译模型 (NUMT) 。

2.1 Unsupervised MT(无监督学习)步骤

在论文中介绍了Unsupervised MT(无监督学习)的主要过程:

  1. word-by-word Initialization(词到词的参数初始化)
  2. Language Modeling(语言建模,有去噪效果)
  3. Iterative Back-translation(迭代回译,自动生成双语对照)

伪代码的形式如下,伪代码中的步骤少了一个word-by-word Initialization的过程:

再看一个论文中介绍3个过程的图:

  1. 图A是两个单独的语言语料库的数据
  2. 图B是第一原则:word-by-word Initialization初始化。 这两个单独的语言语料库大致对齐。可以通过单词对齐的形式进行。
  3. 图C是第二个原则:Language Modeling语言建模。分别学习两个语言模型。语言模型有去噪的作用(弹簧连接的点代表噪声)。
  4. 图D是第三个原则:Iterative Back-translation反向翻译。从观察到的源句(填充红色圆圈)->预测目标句子(蓝色的叉)。然后从翻译目标句子(蓝色的叉)->重建观察到的源句(填充红色圆圈)。

这4幅图简单的介绍了Unsupervised MT(无监督学习)的3个过程。

2.2 Back-translation回译原理

回译的过程《UNSUPERVISED NEURAL MACHINE TRANSLATION》提出的,结构如下图所示:

首先右边的L1 decoder和L2 decoder分别为两个语言的语料库的Language Modeling(语言模型)。

左边的shared encoder是两个语料库公用的encoder,并且它的embedding是fixed cross-lingual embedding(交叉语言的vocabulary)。

Back-translation的过程:

  1. L1 sentence->shared encoder(L1)->L2 decoder->predict L2 sentence
  2. predict L2 sentence->shared encoder(L2)->L1 decoder->L1 sentence

这样就算完成了一个Back-translation的过程,这个过程会去调整fixed cross-lingual embedding的值。

2.3 PBSMT

PBSMT是phrase-based statistical
machine translation(基于短语的机器翻译)。PBSMT用来生成无监督的短语表 (phrase-table) 。

Facebook的研究人员上述原则应用于基于经典计数统计方法的另一个机器翻译模型,叫做(基于短语的机器翻译)。通常而言,这些模型在训练数据(也即翻译好的语言对)较少时表现更好,这也是首次将其应用于无监督的机器翻译。基于短语的机器翻译系统,能够得出正确的单词,但仍然不能形成流畅的句子。但是,这种方法取得的结果也优于以前最先进的无监督模型。

3. 数据结果展示

这个结果在无监督机器翻译领域是有着显著的提升的。最好的方式是PBSMT+NMT的模型结构,这个结果给资源比较少的小语种翻译带来了希望。

4. 总结

Facebook的这篇论文,给无监督机器翻译领域带来了重大发现,使得机器翻译可以不再依赖大规模的平行语料库的标注,也使得在全世界6500种预语言中的小语种翻译带来了前所未有的突破。并且研究人员表示,这种无监督方法不仅适用于机器翻译,也可以扩展到其他领域,让智能体在使用无标记数据的情况下,完成只有极少甚至没有训练数据的任务。这是机器翻译以及无监督学习的一项重大突破。

Phrase-Based & Neural Unsupervised Machine Translation基于短语非监督机器翻译的更多相关文章

  1. 神经机器翻译 - NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE

    论文:NEURAL MACHINE TRANSLATION BY JOINTLY LEARNING TO ALIGN AND TRANSLATE 综述 背景及问题 背景: 翻译: 翻译模型学习条件分布 ...

  2. 基于短语的统计机器翻(PBMT) 开源工具 :Moses

    如何运行Moses 1. Moses的历史 Moses是Pharaoh的升级版本,增加了许多功能.它是一个基于短语的统计机器翻译系统,整个系统用C++语言写成,从训练到解码完全开放源代码,可以运行在L ...

  3. 对Neural Machine Translation by Jointly Learning to Align and Translate论文的详解

    读论文 Neural Machine Translation by Jointly Learning to Align and Translate 这个论文是在NLP中第一个使用attention机制 ...

  4. Effective Approaches to Attention-based Neural Machine Translation(Global和Local attention)

    这篇论文主要是提出了Global attention 和 Local attention 这个论文有一个译文,不过我没细看 Effective Approaches to Attention-base ...

  5. On Using Very Large Target Vocabulary for Neural Machine Translation Candidate Sampling Sampled Softmax

    [softmax分类器的加速器] https://www.tensorflow.org/api_docs/python/tf/nn/sampled_softmax_loss This is a fas ...

  6. 【转载 | 翻译】Visualizing A Neural Machine Translation Model(神经机器翻译模型NMT的可视化)

    转载并翻译Jay Alammar的一篇博文:Visualizing A Neural Machine Translation Model (Mechanics of Seq2seq Models Wi ...

  7. 基于TensorRT优化的Machine Translation

    基于TensorRT优化的Machine Translation 机器翻译系统用于将文本从一种语言翻译成另一种语言.递归神经网络(RNN)是机器翻译中最流行的深度学习解决方案之一. TensorRT机 ...

  8. 课程五(Sequence Models),第三周(Sequence models & Attention mechanism) —— 1.Programming assignments:Neural Machine Translation with Attention

    Neural Machine Translation Welcome to your first programming assignment for this week! You will buil ...

  9. Sequence Models Week 3 Neural Machine Translation

    Neural Machine Translation Welcome to your first programming assignment for this week! You will buil ...

随机推荐

  1. Android 桌面部件

    桌面部件是一种利用AppWidget框架将应用程序的某个部件放在桌面. res/layout/digitalclock.xml <?xml version="1.0" enc ...

  2. 第2章 Python基础-字符编码&数据类型 列表&元祖 练习题

    1.创建一个空列表,命名为names,往里面添加old_driver,rain,jack,shanshan,peiqi,black_girl元素 names = ["old_driver&q ...

  3. 第2章 Python基础-字符编码&数据类型 字符编码&字符串 练习题

    1.简述位.字节的关系 位(bit)是计算机中最小的表示单元,数据传输是以“位”为单位的,1bit缩写为1b 字节(Byte)是计算机中最小的存储单位,1Byte缩写为1B 8bit = 1Byte ...

  4. 记一次在线安装postgresql-9.4的问题

    一.在线安装 apt-get install postgresql-9.4 二.运行状态 systemctl status postgresql 显示运行正常,但是却没有启动默认的5432监听端口 三 ...

  5. XGB 调参基本方法

    - xgboost 基本方法和默认参数 - 实战经验中调参方法 - 基于实例具体分析 在训练过程中主要用到两个方法:xgboost.train()和xgboost.cv(). xgboost.trai ...

  6. VS Code 中文注释显示乱码

    将设置中的"files.autoGuessEncoding"项的值改为true即可. 1.文件 2.首选项 3.设置 4.搜索 "files.autoGuessEncod ...

  7. [转]SSH 原理和基本使用:ssh 安全配置 以及ssh key 认证登录

    一.什么是 SSH ? SSH全称(Secure SHell)是一种网络协议,顾名思义就是非常安全的shell,主要用于计算机间加密传输.早期,互联网通信都是基于明文通信,一旦被截获,内容就暴露无遗. ...

  8. Cadence 5141 下TSMC 05U工艺库安装

    以下资料摘自:<T13RF PDK簡介>-張文旭 观念与TSMC工艺库的安装 管理者安裝TSMC 0.13 MS/RF的環境下之PDK的安裝方式相當容易,首先以root的方式進入Unix/ ...

  9. Windows8.1远程桌面时提示凭据不工作的解决方案

    本人两台电脑都是win8.1.首先确认以下三点: 1.密码没有错 2.用户连接没有达到上线(只有我一个人尝试连) 3.该用户已开启远程连接 此时还说凭据不工作的原因是域的问题,因为mstsc默认使用M ...

  10. 自适应滤波:维纳滤波器——LCMV及MVDR实现

    作者:桂. 时间:2017-03-24  06:52:36 链接:http://www.cnblogs.com/xingshansi/p/6609317.html 声明:欢迎被转载,不过记得注明出处哦 ...