一文了解自然语言处理神经史(上)

摘要:越来越火的NLP到底经历了什么?

本文扩展了Herman Kamper和我在2018年深度学习Indaba组织的自然语言处理前沿课程。整个课程的幻灯片都可以在这里找到,这篇文章将主要讨论NLP中基于神经网络方法的近期进展。

免责声明:本文尝试将大约15年NLP的发展历程浓缩为今天最相关的八个里程碑,因此遗漏了许多相关和重要的发展。特别是,它严重偏向于当前的神经方法,这可能给人留下此期间没有其他有影响力方法的错误影响。

2001年-神经语言模型

语言建模是在给定前面的单词的情况下预测文本中的下一个单词的任务。 它可能是最简单的语言处理任务,具有实际应用,如智能键盘和电子邮件响应建议(Kannan et al.,2016)。语言建模有着丰富的历史。基于n-gram的经典方法采用平滑处理看不见的n-gram(Kneser&Ney,1995)。Bengio等人于2001年提出了第一种神经语言模型,一种前馈神经网络,如下图1所示。

该模型把n个可以在表C中查找的先前单词向量表示作为输入。现在,这种向量被称为词嵌入。这些词嵌入被连接并送入隐藏层,然后将其输出提供给softmax层。想要了解更多该模型的信息,请查看此文章

最近,前馈神经网络已被用于语言建模的递归神经网络(RNN; Mikolov等人,2010)和长短期记忆网络(LSTM; Graves,2013)所取代。近年来已经提出了许多经典LSTM的新语言扩展模型(请参阅此页面以获得概述)。尽管有这些发展,但经典的LSTM仍然是一个强大的基线(Melis等,2018)。即使Bengio等人的经典前馈神经网络在某些环境中也与更复杂的模型竞争,但这些通常只学会考虑最近的词(Daniluk等,2017)。如何理解这些语言模型捕获的信息是一个活跃的研究领域(Kuncoro等,2018; Blevins等,2018)。

语言建模通常是应用RNN时的首选训练场,并成功捕捉到了想象力,许多人通过Andrej的博客文章开始了解。语言建模是无监督学习的一种形式,Yann LeCun也将预测性学习作为获取常识的先决条件(参见NIPS 2016的Cake幻灯片)。 关于语言建模最显著的方面可能是,尽管它很简单,但它是本文讨论的许多后期进展的核心:

词嵌入:word2vec的目标是简化语言建模;

序列到序列模型:这种模型通过一次预测一个词来生成输出序列;

预训练语言模型:这些方法使用语言模型中的表示来进行迁移学习;

这反过来意味着NLP中许多最重要的最新进展减少为一种语言建模形式。 为了做“真正的”自然语言理解,仅仅从原始形式的文本中学习可能是不够的,我们将需要新的方法和模型。

2008-多任务学习

多任务学习是在多个任务上训练的模型之间共享参数的一般方法。在神经网络中,这可以通过绑定不同层的权重来轻松实现。多任务学习的想法在1993年由Rich Caruana首次提出,并应用于道路跟踪和肺炎预测(Caruana,1998)。直观地说,多任务学习鼓励模型学习对许多任务有用的表示。特别对于学习一般的低级表示,集中模型的注意力或在有限量的训练数据的设置中特别有用。有关多任务学习的更全面概述,请查看此文章

Collobert和Weston于2008年首次将多任务学习应用于NLP的神经网络。 在他们的模型中,查找表(或词嵌入矩阵)在两个在不同任务上训练的模型之间共享,如下面的图2所示。

共享词嵌入使模型能够在词嵌入矩阵中协作和共享一般的低级信息,这通常构成模型中最大数量的参数。Collobert和Weston在2008年的论文中证明了它在多任务学习中的应用,它引领了诸如预训练词嵌入和使用卷积神经网络(CNN)之类的思想,这些思想仅在过去几年中被广泛采用。它赢得了ICML 2018的时间考验奖(参见此时的时间考验奖论文)。

多任务学习现在用于各种NLP任务,并且利用现有或“人工”任务已成为NLP指令集中的有用工具。有关不同附加任务的概述,请查看此文章。虽然通常预先定义参数的共享,但是在优化过程期间也可以学习不同的共享模式(Ruder等,2017)。随着模型越来越多地在多项任务中被评估来评估其泛化能力,多任务学习越来越重要,最近提出了多任务学习的专用基准(Wang et al,2018; McCann et al,2018)。

2013-词嵌入

文本的稀疏向量表示,即所谓的词袋模型,在NLP中具有悠久的历史。正如我们在上面所看到的,早在2001年就已经使用了词或词嵌入的密集向量表示。 Mikolov等人在2013年提出的主要创新,是通过移动隐藏层和近似目标来使这些词嵌入的训练更有效率。虽然这些变化本质上很简单,但它们与高效的word2vec一起实现了大规模的词嵌入训练。

