自然语言处理NLP 2022年最新综述:An introduction to Deep Learning in Natural Language Processing

论文题目:An introduction to Deep Learning in Natural Language Processing: Models, techniques, and tools

摘要

深度学习技术在NLP中的应用;NLP研究中的主要资源,包括软件,硬件和受欢迎的语料库;主要局限性

一、简而言之

如机器翻译,问答,摘要等。涉及模型,系统和算法的设计和实施,以解决理解人类语言的实际问题。

将NLP分为两个主要的子分支,分别是基础和应用研究:前者如语言建模,形态分析,句法处理或解析、语义分析;后者如从文本中自动提取相关信息(如命名实体及其之间的关系),语言之间的文本翻译,文档摘要,问题的自动回答,分类和文档的聚类。

深度学习引入NLP,替代传统ML算法:端到端训练且无需特定特征提取工程;能处理大量训练数据;但对与自然语言的语义分析有关的任务,语义注释数据有限(需要专业人员)

最近的模型(如回答或检测欺骗内容)超越人类在各种任务上的表现。但是仍存在问题,如计算成本,结果的可重复性以及缺乏可解释性。

仅考虑最近的调查(自2019年以来),包括:主要NLP任务的分类;当前问题和未来工作的分析(重点是可重复性);软件和硬件资源以及NLP中使用的主要语料库的描述。【一些相关工作】

二、任务和应用

序列分类:输入为一组序列,每个序列包括系列tokens,对应一个类别;相关示例(情感分析,根据其极性对简短的文本进行分类;文本分类,找文本的主题(体育,财务…);回答句子选择,从给定的段落/文本中选择最佳句子以回答输入问题)

成对序列分类:根据它们的相似性,语义和含义,比较和分类两个不同的序列,通常是一个二进制分类任务。输入为两个不同的序列,若表达相同的含义返回+1,否则-1;需要充分理解序列并提取有意义的语义表示,克服同义、多义等问题;相关示例(Quora问题对挑战,从Quora找到重复的问题)

单词标注:每个token附加一个标签,输出空间由输入的每个元素的标签序列组成;相关示例(命名实体识别(NER),从输入序列中确定相关实体(如名称,位置);经典问题回答,使用输入段落涉及的概率分布,选择包含答案的span;语音部分(pos)标记,将文本中的单词标记为对应语音的特定部分(如动词,名词,形容词))

seq2seq:使用输入序列生成输出序列。与单词标记不同,输入序列和输出序列不直接对齐,且需要生成新句子(尽管输入输出都包含序列,但可能是不相交的集合)

三、NLP的最新进展

过去十年中的主要问题之一是定义token,句子和文件的适当有效表示。早期的one-hot编码存在2个主要问题(输入词由巨大的向量描述,其尺寸取决于字典大小;不同单词仅由正交表示,而单词之间有任意可能的语义关系)

3.1 单词和句子向量

Word2Vec,一种学习分布式低维单词级表示(称为词向量或单词嵌入)的有效方法,由一个浅神经网络组成(包括CBOWSkip-gram两个模型)。被用于NER、情感分析、推荐、同义词识别等问题;提出的改进包括GloVe、fastText。

两篇单词嵌入的总结文献:前者从头总结,后者专注于跨语化环境

适当的句子和文本表示仍具有挑战性:词袋 BOW 为主要方法之一。它将文档d表示为组成该文档的(可数的)单词集,可以计算为组成该文档的独热单词向量的和。

有意义的文档和句子级别表示的新方法,可以分为两个类别,即无监督文档嵌入技术(通常受到Word2vec的启发)和监督方法:无监督词/句子向量旨在提取可用于各种任务的一般表示,这些方法可通过语言模型目标函数(即单词序列上的概率分布)在大规模的未标注语料库上进行训练;监督方法使用显式标签来开发下游任务中使用的有意义的表示。

