Recent Trends in Deep Learning Based Natural Language Processing
本文是一篇 deep learning in NLP 的综述,详细地介绍了 DL 在 NLP 中的模型以及应用,还对几大经典和热门任务做了摘要,推荐给大家。
文章来源
2017年8月发在ArXiv上的一篇综述。对各种深度学习模型和策略在NLP各种任务上的应用和演进进行了介绍。链接:https://arxiv.org/abs/1708.02709
摘要
深度学习方法采用多个处理层来学习数据的分层表示,并在许多领域中产生了最先进的结果。 最近,在自然语言处理(NLP)的背景下,各种模型设计和方法已经发展。 在本文中,我们回顾了大量的深入学习相关的模型和方法,这些模型和方法已经被用于许多NLP任务,并提供了他们演进的步态。 我们还对各种模式进行了总结,比较和对比,并对NLP中的深入学习的过去,现在和未来进行了详细的了解。
1. 介绍
自然语言处理(NLP)是用于自动分析和表示人类语言的理论动机的计算技术。 NLP研究从打卡(the era of punch cards )和批量处理的时代演变而来,那时一句话的分析可能需要7分钟,到谷歌等时代,数百万的网页可以在秒一下的时间处理完毕(Cambria and White,2014)。 NLP使计算机能够在所有级别执行广泛的自然语言相关任务,从解析和部分(POS)标记到机器翻译和对话系统。NLP使计算机能够在所有级别执行广泛的自然语言相关任务,从词语解析和词性标注(POS)到机器翻译和对话系统。
深度学习架构和算法已经在诸如计算机视觉和模式识别等领域取得了显着进步。按照这种趋势,最近的NLP研究正在越来越多地关注使用新的深度学习方法(见图1)。几十年来,针对NLP问题的机器学习方法基于在大尺寸和稀疏特征上训练的浅模型(例如,SVM和逻辑回归)。在过去几年中,基于密集向量表示的神经网络已经在各种NLP任务上产生了优异的结果。这种趋势是词嵌入成功-Word Embedding(Mikolov et al。,2010,2013a)和深度学习方法(Socher等,2013)引发的。深度学习能够实现多级自动特征表征学习。然而,传统的基于机器学习的NLP系统大量与手工提取特征联系。手工提取特征是耗时且经常不完整的。
(Collobert等,2011)表明,简单的深入学习框架在大多NLP任务中胜过大多数最先进的方法,如命名实体识别(NER),语义角色标注(SRL),和词性标注。从那时起,已经提出了许多复杂的基于深度学习的算法来解决困难的NLP任务。我们回顾了应用于自旋语言任务的主要深度学习相关模型和方法,如卷积神经网络(CNN),循环神经网络(RNN)和递归神经网络。我们还讨论了增加记忆的策略,attention机制,以及如何在语言相关任务中采用无监督模型,强化学习方法和最近的深层次的生成模型。
据我们所知,本篇论文是今天在NLP研究中全面覆盖大部分深度学习方法的首次提出。 (Goldberg,2016年)最近的工作以教学方式介绍了NLP的深入学习方法,主要是分布式语义技术概述,即word2vec和CNN。在他的工作中,戈德伯格没有讨论各种深层次的学习架构。这篇论文将给读者一个更全面的了解这个领域当前的做法。
本文的结构如下:第二部分介绍了分布式表示的概念,是复杂深度学习模型的基础; 接下来,第三节,第四节和第五节讨论了卷积,循环和递归神经网络等流行模型,以及它们在各种NLP任务中的使用; 以下,第六节列出了NLP中强化学习的最新应用和未受监督的句子表示学习的新发展; 之后,第七部分展示了近来与内存模块耦合的深度学习模式的趋势; 最后,第八部分总结了关于主要NLP主题的标准数据集的一系列深度学习方法的表现。
图1:ACL,EMNLP,EACL,NAACL在过去6年的深度学习论文的百分比(长篇论文)。
2. 分布式的向量化表示
统计NLP已成为复杂自然语言任务建模的主要选择。 然而,一开始,由于语言模型中词汇数量过大,它易在学习语言模型的联合概率函数时遭受维度灾难。 因此需要将词汇编码到更低维度的向量空间中。Word Embedding、Character Embedding等不同层次的元素分布式表示是很多NLP任务近年来效果不断提升的基础。
A. Word Embeddings(见文章word2vec总结)
这种embedding模型现在基本上都是浅层神经网络,并没有需要深层网络来产生良好的embedding。 然而,基于深度学习的NLP模型总是用这些embedding来代表字,短语甚至句子。 这实际上是传统的基于字数统计的模型和基于深度学习的模型之间的主要区别。 Word embedding在广泛的NLP任务中产生了state of art的效果(Weston等人,2011; Socher等,2011a; Turney和Pantel,2010)。
B. Word2vec(见文章word2vec总结)
表I提供了经常用于创建进一步embedding方法深度学习模型现有框架的目录。
C. Character Embeddings(字符embedding)
google的参考地址http://colinmorris.github.io/blog/1b-words-char-embeddings
Word Embedding能够捕获句法和语义信息,但是对于POS标注和NER等任务,形态和形状信息也是非常有用的。一般来说,在character 层面构建自然语言理解系统的已引起了一定的研究关注, (Kim et al., 2016; Dos Santos and Gatti, 2014;Santos and Guimaraes, 2015; Santos and Zadrozny, 2014).
在某些形态丰富的语言的NLP任务中的表现出更好的结果。 (Santos和Guimaraes,2015)应用字符层次的表示,以及NER的词嵌入,在葡萄牙语和西班牙语语料库中实现最先进的结果。(Kim等人,2016)在仅使用字符嵌入构建的神经语言模型方面显示出积极的效果。 (Ma et al。,2016)利用了包括字符三元组在内的几个embedding,以纳入在NER的上下文中学习预训练的标签嵌入的原型和分层信息。Ma et al。,2016)利用了包括字符三元组在内的几个嵌入,以纳入在NER的上下文中学习预训练的标签嵌入的原型和分层信息。
Charactee embedding也自然能处理未登录单词的问题,因为每个单词都被认为不仅仅是单个字母的组合。语言学中认为,文本不是由单独的单词组成,单词和单词的语义也映射到其组成字符中(如中文),character层次的构建系统是避免单词分割的自然选择(Chen et al。,2015A)。 因此,使用这种语言的深度学习应用的作品往往倾向于character embedding超过word embedding(Zheng et al。,2013)。 例如(Peng et al。,2017)证明, radical-level processing可以大大提高情绪分类的表现。 特别是,他们提出了两种类型的基于中文的 radical-based hierarchical embeddings,其中不仅包含radical和character层面的语义,而且包含情感信息。
3. 卷积神经网络
CNN能够有效的挖掘上下文窗口中的语义信息,抽取句子中的主要含义,但是也存在参数多需要大量数据、长距离上下文信息的编码和位置信息的编码等问题。文中对经典CNN及windows-based-CNN、DCNN、TDNN等变种在情感分析、文本分类等任务上的有效应用进行了描述。
(Collobert和Weston,2008)首次使用CNN训练句子模型,他们在工作中使用多任务学习来为不同的NLP任务输出预测,如POS标注,块,命名实体标注,语义角色,语义相似度计算和语言模型。使用查找表将每个单词转换成用户定义维度的向量。因此,通过将查找表应用到其每个单词(图5),输入的n个单词被转化成一系列向量。
这可以被认为是在网络训练中学习权重的原始词嵌入方法。 在(Collobert et al。,2011)中,Collobert提出一个基于CNN的通用框架来解决大量的NLP任务扩展了他的观点。 这两项工作都引发了NLP研究中CNNs的广泛普及。 鉴于CNN在计算机视觉的良好表现,人们更容易相信他在nlp中的表现。
CNN有能力从输入句中提取突出的n-gram特征,为下游任务创建一个信息性潜在语义表示的句子。 该应用程序是由(Collobert等人,2011; Kalchbrenner等,2014; Kim,2014)的作品开创的,这也导致了后续文献中CNN网络的巨大扩散。
4. 循环神经网络
RNN的结构符合语言内在的序列特征,而且能够处理任意长度的文本序列。RNN及其变种LSTM、GRU等在本文处理任务中得到了非常普遍的应用。
最新发展是引入了注意力机制
5. 递归神经网络
6. 深度强化模型与深度无监督学习
A. 用于序列生成的强化模型
关于强化模型不太了解,学习ing(后面补充),通过一些论文开始学习;
1.#文本摘要#
A Deep Reinforced Model for Abstractive Summarization
用 Intra Attention+Supervisd/Reinforcement 混合学习,在 CNN/Daily Mail 数据集的生成式文摘上取得了较已有最好成绩 5.7 个 ROUGE 分的提升。工作来自 Metamind Socher 团队。
官方博客解读:MetaMind Research
机器之心解读:https://www.jiqizhixin.com/articles/2017-05-13-4
论文链接:[1705.04304]A Deep Reinforced Model for Abstractive Summarization
2.#图像标注#
google-Show and Tell:A Neural Image Caption Generator
简书讲解地址:http://www.jianshu.com/p/3330a56f0d5e
知乎讲解地址:https://zhuanlan.zhihu.com/p/27771046
B.无监督的句子表示学习
C.深度生成模型
对一些不可微的优化问题,将强化学习和深度神经网络结合的方式(尤其是在一些生成模型中)取得了不错的效果。
7.记忆增强网络
8. 总结
总结近几年发布的在标准数据集上的一系列深入学习方法在表III-VI中的7个主要NLP主题的表现,我们的目标是为读者提供常用数据集和不同模型的最新技术。
A.词性标注
WSJ-PTB(Penn Treebank Dataset的华尔街日报部分)语料库包含117万个tokens,并被广泛用于开发和评估POS标注系统。 (Gim´enez and Marquez, 2004)采用了一个基于七单词窗口内的手动定义特征的一对多SVM模型,其中一些基本的n-gram模式被评估形成二进制特征,如: “previous word is the”, ”two preceding tags are DT NN”, 等等.
B. Parsing
C.命名实体识别
D.语义角色标签
E.情感分类
F.机器翻译
基于短语的SMT框架(Koehn等人,2003)用源和翻译出的目标句子中短语的匹配概率来优化翻译模型。 (Cho等人,2014年)提出用RNN编码器 - 解码器来学习源短语到相应目标短语的翻译概率,这种打分方式提高了模型表现,另一方面,(Sutskever等人,2014)使用具有4层LSTM seq2seq模型的SMT系统为翻译最好的top1000重新打分。(Wu et al。,2016)训练了具有8个编码器和8个解码器层并且使用了残差连接和注意力机制的深层LSTM网络,(Wu et al。,2016)然后通过使用强化学习直接优化BLEU分数来改进模型,但他们发现,通过这种方法,BLEU评分的改善没有反映在人工翻译质量评估中。(Gehring等,2017)提出了使用卷积seq2seq学习来更好的实现并行化,而Vaswani et al。,2017)提出了一种transformer模型,完全抛弃了CNN和RNN。
G.问答系统
问答问题有多种形式,有些依靠大型KB来回答开放域问题,而另一种则根据几句或一段话(阅读理解)回答一个问题。 对于前者,我们列举了了(Fader等,2013)引入的大规模QA数据集(14M三元组)进行的几项实验, 每个问题都可以用单一关系查询来回答。对于后者,我们考虑(参见表八)bAbI的合成数据集,其要求模型推理多个相关事实以产生正确的答案。它包含20个综合任务,来测试模型检索相关事实和原因的能力。 每个任务的关注点是不同的,如 basic coreference and size reasoning.。
学习回答单关系查询的核心问题是在数据库中找到唯一的支持事实。(Fader et al。,2013)提出通过学习一种将自然语言模式映射到数据库(question paraphrasing dataset.)概念(实体,关系,问题模式)的词典来解决这个问题。(
。。。未完
H.对话系统
9. 展望
深度学习提供了一种不通过手工工作处理大规模数据和计算的方式 (LeCun et al., 2015).通过分布式表示,各种深层模型已经成为解决NLP领域问题的新型最先进的方法。我们预计这种趋势将持续发展产生出更多更好的模型设计。我们期望看到更多NLP应用程序使用强化学习和无监督的学习方法。通过分布式表示,各种深层模型已经成为NLP问题的新型最先进的方法。我们预计这种趋势将持续更多更好的模型设计。我们期望看到更多NLP应用程序使用强化学习和无监督的学习方法。前者代表了用优化特定目标来训练NLP系统的更符合现实生活的方式,而后者则可以在大量未标记的数据中学习丰富的语言结构。我们也期望看到更多关于多模态学习的研究,因为在现实世界中,语言通常依赖于(或相关)其他的符号表示。Coupling symbolic 和 sub-symbolic AI是从NLP到自然语言理解的过程中前进的关键。 依靠机器学习,事实上,根据以往的经验来学习预测效果是比较好的,因为sub-symbolic 方法对相关性进行编码,其决策过程是依据概率的。 然而,自然语言的理解需要做到更多。
用诺姆乔姆斯基的话来说,"您无法通过大量数据获取科学知识,将其投入计算机并对其进行统计分析:这不是您了解事物的方式,您必须具有理论见解"。
网友评论