Word2vec有两种模式,可以在下面的图3中看到:连续的词袋(CBOW)和skip-gram。它们的目标不同:一个基于周围的词预测中心词,而另一个则相反。

虽然这些嵌入在概念上与使用前馈神经网络学习的嵌入技术没有什么不同,但是对非常大的语料库的训练使它们能够捕获诸如性别,动词时态和国家–首都关系之类的词之间的某些关系,由图4可知:

这些关系及其背后的意义引发了对嵌入词的初步兴趣,许多研究调查了这些线性关系的起源(Arora等,2016; Mimno&Thompson,2017; Antoniak&Mimno,2018; Wendlandt等,2018))。然而,使用预训练嵌入作为初始化的固定词嵌入,把它作为当前NLP的主要内容被证明可以提高各种下游任务的性能。

虽然捕获的关系word2vec具有直观且几乎神奇的性能,但后来的研究表明word2vec没有任何固有的特殊性:通过矩阵分解也可以学习词嵌入(Pennington等,2014; Levy&Goldberg,2014)和通过适当的调整,经典的矩阵分解方法(如SVD和LSA)可以获得类似的结果(Levy等,2015)。

从那时起,许多工作已经开始探索词嵌入的不同方面,可以通过这篇文章了解一些趋势和未来方向。尽管有许多发展,但word2ve仍然是如今被广泛使用的一种流行的选择。Word2vec的范围甚至超出了词级别:带有负抽样的skip-gram,一个基于本地环境学习嵌入的方便目标,已被应用于学习句子的表示(Mikolov&Le,2014; Kiros et al.,2015)-甚至超越NLP,应用到网络(Grover&Leskovec,2016)和生物序列(Asgari&Mofrad,2015)等。

一个特别令人兴奋的方向是将不同语言的词嵌入投影到同一空间中以实现(零射击)跨语言转移。越来越有可能以完全无监督的方式(至少对于类似语言)学习良好的投影,这开启了低资源语言和无监督机器翻译的应用(Lample等,2018; Artetxe等,2018)。请查看(Ruder等,2018)的概述。

2013年-NLP的神经网络

2013年和2014年是神经网络模型开始应用于NLP的标志年份。三种主要类型的神经网络被广泛使用:递归神经网络、卷积神经网络、循环神经网络。

递归神经网络(RNN)是处理NLP中普遍存在的动态输入序列问题的明显选择。 Vanilla RNNs(Elman,1990)很快被经典的长短期记忆网络(Hochreiter&Schmidhuber,1997)所取代,后者证明其对消失和爆炸梯度问题更具弹性。在2013年之前,RNN仍然被认为很难训练,Ilya Sutskever的博士论文是改变这种现状的一个关键例子。LSTM细胞可视化可以在下面的图5中看到。双向LSTM(Graves等,2013)通常用于处理左右上下文。

随着卷积神经网络(CNN)被广泛用于计算机视觉,它们也开始应用于文本(Kalchbrenner等,2014; Kim等,2014)。用于文本的卷积神经网络仅在两个维度上操作,其中滤波器仅需要沿时间维度移动。下面的图6显示了NLP中使用的典型CNN。

卷积神经网络的一个优点是它们比RNN更可并行化,因为每个时间步的状态仅取决于本地环境(通过卷积运算)而不是像RNN取决过去所有状态。CNN可以使用扩张卷积扩展到更宽的感受野,以捕捉更广泛的背景(Kalchbrenner等2016)。 CNN和LSTM也可以组合和堆叠,并且可以使用卷积来加速LSTM。

RNN和CNN都将语言视为一个序列。然而,从语言学的角度来看,语言本质上是等级的:单词被组成高阶短语和子句它们本身可以根据一组生产规则递归地组合。将句子视为树而不是序列的语言启发思想产生了递归神经网络,这可以在下面的图7中看到:

与从左到右或从右到左处理句子的RNN相比,递归神经网络从下到上构建序列的表示。在树的每个节点处,通过组合子节点的表示来计算新表示。由于树也可以被视为在RNN上施加不同的处理顺序,因此LSTM自然地扩展到树。

RNN和LSTM不仅仅可以被扩展来使用分层结构,而且不仅可以根据本地语言学习词嵌入,而且可以基于语法背景来学习词嵌入(Levy&Goldberg,2014);语言模型可以基于句法堆栈生成单词(Dyer et al。,2016); 图形卷积神经网络可以在树上运行(Bastings等,2017)。

本文作者:【方向】

作者:阿里云云栖社区

链接:https://www.jianshu.com/p/b140f86906bd

來源:简书

简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 201,468评论 5 473
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 84,620评论 2 377
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 148,427评论 0 334
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,160评论 1 272
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,197评论 5 363
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,334评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,775评论 3 393
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,444评论 0 256
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,628评论 1 295
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,459评论 2 317
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,508评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,210评论 3 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,767评论 3 303
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,850评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,076评论 1 258
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 42,627评论 2 348
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,196评论 2 341

推荐阅读更多精彩内容