无监督方法:通过单词矢量的简单平均池化得到句子向量;直接扩展Word2Vec的不同方法(如Doc2Vec /ParagraphVector);基于skip-gram相同结构的skip-thought向量(将原子单元由单词变为句子,试图根据目标句子重建上下文);基于带GRU单元RNN的编码解码结构;fastSent(扩展skip-thought向量,使用CNN编码器和RNN解码器的组合)

监督方法:大多基于递归或卷积神经网络,通常在词向量之上构建一个神经网络,结合预训练词嵌入的特性、神经架构的弹性和监督的强度;用于序列分类的 CNN 的典型结构:将静态词向量作为输入, 然后由卷积层学习单词之间的语义关系;相关应用有神经机器翻译(MT),将seq2seq作为编码-解码器,将句子而不是短语作为输入,但存在长句子信息不能被压缩在固定长度向量中的问题,因此添加注意力机制。

ELMo 语言模型嵌入 受双向 RNN 的启发,不是使用静态词向量,而是查看整个句子,通过双向语言模型生成上下文词嵌入。 该网络是在未标记数据上预训练的多层 LSTM,表明通过微调网络,在下游任务中使用内部表示机制,可改进基准测试结果。

3.2 预训练的Transformer模型

Transformer 是第一个完全基于注意力来绘制输入输出之间全局依赖关系的架构,取代了编码-解码器架构中最常用的循环层,质量好速度快。

现代 NLP 的两个主要支柱:在大型未标记语料库上预训练的语言模型;Transformer架构。

最流行的预训练Transformer模型之一是 BERT (Transformers的双向编码器表示),通过联合调节所有层的左右上下文,从未标记的文本中预训练深度双向表示。 预训练由两个语言模型目标驱动,即掩蔽语言模型 (MLM) 和下一句预测 (NSP)。在预训练阶段后,微调网络可用于下游任务,如序列分类、单词标注、seq2seq等。

这些方法依赖于两个主要优势:(i) 架构强基于允许读取和跟踪整个输入序列的自注意力机制; (ii)预训练允许网络读取和理解文本、语义及含义。

受BERT启发,提出的其他预训练Transformer,如RoBERTa、ALBERT和DistilBERT(架构相同,细微差别);基于相同概念的其他方法有GPT、Transformer-XL及其扩展XLNet。

跨多语言场景性能突出。 如在 104 种语言上预训练的多语言BERT(MBERT)在不使用明确的多语言训练目标的情况下开发跨语言表示非常稳健,且语言之间的词汇重叠在跨语言中的作用可忽略不计。

也被广泛用于文本生成,即根据给定段落生成文本的任务,如摘要、翻译、聊天机器人。常用方法有GPT(生成式预训练)。GPT使用带有掩码自注意力的 12 层仅解码器transformer结构,在7000本未出版的书籍上训练语言模型。GPT-2增加层数、参数及上下文大小,引入Task Conditioning 概念,可使用相同的无监督模型学习多个任务,即对不同任务的相同输入产生不同输出。GPT-3为具有 1750 亿参数的自回归语言模型,人类难以辨别其生成的新闻;在零样本和少样本设置中有效,但生成长文本时连贯性不足、推理成本高、引发伦理和社会学问题。

四、资源

4.1 软件

低级NLP模块(标记化、PoS标记…)和高级系统(文档分类器、模型…);根据功能集、社区维度、可用性,选择了以下主要工具:

NLTK(自然语言工具包):为超过 50 个语料库和词汇资源(如 WordNet)提供易于使用的接口,提供一套用于分类、标记化、词干提取、标记、解析和语义推理的文本处理库。

Gensim:用于主题建模、文档索引和大型语料库的相似性检索,包含流行算法的有效实现,如潜在语义分析 (LSA/LSI/SVD)、LDA、随机投影 (RP)、HDP,还包括几个Word2vec预训练模型。

SpaCy:可与 TensorFlow、PyTorch、scikit-learn、Gensim 和 Python的AI 生态系统的其他部分无缝互操作,还包含各种预训练的词向量。

