专栏首页新智元CMU:深度学习自然语言处理,神经机器翻译与 seq2seq 模型汇总,6 大类型附部署技巧

CMU:深度学习自然语言处理,神经机器翻译与 seq2seq 模型汇总,6 大类型附部署技巧

【新智元导读】CMU 语言技术研究所助理教授 Graham Neubig 将有关神经机器翻译和 seq2seq 各种模型的概要、重点以及部署技巧整理为一篇长达65页的教程发表于 arxiv,内容由浅入深,兼具实用性与启发性,值得收藏研读。

论文题目:神经机器翻译与 sequence-to-sequence 模型:一个教程 (Neural Machine Translation and Sequence-to-sequence Models: A Tutorial

论文下载地址:https://arxiv.org/pdf/1703.01619v1.pdf

引言

这个教程介绍了一些新的,而且十分强大的技术,通常被称为“神经机器翻译”或“神经seq2seq 模型”。这些技术已经被用于人类语言处理的许多人物,并且对任何想对某种类型的序列数据建模的人来说都是很强大的工具。这个教程假设读者已经具备数学和编程的基础知识,但不要求一定要有神经网络或自然语言处理的经验。本教程尝试解释一系列方法背后的原理,然后通过大量数学上的解释帮助读者深入了解这些方法,并且提供了一些实践上的建议,以便读者在实践中测试自己对这些内容的理解。

背景

在这一节,作者解释了标题里的两个重要概念的含义,即“机器翻译”和“seq2seq 模型”。有关“机器翻译”的概念在这里不再赘言,以下介绍一下“序列到序列模型”,即简称“seq2seq 模型”的这个概念。

“seq2seq 模型”是指将一个序列映射到另一个系列的一类模型。这里面当然包括机器翻译,但也包含了处理其他任务的更广泛的方法,如图1所示。实际上,如果我们把计算机程序的输入看作是一个输入比特序列,然后输出是一个输出比特序列,那么我们可以说每一个单独的程序都是一个表示某些行为的“序列到序列”模型(虽然在许多情况下这不是最自然或最直观的表达方式)。

图1:seq2seq 建模任务的示例

本教程的结构

首先,本教程第2节讲解了用于机器翻译的统计学技术的一般数学定义。教程的其余部分按复杂程度递增介绍 seq2seq 的各种模型,最后是注意力模型,它代表了当前该领域最先进的技术。

第3~6节关注语言模型,这些模型计算目标序列的概率。这些模型不能执行翻译或序列转换,但对初步理解 seq2seq 模型很有帮助。这几节解释的概念包括:n-gram 语言模型、log-linear 语言模型、神经网络,以及循环神经网络(RNN)。

最后,第7和第8节介绍了能够执行机器翻译或其他任务的实用 seq2seq 模型,包括 encoder-decoder 模型和 注意力模型。Encoder-decoder 模型使用 RNN 将目标序列编码为数字向量,然后另一个网络将该数字向量解码为输出的句子。第7节也介绍了生成序列的搜索算法。注意力模型允许在生成翻译输出时注意输入的句子的不同部分。这是更有效、更直观的表示句子的方法,而且通常比 encoder-decoder 的对应更有效。

全部目录附在文末。

更多研究主题

本教程涵盖了神经机器翻译和 seq2seq 模型的基础,从 n-gram 语言模型开始,最后讲到注意力模型。需要注意的是,这是一个非常活跃的研究领域,并且还有一些本教程没有覆盖到的更高级的研究主题,掌握了基础知识并想要了解更多的读者可以主动去研究。这些进一步的研究主题包括:

处理大型词汇表:

神经 MT 模型的一个难点是在处理大型词汇表时表现不佳,模型很难学会如何用有限的数据去正确翻译罕见词,而且需要的计算量很大。处理这个问题的一种方法是将词汇分割成更小的单位,例如字符(character)或子字(subword),也可以结合覆盖面更广泛的翻译词典来处理低频现象。

优化翻译结果:

虽然本教程介绍的模型是给定源 P(E | F),被训练去最大化目标句子的似然性,但实际上我们关心的是生成的句子的准确性。已经有很多工作试图解决这个问题,利用的手段是在训练模型时直接考虑的是所生成结果的准确性。方法包括从当前模型的翻译结果中取样,并向能得到更好翻译结果的方向进行参数调优,将参数调优为部分错误假设以提高生成结果中错误的鲁棒性,以及尝试防止在搜索过程中出现错误。

多语言学习:

到目前为止,我们都是假设在两种语言 F 和 E 之间训练一个模型。但是,世界上有许多种语言,一些研究已经证明能够利用所有语言的数据去训练一个模型。也可以跨语言执行迁移,先在一个语言对上训练模型,然后将其微调用于其他语言对。

其他应用:

类似的 seq2seq 模型已经用于多种任务,包括对话系统、文本自动摘要、语音识别、语音合成、图像标注(image captioning)、图像生成,等等。本教程涉及的只是这个迅速扩大的领域的一小部分主题,希望能为读者提供工具,将这些模型应用到自己感兴趣的应用上。

附:目录

1 引言

1.1 背景

1.2 本教程结构

2 MT的统计学基础

3 n-gram 语言模型

3.1 逐词计算概率

3.2 基于计数的 n-gram 语言模型

3.3 语言模型评估

3.4 处理未知的词

3.5 拓展阅读

3.6 练习

4 Log-linear 语言模型

4.1 模型组成

4.2 学习模型参数

4.3 Log-linear 模型的衍生

4.4 语言建模的其他特征

4.5 拓展阅读

4.6 练习

5 神经网络和前馈语言模型

5.1 组合特征的潜力和问题

5.2 神经网络概要

5.3 训练神经网络

5.4 一个实现示例

5.5 神经网络语言模型

5.6 拓展阅读

5.7 练习

6 RNN 语言模型

6.1 语言中的长距离语义关系

6.2 循环神经网络

6.3 消失梯度和长短期记忆中

6.4 其他 RNN 变体

6.5 Online, Batch, 和 Minibatch 训练

6.6 拓展阅读

6.7 练习

7 神经 Encoder-Decoder 模型

7.1 Encoder-decoder 模型

7.2 生成输出

7.2.1 随机取样

7.2.2 Greedy 1-best 搜索

7.2.3 Beam 搜索

7.3 其他编码序列的方式

7.3.1 反向与双向编码器

7.3.2 卷积神经网络

7.3.3 树结构网络

7.4 ensemble 多个模型

7.5 练习

8 注意力神经机器翻译

8.1 Encoder-Decoder 表示的为题

8.2 注意力

8.3 计算注意力分数

8.4 计算注意力分数的方式

8.5 模仿词和位置词替代

8.6 注意力的直觉先验

8.7 拓展阅读

8.8 练习

9 总结

论文地址:https://arxiv.org/pdf/1703.01619v1.pdf

本文分享自微信公众号 - 新智元(AI_era)

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2017-03-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • DeepMind:实现通用语言智能我们还缺什么?

    2014年11月,那时候还没有被广泛认知为“深度学习教父”的Geoffrey Hinton,在国外网站Reddit回答网友提问的活动“AMA” (Ask Me ...

    新智元
  • 图灵奖得主推荐新书:图模型手册(500页PDF下载)

    图灵奖获得者 Judea Pearl 在 Twitter 推荐了一本新书《图模型手册》,他认为,这本书很好地刻写了图模型领域自 20 世纪 80 年代成立以来是...

    新智元
  • 超越GAN!OpenAI提出可逆生成模型,AI合成超逼真人像

    【新智元导读】OpenAI最新提出的可逆生成模型Glow,可以使用相对少的数据,快速生成高清的逼真图像,具有GAN和VAE所不具备的精确操作潜在变量、需要内存少...

    新智元
  • 美团搜索广告排序推荐,从机器学习到深度学习的模型实践

    机器学习AI算法工程
  • 2017 知乎看山杯从入门到第二

    利用一个暑假的时间,做了研究生生涯中的第一个正式比赛,最终排名第二,有些小遗憾,但收获更多的是成长和经验。我们之前没有参加过机器学习和文本相关的比赛,只是学过一...

    AI研习社
  • 细思极恐!只需54块钱,你也能让AI伪造一系列联合国发言

    最近,有研究人员真就搞出了一个。手握这个生成器,你就可以无限生成逼真的联合国演讲风格的内容。

    量子位
  • 黑客视角:避免神经网络训练失败,需要注意什么?

    确保网络正常运行的关键因素之一是网络的配置。正如机器学习大师 Jason Brownle 所说,「深度学习神经网络已经变得易于定义和拟合,但仍然难以配置。」

    AI研习社
  • 【机器学习】机器到底在学习什么?

    机器识别手写数字的问题早已经解决,MNIST数据集http://yann.lecun.com/exdb/mnist/如今机器识别的准确率已经超过99%。事实上,...

    量化投资与机器学习微信公众号
  • OpenAI提出能合成高清逼真图像的模型:“我们和GAN不一样!”

    这篇文章介绍了我们的新成果——Glow,这是一个可逆的生成模型,其中使用了可反复的1×1卷积网络。2015年,我们曾推出过NICE,它是一种针对复杂高维进行建模...

    崔庆才
  • 塔秘 | 应用 AI 之前,你必须了解的 10 项准备工作

    导读 不是每一个问题都可以通过机器学习来解决,且不是每一个公司都准备应用人工智能。本文会告诉你,你的公司是否有利用人工智能的条件,以及在那之前如何才能实现它。 ...

    灯塔大数据

扫码关注云+社区

领取腾讯云代金券