Facebook开源了两个无监督翻译模型,只用单语就能训练双语

翻栗子 发自 凹非寺
量子位 出品 | 公众号 QbitAI

640?wx_fmt=png

昨天,Yann LeCun大神发推宣布,Facebook的两个无监督翻译模型,开源了。

所谓无监督,便是不需要双语对照文本,只用单语语料库 (Monolingual Corpora) 来训练AI的翻译能力。

登上了EMNLP 2018

此次开源的两个模型,一个是基于短的翻译模型 (PBSMT) ,另一个是神经翻译模型 (NMT) 。

640?wx_fmt=png

 三步如B)C)D)

二者都经历了以下三个步骤:

1.参数初始化
2.语言建模,有去噪效果
3.回译,自动生成双语对照

由此,即便没有双语语料库作为训练数据,AI依然能够学会翻译。

WMT’14英法WMT’16德英两个常用基准,评估模型的表现。结果,两个模型的BLEU分值,皆远远高过了此前表现最好的模型。

640?wx_fmt=png

 28.1是引入回译之后的分数

加上回译的PBSMT,几乎比前辈的成绩提升了一倍。NMT的表现也不差。

论文中写到,除了性能更强之外,Facebook团队的模型也更简单超参数比较少。

640?wx_fmt=png

两只骄傲的AI翻译官,登上了EMNLP 2018

代码,终于开源了

NMTPBSMT两个模型的代码实现,都在GitHub上面了。

NMT:

NMT代码实现支持以下功能。

· 三种机器翻译架构:seq2seqbiLSTM+注意力Transformer

· 在不同模型、不同语言之间,共享参数

· 去噪自编码器的训练

· 双语对照数据训练

· 反向双语对照训练

· 即时多线程生成反向对照数据

640?wx_fmt=jpeg

请注意科学烫手

还有一些论文里面没用到的功能,比如:

· 任意数量的语种
· 语言模型预训练/共同训练,参数共享
· 对抗训练

PBSMT:

PBSMT代码实现支持以下功能。

· 无监督的短语表 (phrase-table) 生成脚本

· 自动Moses训练

640?wx_fmt=jpeg

△ 这只鸡可能很暴躁

请开始,你的翻译

要训练自己的AI翻译,你需要以下工具:

Python 3
NumPy
PyTorch
Moses(用来清洁和标记化文本/训练PBSMT模型)
fastBPE(用来生成并应用BPE代码)
fastText(用来生成嵌入)
MUSE(用来生成跨语言嵌入)

准备好了的话,就开始吧。

640?wx_fmt=jpeg

△ 违规者放心,不会有事的

GitHub传送门:
https://github.com/facebookresearch/UnsupervisedMT

论文传送门:
https://arxiv.org/pdf/1804.07755.pdf

640?wx_fmt=png

△ 字幕组卖萌最为致命

加入社群

量子位AI社群19群开始招募啦,欢迎对AI感兴趣的同学,在量子位公众号(QbitAI)对话界面回复关键字“交流群”,获取入群方式;


此外,量子位专业细分群(自动驾驶、CV、NLP、机器学习等)正在招募,面向正在从事相关领域的工程师及研究人员。


进专业群请在量子位公众号(QbitAI)对话界面回复关键字“专业群”,获取入群方式。(专业群审核较严,敬请谅解)

诚挚招聘

量子位正在招募编辑/记者,工作地点在北京中关村。期待有才气、有热情的同学加入我们!相关细节,请在量子位公众号(QbitAI)对话界面,回复“招聘”两个字。

640?wx_fmt=jpeg

量子位 QbitAI · 头条号签约作者

վ'ᴗ' ի 追踪AI技术和产品新动态


去年,谷歌发布了 Google Neural Machine Translation (GNMT),即谷歌神经机器翻译,一个 sequence-to-sequence (“seq2seq”) 的模型。现在,它已经用于谷歌翻译的产品系统。   虽然消费者感受到的提升并不十分明显,谷歌宣称,GNMT 对翻译质量带来了巨大飞跃。   但谷歌想做的显然不止于此。其在官方博客表示:“由于外部研究人员无法获取训练这些模型的框架,GNMT 的影响力受到了束缚。”   如何把该技术的影响力最大化?答案只有一个——开源。   因而,谷歌于昨晚发布了 tf-seq2seq —— 基于 TensorFlow 的 seq2seq 框架。谷歌表示,它使开发者试验 seq2seq 模型变得更方便,更容易达到一流的效果。另外,tf-seq2seq 的代码库很干净并且模块化,保留了全部的测试覆盖,并把所有功能写入文件。   该框架支持标准 seq2seq 模型的多种配置,比如编码器/解码器的深度、注意力机制(attention mechanism)、RNN 元类型以及 beam size。这样的多功能性,能帮助研究人员找到最优的超参数,也使它超过了其他框架。详情请参考谷歌论文《Massive Exploration of Neural Machine Translation Architectures》。   上图所示,是一个从中文到英文的 seq2seq 翻译模型。每一个时间步骤,编码器接收一个汉字以及它的上一个状态(黑色箭头),然后生成输出矢量(蓝色箭头)。下一步,解码器一个词一个词地生成英翻译。在每一个时间步骤,解码器接收上一个字词、上一个状态、所有编码器的加权输出和,以生成下一个英词汇。雷锋网(公众号:雷锋网)提醒,在谷歌的执行中,他们使用 wordpieces 来处理生僻字词。   据雷锋网了解,除了机器翻译,tf-seq2seq 还能被应用到其他 sequence-to-sequence 任务上;即任何给定输入顺序、需要学习输出顺序的任务。这包括 machine summarization、图像抓取、音识别、对话建模。谷歌自承,在设计该框架时可以说是十分地仔细,才能维持这个层次的广适性,并提供人性化的教程、预处理数据以及其他的机器翻译功能。   谷歌在博客表示: “我们希望,你会用 tf-seq2seq 来加速(或起步)你的深度学习研究。我们欢迎你对 GitHub 资源库的贡献。有一系列公开的问题需要你的帮助!”   GitHub 地址:https://github.com/google/seq2seq   GitHub 资源库:https://google.github.io/seq2seq/nmt/ 标签:tensorflow  seq2seq  谷歌  机器学习
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值