Transformers:为自然语言理解 (NLU) 和自然语言生成 (NLG) 提供通用架构(BERT、GPT-2、RoBERTa、XLNet…),有超过32种预训练模型,涵盖100多种语言、与TensorFlow 2.0 和 PyTorch有互操作性。

CoreNLP:Java、提供对 6 种不同语言的支持

Stanza:包括CoreNLP Java包的Python接口,支持70多种语言,为生物医学和临床任务提供专门的工具和模型。

4.2 硬件

小型研究实验室:使用自己的机器和几个负担得起的GPU,如 Nvidia RTX 2080-Ti 或 1080-Ti;不昂贵且不需要专门的冷却系统,但这些 GPU 不是为运行 24/7 应用程序而设计的,且内存量有限

大中型研究实验室:利用高性能计算 (HPC) 集群;按需 Web 服务,如 Amazon Web Services (AWS) 或 Microsoft Azure,以小时成本提供优化的GPU。

为特定目的选择最合适的 GPU 的关键标准:训练速度(受 CUDA 内核数量、架构、频率…的影响);最大批量大小需要的内存;效率,即TDP;管理 GPU 的系统;GPU 的成本(初始硬件价格、维护和能源消耗)

一些流行的GPU:Nvidia Tesla V100(2017-2020 年深度学习最知名和最快的 GPU,16/32GiB内存);Nvidia Tesla A100(显着优于 V100,40GiB内存);Nvidia Tesla T4(速度较慢但功耗低,适用于大型 HPC);Nvidia Tesla K80(包含2个11GiB的GPU、便宜、采用被动冷却设计、可以有效安装在desktop上);Nvidia Tesla M60(包含2个8GiB的GPU,更贵)、Intel Xeon E5-2686-v4 (i)(CPU、包括2.3Ghz的18个物理内核和36个线程,支持用于快速矢量运算的AVX-2指令)

训练速度、综合考虑、功耗、其他方面

4.3 数据集

简要描述与NLP任务最相关的参考数据集(特别关注更适合DL方法的数据集)

问答:在给定问题和段落/短文本的情况下产生答案;主要有两个不同任务,答案句子选择(AS2)(选择构成/包含答案的句子)和机器阅读(MR)(识别代表答案的确切文本span)

前者基于语言学理论,利用单词重叠概念/基于冗余技术(简单的单词匹配优于各种复杂的系统);随着神经网络的出现,提出比较-聚合框架的模型(为问题和候选答案生成上下文表示,然后比较这些表示,选择更能代表问题的候选答案)

斯坦福问答数据集 (SQuAD-1.1)为流行的开放域MR数据集,由一组 Wikipedia 文章中提出的问题组成,每个问题的答案为相应阅读文章中的一段文本/span;SQuAD-2.0进一步改进,加入编写的相似的50,000个无法回答的问题,任务还需判断段落是否不支持答案(答案触发);但数据集中,包含问题的段落由一个简单的短段落组成,机器表现已超越人类。

得益于Transformer,QA主要朝着三个方向发展:由复杂用户生成问题和长段落组成的各种大型语料库,如Natural Question(NQ)、WikiQA、ASNQ;探索文本的提问者和回答者之间的交互(或对话),如上下文问答 (QuAC)和会话问答挑战 (CoQA) ;侧重于问题及其可理解性。

AS2的另一个相关资源MS-Marco,包含100,000个开放域问题和从Wikipedia检索到的相关文本。

情感分析:识别人们对特定事件或实体的感受,最受欢迎的应用涉及产品​​评论(预测用户对购买的商品或观看的电影的感受,公司可通过分析用户的评分和感受来改进其系统);SA通常是一个序列分类任务,给定输入文本,系统返回代表感觉的标签。

IMDB 电影评论数据集、Sentiment140、论文评论数据集、多模态(IEMOCAP、MOSI及其扩展CMU-MOSEI)

