原文来源:buZZrobot

作者:Harshvardhan Gupta

「雷克世界」编译:KABUDA、嗯~阿童木呀

深度学习正在被广泛地运用于各项日常任务当中,尤其是涉及到一定程度“ 人性化”的领域,例如,图像识别。与其他机器学习算法不同,深度网络最突出的特点是随着获得数据的增多,其性能可以不断提高。因此,如果可以获得更多的数据,那么预期的性能也会变得更好。

深度网络最擅长的任务之一是机器翻译。目前,它是能够完成此项任务的最先进的技术,并且具有足够的可行性,甚至谷歌翻译(Google Translate)也在使用它(https://en.wikipedia.org/wiki/Google_Neural_Machine_Translation)。在机器翻译中,需要句子级(sentence-level)的并行数据对模型进行训练,即对于源语言中的每个句子来说,都需要是目标语言中被翻译的语言。不难想象为什么这会成为一个问题。因为,对于一些语言对来说,很难获得大量的数据(因此可以使用深度学习的这种能力)。

本文是如何构建的

本文是基于Facebook近期发表的一篇名为“仅使用单语语料库进行的无监督机器翻译”(Unsupervised Machine Translation Using Monolingual Corpora Only)(https://arxiv.org/abs/1711.00043)的文章而撰写的。本文并没有完全遵循论文的结构,我添加了一些自己的解读,进而让文章更加通俗易懂。

阅读本篇文章需要具备一些最关于神经网络的基本知识,比如损失函数、自动编码器等。

机器翻译的问题

如上所述,在机器翻译中使用神经网络的最大问题是,它需要两种语言的句子对数据集。它适用于英语和法语等被广泛使用的语言,而对于其他语言的句子对则不适用。如果语言对数据可用,那么这将成为一个受监督性的任务。

解决方案

这篇论文的作者想出了如何将这一任务转换为无监督任务的方法。在这一任务中,唯一需要的是两种语言中每一种语言的任意两个语料库,如任意一部英语小说和任意一部西班牙语小说。需要注意的一点是,这两部小说不一定是相同的。

从最直观的角度来讲,作者发现了该如何学习一种介于两种语言之间的潜在空间(latent space)的方法。

自动编码器概述

自动编码器是一种用于无监督任务的广泛的神经网络类别。它的工作原理是重新创建一个和最初输入相同的输入。完成这一操作的关键是网络中间有一个名为瓶颈层(bottleneck layer)的网络层。该网络层被用以捕捉所有关于输入的有用信息,并摒弃无用信息。

概念型自动编码器,中间模块是存储压缩表示的瓶颈层

简言之,在瓶颈层中,瓶颈层中输入(现在由编码器转换)所在的空间被称为潜在空间(latent space)。

降噪自动编码器

如果一个自动编码器被调教成完全按照输入的方式重建输入,那么它可能什么都做不了。在这种情况下,输出将得到完美的重建,但是在瓶颈层中没有任何有用的特性。为了解决这一问题,我们使用了降噪自动编码器。首先,实际输入因为增加了一些噪声而受到轻微干扰。然后,使用网络重建原始图像(并非含噪版本)。这样一来,通过学习什么是噪声(以及其真正有用的特征是什么),网络可以学习图像的有用特征。

一个降噪自动编码器的概念实例。利用神经网络对左图进行重建,生成右图。在这种情况下,绿色的神经元共同构成了瓶颈层

为什么要学习一个共同的潜在空间?

潜在空间可以捕捉数据的特征(在我们所举的例子中,数据就是句子)。因此,如果有可能获得一个空间,即当输入语言A时,就会产生与输入语言B相同的特征,那么我们就有可能在它们之间进行翻译。由于该模型已经拥有了正确的“特征”,因此由语言A的编码器进行编码,由语言B的解码器进行解码,这将使二者进行有效的翻译工作。

或许正如你想到的那样,作者利用降噪自动编码器学习一个特征空间。他们还想出了该如何使自动编码器学习一个共同潜在空间的方法(他们将其称之为一个对其潜在空间(aligned latent space)),进而执行无监督的机器翻译。

语言中的降噪自动编码器

作者用降噪编码器以一种无监督的方式学习特征。他们所定义的损失函数为:

方程1.0 自动去燥编码器损失函数

解读方程1.0

I是语言(对于这一设定,可能有两种语言)。X是输入,C(x)是给x添加噪声后的结果。我们将很快得到噪声所创建的函数C。e()是编码器,d()是解码器。最后一项Δ(x hat,x)是标记级(token level)的交叉熵误差值之和。由于我们有一个输入序列,并且我们得到了一个输出序列,因此我们要确保每个标记(token)的顺序都是正确的。因此使用这种损失函数。我们可以将它视为多标签分类,其中将第i个输入的标记与第i个输出标记进行比较。其中,标记(token)是一个不能被进一步破坏的基本单位。在我们的例子中,标记(token)是一个单词。方程1.0是一个损失函数,使得网络最小化输出(当给定一个噪声输入时)与原始、未受影响的句子之间的差别的损失函数。

□与~的符号表示

□是我们期望的表示,在这种情况下,这意味着输入的分布取决于语言l,并且采用损失的平均值。这只是一个数学形式,运算过程中的实际损失(交叉熵之和)将如往常一样。

这个特殊符号〜意味着“来自概率分布”。

在本文中我们不详细讨论这个细节,你可以在Deep Learning Book(http://www.deeplearningbook.org/contents/optimization.html)一文的第8.1章中详细了解这个符号。

如何添加噪声

对于图像而言,只需在像素上添加浮点数就可以增加噪声,而对于语言而言,则需采用其他方法。因此,作者开发了自己的系统来制造噪声。他们把他们的噪声函数表示为C()。它将句子作为输入,并输出该句子的含噪版本。

有两种不同的方法添加噪声。

首先,可以简单地以P_wd的概率从输入中删除一个单词。

其次,每个单词都可以使用下面这个约束进行原始位置的移位:

σ表示第i个标记的移位位置。因此,方程2.0意味着:“一个标记(token)可以最多向左或向右移动k个标记(token)的位置”

作者将K值设为3,将P_wd值设为1。

跨域训练

为了学习两种语言之间的翻译,应该通过一些处理将输入句子(语言A)映射到输出句子(语言B)。作者将这个过程称为跨域训练(cross domain training)。首先,输入句子(x)被采样。然后,使用先前迭代中的模型(M())生成翻译后的输出(y)。把它们放在一起,我们便得到了y=M(x)。随后,使用上述相同的噪声函数C()干扰y,得到C(y)。语言A的编码器对这一被干扰的版本进行编码,语言B的解码器对语言A编码器的输出进行解码,并重新构建一个纯净版的C(y)。使用与方程1.0中相同的交叉熵误差值之和(sum of cross entropy error)对模型进行训练。

运用对抗式训练学习一个共同的潜在空间

到目前为止,还没有提到如何学习共同潜在空间。上面提到的跨域训练有助于学习一个相似空间,但需要一个更强的约束来推动模型学习一个相似的潜在空间。

作者使用对抗式训练。他们使用了另一个模型(称为鉴别器),该模型接受每一个编码器的输出,并预测编码后的句子属于哪一种语言。然后,从鉴别器中提取梯度,并对编码器进行训练,以欺骗鉴别器。这在概念上与标准的GAN(生成对抗网络)没有什么不同。鉴别器接收每个时间步的特征向量(因为使用了RNN),并预测它来自哪种语言。

将它们结合在一起

将上述3种不同的损失(自编码器损失、翻译损失和鉴别器损失)相加,所有模型的权重同时更新。

由于这是一个序列到序列的问题,因此作者使用了一个长短期记忆网络(LSTM),需要注意的是,这里存在两个基于LSTM的自动编码器,每种语言各含一个。

在较高级别上,训练这个架构需要三个主要步骤。它们遵循一个迭代训练过程。训练循环过程看起来有点像这样:

1.使用语言A的编码器和语言B的解码器获得翻译。

2.训练每个自动编码器,使其能够在给定一个损坏的句子时重新生成一个未损坏的句子。

3.通过破坏步骤1中获得的翻译来改进翻译并重新创建翻译。对于这一步,语言A的编码器和语言B的解码器一起进行训练(语言B的编码器和语言A的解码器一起训练)。

值得注意的是,即使步骤2和步骤3被分开列出,权重也会一起进行更新。

如何启动这个框架

如上所述,该模型使用之前的迭代过程中自身的翻译来提高其翻译能力。因此,在循环过程开始之前,拥有一定翻译能力是很重要的。作者使用FastText来学习词级双语词典。请注意,这种方法非常简单,仅需要给模型一个起点即可。

整个框架在下面的流程图中给出

整个翻译框架的高层次工作

本文解读了一种可以执行无监督机器翻译任务的新技术。它使用多个不同的损失改进单个任务,同时使用对抗式训练增强对体系结构行为的约束。

原文:https://buzzrobot.com/machine-translation-without-the-data-21846fecc4c0

未来智能实验室是人工智能学家与科学院相关机构联合成立的人工智能,互联网和脑科学交叉研究机构。由互联网进化论作者,计算机博士刘锋与中国科学院虚拟经济与数据科学研究中心石勇、刘颖教授创建。

未来智能实验室的主要工作包括:建立AI智能系统智商评测体系,开展世界人工智能智商评测;开展互联网(城市)云脑研究计划,构建互联网(城市)云脑技术和企业图谱,为提升企业,行业与城市的智能水平服务。

  如果您对实验室的研究感兴趣,欢迎加入未来智能实验室线上平台。扫描以下二维码或点击本文左下角“阅读原文”

没有数据也能翻译?一文读懂「无监督」机器翻译相关推荐

  1. 一文读懂「中台」的前世今生

    导读:中台,通过业务.数据和技术的抽象,形成了服务能力的复用,构建了企业级的服务能力,消除了企业内部各业务部门.各分子公司间的壁垒,适应了企业,特别是大型企业集团业务多元化的发展战略. 基于中台,可快 ...

  2. 一文读懂「Attention is All You Need」| 附代码实现

    作者丨苏剑林 单位丨广州火焰信息科技有限公司 研究方向丨NLP,神经网络 个人主页丨kexue.fm 前言 2017 年中,有两篇类似同时也是笔者非常欣赏的论文,分别是 FaceBook 的 Conv ...

  3. 实用教程 | 一文读懂「微信分账」功能

    在现有的微信支付互联网生态环境中,存在平台方角色,如电商平台.加盟代理等,用户支付订单金额后,先由平台方统一收款,再由平台方与商家或其他参与方进行结算,若无引入具有支付牌照的第三方,则为「二清」行为, ...

  4. 数据变金矿:一文读懂序列模型(附用例)

    简介 众所周知,人工神经网络(ANN)的设计思路是模仿人脑结构.但是直到10年前,ANN和人类大脑之间唯一的共同点是对实体的命名方式(例如神经元).由于预测能力较弱并且实际应用的领域较少,这样的神经网 ...

  5. 一文读懂「用户行为数据」的采集、分析和应用

    越来越多的企业已开始挖掘用户行为数据的商业价值,利用行为数据进行精准有效的数字营销.以科技金融行业为例,某知名企业的数据表明:用户行为数据的效力是金融数据的4倍. 一.企业的数据来源  企业收集.存储 ...

  6. 神策数据张铎:一文读懂神策私有化部署的架构演进

    在神策 2021 数据驱动大会北京场技术论坛上,神策数据首席架构师张铎发表了主题为<神策私有化部署的架构演进>的演讲,本文为精选内容.主要包括: 私有化部署的意义 神策私有化部署的演进及技 ...

  7. 大数据平台搭建_一文读懂数据平台、大数据平台、数据中台

    作者 | June 来源 | 智领云科技(ID:LinkTimeCloud) 造概念,在 IT 行业可不是一件陌生的事儿,中文博大精深,新名词.新概念往往简单准确,既可以被大众接受,又可以被专家把玩, ...

  8. 一文读懂「TTS语音合成技术」

    有没有发现,我们与机器的对话正变得愈发灵动与自然?人机交互越来越广泛地应用在我们的生活中,而这些都离不开语音合成技术的与时俱进. 语音合成,即TTS,是语音数据采集的重要方式.本期澳鹏干货,我们将带你 ...

  9. 一文读懂大数据平台——写给大数据开发初学者的话!

     一文读懂大数据平台--写给大数据开发初学者的话! 文|miao君 导读: 第一章:初识Hadoop 第二章:更高效的WordCount 第三章:把别处的数据搞到Hadoop上 第四章:把Hado ...

最新文章

  1. Hubble.net 简介及与Lucene.net 对比测试
  2. 为什么mysql打开闪屏_mysql登录闪屏问题解决办法
  3. oracle 11g EM停止后无法启动
  4. 利用反射给JAVABEAN实例赋值
  5. SAP快速找到定制配置
  6. python的图表库_python 图表库
  7. 一文了解Linux 网络 I/O 模型
  8. Java中Comparator比较器的使用以及使用lamba简化代码
  9. 打脸!一个线性变换就能媲美“最强句子embedding”?
  10. Edge 修改字符编码(详细图文)
  11. 《团队名称》第八次团队作业:Alpha冲刺day1
  12. 手把手教你注册和备案域名
  13. 知道创宇优质混合云解决方案,点击了解~
  14. grafana监控oceanbase-obagent部署
  15. Visual Studio 2019 下Python的开发环境搭建
  16. 深度信念网络_Learning
  17. 黑苹果安装使用 macos10.14 on vmware15 or virtualbox
  18. 如何从iCloud中下载元气骑士存档
  19. 2023年【福建省安全员C证(专职安全员)】考试及福建省安全员C证(专职安全员)试题及解析
  20. 数分笔记整理24 - 数据处理项目 - 社会财富分配问题模拟

热门文章

  1. 一文梳理视觉Transformer架构进展:与CNN相比,ViT赢在哪儿?
  2. 【AAAI 2020】NAS+目标检测:SM-NAS 论文解读
  3. SAP QM 含有Long-term检验特性的检验批UD完成后还能继续录入检验结果?
  4. SAP PM入门系列22 - IH06 Display Functional Location
  5. 北师大毕彦超:AI和人类感知的相同点和不同点
  6. 人们怕人工智能获得意识到底是怕哪个方面?
  7. AI技术在安防市场上的应用主要还存有几个挑战
  8. 2018年中国城市用电量30强
  9. 强化学习:如何处理大规模离散动作空间
  10. [干货]我如何考察面试者的机器学习水平