机器翻译:OPUS(来自网络的翻译文本集合)、WMT(最重要的 MT 评估平台)、至少数亿字的并行文本(ParaCrawl14 和 OpenSubtitles)、MultiUN(联合国翻译文件的集合)、OPUS-100(以英语为中心的多语言语料库,涵盖100种语言)、WIT3(用于研究TED演讲的多语言转录)、语音翻译(MuST-C、Europarl-ST)

生物医学文本挖掘 (BioNLP) :可提供结构化和快速访问可操作的生物医学信息;指文本挖掘和NLP技术如何应用​​于生物医学文献和文本的方法和研究(词分布无法直接从一般领域语料库转移到生物医学语料库)

生物医学 NER (BioNER):从生物医学文档中提取相关的生物医学实体,如蛋白质、化合物或生物体名称;相关语料库;Biocreative社区;简单BioNER任务(概念识别,为检索到的实体分配一个标识符;关系提取,提取不同实体间的关系)

生物医学语义索引 (BioSI):如根据层次标签(如MeSH)对生物医学文档进行分类;BioASQ社区(提供由专家手动注释的数千万个文档组成的大型语料库)

生物医学QA:回答与生物医学相关的问题;小的数据集,PubMedQA(专家手动注释,包含标记、未标记和人工生成的示例)、BioASQ;更大的语料库(问题大多是事实,无需太多推理就可以从上下文中提取答案)

GLUE和其他基准:用于评估模型在一组各种英语自然语言理解 (NLU) 任务上的性能;由9个不同任务组成,包括单句(语言可接受性、情感分析)和句子对任务(相似性和释义、语言推理);相应数据集的大小差异很大,其内容从多个领域提取,评估指标随任务和数据集特征而变化。

被视为评估模型学习通用语言知识能力的工具,但其进一步研究空间​​有限(最先进模型的性能最近已接近非专家人类水平),因此又提出SuperGLUE(由几个具有挑战性的 NLU 任务组成)

生物医学语言理解评估(BLUE)基准:由5个任务组成(句子相似度、命名实体识别、关系提取、文档多标签分类和推理),包含10个数据集,涵盖具有不同数据集大小和难度的生物医学和临床文本。

其他资源

NER:是最早开始采用定量评估的 NLP 任务之一;开放域文本中的相关实体通常是人、地点或组织;考虑英语以外的语言;如今主要吸引生物医学领域的研究人员。

词义消歧 (WSD): SensEval-1、SemEval 2015 Task 13

词性标记 (PoS) :Brown Corpus(第一个主要英语语料库,被用于有关词频和POS的多项研究)、Penn Treebank中的华尔街日报 (WSJ) 部分(包含 45 个不同的POS标签和500万个带注释的标记);最先进的深度学习模型出现后,PoS 热度下降。

如今的关键场景有:历史语料库、注释数据较差的语言、跨语言。

五、当前的问题和未来的方向

流行的Transformer不能完全编码整个文档,因为它们的复杂性与序列长度成二次方,并且它们的输入序列不能超过 512 个标记,这通常对应于单个段落。处理长文档的经典变体,如 Transformer-XL 和 Longformer(通过各种策略应用放松的经典自注意力)

计算成本高,预训练的Transformer通常包含 110-340百万个可学习参数,需要专门且昂贵的硬件。更轻的Transformer 和 蒸馏方法。

计算成本会对模型选择产生负面影响,并且很难对多个超参数(学习率、批量大小、预热调度器…)配置进行详尽的评估;而模型选择通常通过使用默认配置或单次运行来简化,会降低结果质量(降低了可重复性,如很少考虑统计显着性)

Transformer 和现代架构经常被用作黑盒工具,它们的输出很难解释。可解释性是 NLP 应用在医学等敏感领域的一个关键方面,也引起了研究重视。

NLP 的进一步研究方向包括:网络安全,如假新闻检测;工业应用,如虚拟助手(Alexa、Siri …);基于最近的变分自动编码器或生成对抗网络实例的文本生成。

你可能感兴趣的:(自然语言处理,深度学习,自然语言处理)