命名实体识别(NER)的任务是识别文本中属于预定义语义类型(如人、位置、组织等)的刚性指示符的提及。NER一直是许多自然语言应用的基础,如问答、文本摘要和机器翻译。早期的NER系统以人类工程设计特定领域的功能和规则为代价,在获得良好性能方面取得了巨大成功。近年来,在NER系统中通过采用连续实值向量表示和非线性处理的语义合成的深度学习,产生了最先进的性能。在本文中,我们对NER现有的深度学习技术进行了全面回顾。我们首先介绍NER资源,包括标记的NER语料库和现成的NER工具。然后,我们系统地对现有的工作进行了分类,并将其分为三类:输入的分布式表示、上下文编码器和标签解码器。接下来,我们调查在新的NER问题设置和应用中深度学习的最新应用技术的最具代表性的方法。最后,我们向读者介绍NER系统面临的挑战,并概述该领域的未来发展方向。
自然语言处理,命名实体识别,深度学习,调查
命名实体识别(NER)的任务是识别文本中属于预定义语义类型(如人、位置、组织等)的刚性指示器的提及[1]。NER不仅充当信息抽取(IE)的独立工具,而且还在各种自然语言处理(NLP)应用程序中发挥重要作用,例如文本理解[2],[3]、信息检索[4], [5]、自动文本摘要[6]、问答[7],机器翻译[8]和知识库构建[9]等。
NER的演变。第六次Message Understanding Conference(MUC-6)[10]首次使用“命名实体”(NE),其任务是识别文本中的组织、人和地理位置的名称以及货币、时间和百分比表达式。自从MUC6以来,人们对NER的兴趣越来越高,各种科学事件(例如CoNLL03 [11],ACE [12],IREX [13]和TREC Entity Track [14])都为此主题投入了很多精力。
关于问题的定义,Petasis et al. [15] 限制了命名实体的定义:“ NE是专有名词,充当某物或某人的名称”。语料库中存在大量的专有名词可以证明这一限制。 Nadeau and Sekine [1]声称**“命名”一词将任务限制为仅那些由一个或多个刚性指示符表示的实体**。在[16]中定义的刚性指示符包括专有名称和自然种类术语,例如生物物种和物质。尽管对NE的定义不尽相同,但研究人员已对可识别的NE类型达成了共识。我们通常将NEs分为两类:通用NEs(例如人和位置)和特定域NEs(例如蛋白质、酶和基因)。在本文中,我们主要关注英语的通用NEs。我们并不主张本文是详尽无遗的,也不代表所有语言的所有NER工作都具有代表性。
关于NER中应用的技术,主要有四个方面:1)基于规则的方法,由于它们依赖手工制定的规则,因此不需要带注释的数据; 2)无监督学习方法,该方法依靠无监督算法而无须手工标记训练示例; 3)基于特征的监督学习方法,该方法依赖于监督学习算法并经过精心的特征设计; 4)基于深度学习的方法,该方法以端到端的方式自动从原始输入中发现分类和检测所需的表示形式。我们简要介绍1),2)和3),并详细回顾4)。
进行这项调查的动机。近年来,深度学习(DL,又称深度神经网络)因其在各个领域的成功而备受关注。从Collobert et al. [17]开始,具有最少特征工程的基于DL的NER系统正在蓬勃发展。在过去的几年中,相当多的研究将深度学习应用于NER并相继提高了最先进的性能[17] – [21]。这一趋势促使我们进行调查,以报告NER研究中深度学习技术的当前状况。通过比较DL体系结构的选择,我们旨在确定影响NER性能的因素以及问题和挑战。
另一方面,尽管NER研究已经发展了几十年,但据我们所知,到目前为止,该领域的研究很少。 Nadeau and Sekine [1]可以说是最成熟的技术出版于2007年。该调查概述了从手工制定的规则到机器学习的技术趋势。 2013年,Marrero et al. [22]从谬论、挑战和机遇的角度总结了NER的工作。然后,Patawar and Potey [23]在2015年进行了简短回顾。最近的两项简短调查分别涉及新领域[24]和复杂实体提及[25] 。总而言之,现有调查主要涵盖基于特征的机器学习模型,但不包括基于DL的现代NER系统。与这项工作更密切相关的是2018年的两项最近调查[26],[27]。 [27]调查了NER的发展和进步。但是,它们不包括深度学习技术的最新进展。 Yadav and Bethard [26]根据句子中的单词表示对NER的最新进展进行了简短的调查。这项调查更多地侧重于输入的分布式表示形式(例如,字符级和单词级嵌入),并且没有回顾上下文编码器和标签解码器。近年来,在NER任务(如多任务学习、迁移学习、强化学习和对抗性学习)上应用深度学习的趋势也不明显。
这项调查的贡献。我们深入调查了NER中深度学习技术的应用,以启发和指导该领域的研究人员和实践者。具体来说,我们将NER语料库、现成的NER系统(来自学术界和工业界)以表格的形式合并在一起,为NER研究社区提供有用的资源。然后,我们对NER的深度学习技术进行全面的调查。为此,我们提出了一种新的分类法,该分类法沿着三个轴系统地组织了基于DL的NER方法:输入的分布式表示,上下文编码器(用于捕获标签解码器的上下文相关性)和标签解码器(用于预测给定顺序中词的标签)。此外,我们还调查了在新的NER问题设置和应用中最近应用的深度学习技术的最具代表性的方法。最后,我们向读者介绍NER系统面临的挑战,并概述该领域的未来发展方向。
我们首先给出NER问题的正式表述。然后,我们介绍广泛使用的NER数据集和工具。接下来,我们详细介绍评估指标并总结NER的传统方法。
命名实体是一个单词或短语,可以从一组具有类似属性的其他项目中清楚地标识一个项目[28]。命名实体的示例包括一般域中的组织名称,人员名称和位置名称。生物医学领域中的基因,蛋白质,药物和疾病名称。 NER是将文本中的命名实体定位和分类为预定义实体类别的过程。
形式上,给定令牌序列s = hw1,w2,…,wNi,NER将输出一个元组列表hIs,Ie,ti,每个都是s中提到的命名实体。这里,Is∈[1,N]和Ie∈[1,N]是命名实体提及的开始和结束索引。 t是预定义类别集中的实体类型。图1显示了一个NER系统从给定句子中识别出三个命名实体的示例。在MUC-6 [10]中首次定义NER时,任务是识别人员名称,组织,位置以及文本中的时间,货币和百分比表示。请注意,该任务专注于一小组粗糙的实体类型,每个命名实体一个类型。我们称这种NER任务为粗粒度NER [10],[11]。最近,一些细粒度的NER任务[29]-[33]关注的是一组更大的实体类型,其中一个提要可能被分配了多种细粒度类型。
NER充当了各种下游应用程序(例如信息检索,问题解答,机器翻译等)的重要预处理步骤。在这里,我们以语义搜索为例来说明NER在支持各种应用程序中的重要性。语义搜索是指一系列技术,这些技术使搜索引擎能够理解用户查询背后的概念,含义和意图[34]。根据[4],大约71%的搜索查询包含至少一个命名实体。在搜索查询中识别命名实体将有助于我们更好地了解用户意图,从而提供更好的搜索结果。为了将命名实体合并到搜索中,Raviv等人提出了一种基于实体的语言模型[34],该模型考虑了单个术语以及已注释为实体的术语序列(在文档和查询中)。 [35]。也有研究利用命名实体来增强用户体验,例如查询推荐[36],查询自动完成[37],[38]和实体卡[39],[40]。
高质量注释对于模型学习和评估都至关重要。在下文中,我们总结了英语NER的广泛使用的数据集和现成的工具。
带标记的语料库是包含一个或多个实体类型的注释的文档的集合。表1列出了一些广泛使用的数据集,包括其数据源和实体类型(也称为标签类型)的数量。总结于表1中,2005年之前,数据集主要是通过注释具有少量实体类型的新闻文章来开发的,这些文章适合于粗粒度的NER任务。之后,在各种文本源上开发了更多数据集,包括Wikipedia文章,对话和用户生成的文本(例如T-weet和YouTube注释以及W-NUT中的StackExchange帖子)。标签数类型显着变大,例如HYENA中的505。我们还列出了一些特定于领域的数据集,特别是在PubMed和MEDLINE文本上开发的。实体类型的数量范围从NCBI-Disease中的1到GENIA中的36。
我们注意到,许多最近的NER工作报告了它们在CoNLL03和OntoNotes数据集上的性能(请参见表3)。 CoNLL03包含两种语言的路透社新闻注释:英语和德语。英文数据集包含大部分体育新闻,并在四种实体类型(人,位置,组织和其他)中进行了注解[11]。 OntoNotes项目的目标是注释大型语料库,包括各种类型(博客,新闻,脱口秀,广播,Usenet新闻组和对话电话语音)以及结构信息(语法和谓词参数结构)和浅语义(单词)与本体和共指相关的意义)。从发行版1.0到发行版5.0,共有5个版本。这些文本带有18种实体类型的注释。我们还注意到两个Github存储库1,它们托管了一些NER语料库。
在线提供了许多带有预训练模型的NER工具。表2按学术界(顶部)和行业(底部)总结了英语NER的热门语言。
NER系统通常通过将其输出与人工注释进行比较来进行评估。可以通过精确匹配或宽松匹配来量化比较。
NER本质上涉及两个子任务:边界检测和类型识别。在“完全匹配评估” [11],[41],[42]中,正确识别的实例需要系统同时正确识别其边界和类型。更具体地说,假阳性(FP),假阴性(FN)和真阳性(TP)的数量用于计算Precision,Recall和F得分。
•误报(FP):由NER系统返回但未出现在真实情况下的实体。
•假阴性(FN):不是由NER系统返回但出现在真实情况下的实体。
•真实正向(TP):由NER系统返回的实体,也出现在基本事实中。
精度是指系统结果被正确识别的百分比。召回率是指系统正确识别的全部实体的百分比。
结合了精度和召回率的度量是精度和召回率的调和平均值,即传统的Fmeasure或平衡F分数:
此外,宏平均F分数和微平均F分数都考虑了跨多个实体类型的性能。宏平均F分数可独立计算不同实体类型的F分数,然后取F分数的平均值。微观平均F分数汇总了所有实体类型中的各个假阴性,假阳性和真阳性,然后将它们应用于统计。后者可能会受到语料库中大类识别实体的质量的严重影响。
MUC-6 [10]定义了一个宽松匹配评估:如果为一个实体分配了正确的类型而不考虑其边界,则只要该类型与基本真值边界重叠,就认为该类型正确。无论实体的类型分配如何,正确的边界都将归功于此。然后ACE [12]提出了一个更复杂的评估程序。它解决了一些问题,例如部分匹配和错误的类型,并考虑了命名实体的子类型。但是,这是有问题的,因为只有在参数固定的情况下,最终分数才具有可比性[1],[22],[23]。复杂的评估方法不直观,使错误分析变得困难。因此,复杂的评估方法并未在最近的研究中广泛使用。
传统的NER方法大致分为三大类:基于规则的,无监督学习和基于特征的监督学习方法[1],[26]。
基于规则的NER系统依赖于手工制定的规则。可以基于特定领域的地名词典[9],[43]和句法词法模式[44]设计规则。金[45]提出使用布里尔规则推论方法进行语音输入。该系统根据Brill的词性标记器自动生成规则。在生物医学领域,Hanisch等人。 [46]提出了ProMiner,它利用预处理的同义词词典来识别生物医学文本中的蛋白质提及和潜在基因。 Quimbaya等。 [47]提出了一种基于字典的电子健康记录中NER的方法。实验结果表明,该方法可提高查全率,同时对精度的影响有限。
其他一些基于规则的著名NER系统包括LaSIE-II [48],NetOwl [49],Facile [50],SAR [51],FASTUS [52]和LTG [53]系统。这些系统是主要基于手工制定的语义和句法规则来识别实体。当词汇详尽无遗时,基于规则的系统可以很好地工作。由于特定于域的规则和不完整的词典,经常会从此类系统中观察到高精度和低查全率,并且这些系统无法转移到其他域。
无监督学习的一种典型方法是聚类[1]。基于聚类的NER系统基于上下文相似性从聚类组中提取命名实体。关键思想是,可以使用在大型语料库上计算出的词汇资源,词汇模式和统计信息来推断提及的命名实体。 Collins等。 [54]观察到,使用未标记的数据将对监督的要求减少到仅7条简单的“种子”规则。然后作者提出了两种用于命名实体分类的无监督算法。同样,KNOWITALL [9]利用一组谓词名称作为输入,并从一小组通用提取模式中引导其识别过程。
Nadeau等。 [55]提出了一个非监督系统的地名词典建设和命名实体歧义解决方案。该系统基于简单而高效的启发式方法,结合了实体提取和歧义消除功能。另外,Zhang和Elhadad [44]提出了一种无监督的方法来从生物医学文本中提取命名实体。他们的模型不是监督,而是求助于术语,语料库统计(例如逆文档频率和上下文向量)和浅层语法知识(例如名词短语分块)。在两个主流生物医学数据集上的实验证明了其无监督方法的有效性和通用性。
应用监督学习,NER被转换为多类分类或序列标记任务。给定带注释的数据样本,功能经过精心设计以表示每个训练示例。然后利用机器学习算法来学习模型,以从看不见的数据中识别出相似的模式。
特征工程在有监督的NER系统中至关重要。特征向量表示是对文本的抽象,其中一个或多个布尔值,数字值或标称值[1],[56]代表一个单词。单词级功能(例如,大小写,词法和词性标记)[57]-[59],列表查找功能(例如,Wikipedia地名词典和DBpedia地名词典)[60]-[63],以及文档和语料库特征(例如,本地语法和多次出现)[64]-[67]已在各种有监督的NER系统中广泛使用。 [1],[28],[68]中讨论了更多功能设计。
基于这些功能,许多机器学习算法已在有监督的NER中应用,包括隐马尔可夫模型(HMM)[69],决策树[70],最大熵模型[71],支持向量机(SVM)[72]。和条件随机字段(CRF)[73]。
Bikel等。 [74] [75]提出了第一个基于HMM的NER系统,名为IdentiFinder,用于识别和分类名称,日期,时间表达式和数字量。此外,Szarvas等。 [76]通过使用C4.5决策树和AdaBoostM1学习算法开发了一种多语言NER系统。一个主要优点是它提供了机会通过特征的不同子集训练几个独立的决策树分类器,然后通过多数表决方案组合其决策。 Borthwick等。 [77]通过应用最大熵理论提出了“最大熵命名实体”(MENE)。 MENE能够在做出标记决策时利用极为广泛的知识资源。其他使用最大熵的系统可以在[78]-[80]中找到。
McNamee和Mayfield [81]使用了1000种与语言相关的功能和258种拼字法和标点功能来训练SVM分类器。每个分类器都会做出二进制决定,即当前令牌是否属于八个类之一,即PERSON,ORGANIZATION,LOCATION和MIS标签的B-(开始),I-(内部)。在预测实体标签时,SVM不考虑“相邻”词。 CRF考虑了上下文。 McCallum和Li [82]提出了NER中CRF的特征归纳方法。在CoNLL03上进行了实验,英语成绩达到了84.04%。克里希南和曼宁[67]提出了一种基于两个耦合CRF分类器的两阶段方法。第二个CRF利用从第一个CRF的输出中得出的潜在表示。我们注意到基于CRF的NER已广泛应用于各个领域的文本,包括生物医学文本[58],[83],tweets [84],[85]和化学文本[86]。
近年来,基于DL的NER模型逐渐占据主导地位,并取得了最新的成果。与基于特征的方法相比,深度学习有助于自动发现隐藏的特征。接下来,我们首先简要介绍什么是深度学习,以及为什么要使用NER进行深度学习。然后,我们调查基于DL的NER方法。
深度学习是机器学习的一个领域,它由多个处理层组成,可以学习具有多个抽象级别的数据表示[87]。典型的层是由前向通过和后向通过组成的人工神经网络。前向传递计算来自上一层的输入的加权总和,并将结果传递给非线性函数。向后传递是通过导数链规则来计算目标函数相对于模块多层堆栈权重的梯度。深度学习的主要优势是表示学习的能力以及向量表示和神经处理所赋予的语义组成。这使机器可以获取原始数据,并自动发现分类或检测所需的潜在表示和处理[87]。
将深度学习技术应用于NER有三个核心优势。首先,NER受益于非线性变换,该变换生成从输入到输出的非线性映射。与线性模型(例如对数线性HMM和线性链CRF)相比,基于DL的模型能够通过非线性激活函数从数据中学习复杂而复杂的特征。其次,深度学习为设计NER功能节省了大量精力。传统的基于功能的方法需要大量的工程技术和领域专业知识。另一方面,基于DL的模型可有效地从原始数据中自动学习有用的表示形式和潜在因素。第三,可以通过梯度下降在端到端范式中训练深度神经NER模型。此属性使我们能够设计可能复杂的NER系统。
为什么我们在这项调查中使用新的分类法?现有的分类法[26],[88]基于字符级编码器,单词级编码器和标签解码器。我们认为“单词级编码器”的描述不准确,因为在基于DL的典型NER模型中两次使用了单词级信息:1)单词级表示用作原始特征,以及2)单词级表示(以及字符级表示形式)用于捕获上下文相关性以进行标签解码。在这项调查中,我们总结了NER的最新进展,其总体架构如图2所示。输入的分布式表示形式考虑了单词和字符级的嵌入,以及结合了对POS标签和地名词典有效的附加功能。基于基础的方法。上下文编码器将使用CNN,RNN或其他网络捕获上下文相关性。 T ag解码器预测输入序列中令牌的标签。例如,在图2中,每个令牌都使用具有其类型的命名实体的B-(开始),I-(内部),E-(结束),S-(单个),或O-(外部)的命名实体。请注意,还有其他标记方案或标记符号,例如BIO。还可以训练标签解码器以检测实体边界,然后将检测到的文本跨度分类为实体类型。
表示单词的一个直接选择是单向矢量表示。在一个热向量空间中,两个不同的词具有完全不同的表示形式并且是正交的。分布式表示形式表示低维实值密集向量中的单词,其中每个维表示一个潜在特征。分布式表示法是自动从文本中学习的,它捕获了单词的语义和句法属性,而这些属性并没有明确显示在输入到NER。接下来,我们回顾在NER模型中使用的三种类型的分布式表示形式:单词级,字符级和混合表示。
一些研究[89]-[91]采用词级表示,通常通过无监督算法(例如连续词袋(CBOW)和连续跳过语法模型[92])对大量文本进行预训练。最近的研究[88],[93]已经表明了这种预训练词嵌入的重要性。作为输入,可以在NER模型训练期间固定或进一步微调预训练的词嵌入。常用的词嵌入包括Google Word2Vec,斯坦福GloVe,Facebook fastText和SENNA。
姚等。 [94]提出了Bio-NER,一种基于深度神经网络架构的生物医学NER模型。使用跳过语法模型在PubMed数据库上训练Bio-NER中的单词表示形式。该词典在600维向量中包含205,924个单词。 Nguyen等。 [89]使用word2vec工具包从Gigaword语料库学习英语的单词嵌入,并补充了来自BOLT(广泛使用语言技术)的新闻组数据。翟等。 [95]设计了一个用于序列分块的神经模型,它由两个子任务组成:分段和标记。可以用SENNA嵌入或随机初始化的嵌入来馈送神经模型。
郑等。 [90]使用单个模型联合提取实体和关系。这个端到端模型使用word2vectakeit在NYT语料库上学习到的单词嵌入。 Strubell等。 [91]提出了一种基于迭代扩张卷积神经网络(ID-CNN)的标记方案。他们的模型中的查找表通过在SENNA语料库上通过skip-n-gram训练的100维嵌入来初始化。在他们提出的用于提取实体及其关系的神经模型中,Zhou等人。 [96]使用了来自Google的预训练的300维单词向量。另外,GloV e [97],[98]和fastText [99]也广泛用于NER任务。
几项研究[100] [101]不仅将单词级表示作为基本输入,还结合了从端到端神经模型中学到的基于字符的单词表示。已经发现字符级表示对于利用显式子单词级信息(例如前缀和后缀)很有用。另一个优势字符级表示的一个特点是它自然地处理了言外之意。因此,基于字符的模型能够推断出看不见的单词的表示形式,并共享词素级规则性的信息。有两种广泛使用的用于提取字符级表示的体系结构:基于CNN和基于RNN的模型。图3(a)和3(b)说明了两种架构。
Ma等。 [97]利用CNN提取单词的字符级表示。然后,在将字符表示向量与单词嵌入进行串联之前,将其馈送到RNN上下文编码器中。同样,李等。 [98]应用了一系列的卷积和高速公路层来生成单词的字符级表示。单词的最终嵌入被馈送到双向递归网络。杨等。 [102]提出了一种用于NER的神经重排模型,其中在字符嵌入层的顶部使用了具有固定窗口大小的卷积层。最近,彼得斯等。 [103]提出了ELMo单词表示,它是在具有字符卷积的两层双向语言模型的基础上计算的。
对于基于RNN的模型,长短期记忆(LSTM)和门控循环单元(GRU)是基本单元的两个典型选择。库鲁等。 [100]提出了CharNER,一种独立于语言的NER的字符级标记器。 CharNER将句子视为字符序列,并利用LSTM提取字符级表示形式。它为每个字符而不是每个单词输出标签分布。然后从字符级标签获得单词级标签。他们的结果表明,以字符为主要表示优于以单词为基本输入单位。 Lample等。 [19]利用双向LSTM提取单词的字符级表示。类似于[97],字符级表示与单词查找表中的预训练单词级嵌入连接在一起。 Gridach [104]在识别生物医学命名实体中研究了词嵌入和字符级表示。 Rei等。 [105]使用门控机制将字符级表示与单词嵌入相结合。通过这种方式,Rei的模型可以动态地决定从字符或单词级组件中使用多少信息。 Tran等。 [101]引入了具有堆栈残差LSTM和可训练偏差解码的神经网络NER模型,其中从词嵌入和字符级RNN中提取词特征。杨等。 [106]开发了一个模型,以统一的方式处理跨语言和多任务联合训练。他们采用了深度双向GRU来学习丰富的形态单词的字符序列表示。然后,将字符级表示和单词嵌入连接起来以生成单词的最终表示。
使用递归神经网络进行语言建模的最新进展使得将语言建模为字符分布成为可能。 Akbik等人的上下文字符串嵌入。 [107]使用字符级神经语言模型为句子上下文中的字符串生成上下文嵌入。一个重要的特性是,嵌入内容由其周围的文本进行上下文化,这意味着同一单词根据其上下文使用而具有不同的嵌入内容。图4说明了在句子上下文中提取单词“ Washington”的上下文字符串嵌入的体系结构。
除了单词级和字符级的表示法外,一些研究还将其他信息(例如,地名词典[18],[108],词汇相似度[109],语言依赖性[110]和视觉特征[111])纳入最终的表示法中。在输入上下文编码层之前换句话说,以混合方式将基于DL的表示与基于特征的方法结合在一起。添加额外的信息可能会导致NER性能的提高,但代价是会损害这些系统的通用性。
NER的神经模型的使用是由[17]提出的,其中提出了基于单词序列的时间卷积神经网络的体系结构。当合并常见的先验知识(例如,地名词典和POS)时,仅使用词级表示形式,生成的系统就会优于基线。在Huang等人的BiLSTM-CRF模型中。 [18],用于NER任务的特征有四种:拼写特征,上下文特征,词嵌入和地名词典特征。他们的实验结果表明,这些额外功能(即地名词典)可提高标记的准确性。 Chiu和Nichols [20]的BiLSTM-CNN模型结合了双向LSTM和字符级CNN。除了单词嵌入以外,该模型还使用其他单词级别的功能(大写,词典)和字符级别的功能(表示字符类型的4维向量:大写,小写,标点符号等)。
Wei等。 [112]提出了一种基于CRF的神经系统,用于识别和标准化疾病名称。这个系统除了单词嵌入以外,还采用了丰富的功能,包括单词,POS标签,分块和单词形状功能(例如,词典和词法功能)。 Strubell等。 [91]将100维嵌入与5维字形矢量连接起来(例如,全部大写,未大写,首字母大写或包含大写字母)。 Lin等。 [113]将字符级表示,词级表示和句法词表示(即POS标签,依赖角色,词位置,头位置)连接起来,形成一个综合的词表示。 Aguilar等人提出了NER的多任务方法。 [114]。这种方法利用CNN在字符级别捕获拼写特征和字形。对于单词级别的语法和上下文信息,例如POS和单词嵌入,该模型实现了LSTM体系结构。 Jansson和Liu [115]提出将潜在狄利克雷分配(LDA)与关于字符级和单词级嵌入的深度学习相结合。
徐等。 [116]提出了一种基于固定大小的普通遗忘编码(FOFE)的NER局部检测方法,[117] FOFE探索了每个片段及其上下文的字符级和单词级表示。在Moon等人的多模式NER系统中。 [118],对于嘈杂的用户生成的数据(例如推文和Snapchat标题),单词嵌入,字符嵌入和视觉功能会与模式关注结合在一起。 Ghaddar和Langlais [109]发现,词法特征在神经NER系统中被大部分丢弃是不公平的。他们提出了一种替代的词汇表示形式,可以离线进行训练,并且可以将其添加到任何神经NER系统中。使用120维向量为每个单词计算词法表示,其中每个元素编码该单词与实体类型的相似性。最近,Devlin等人。 [119]提出了一种称为BERT的新语言表示模型,即来自变压器的双向编码器表示。 BERT使用屏蔽语言模型来启用预训练的深度双向表示。对于给定的令牌,其输入表示形式是通过将相应的位置,片段和令牌嵌入相加来构成的。请注意,预先训练的语言模型嵌入通常需要大规模的语料库进行训练,并且本质上并入辅助嵌入(例如,位置和分段嵌入)。因此,我们在本次调查中将这些语境化的语言模型嵌入归类为混合表示。
在这里,我们现在回顾广泛使用的上下文编码器体系结构:卷积神经网络,递归神经网络,递归神经网络和深度变换器。
Collobert等。 [17]提出了一种句子逼近网络,其中考虑到整个句子对单词进行标记,如图5所示。在输入表示阶段之后,将输入序列中的每个单词嵌入到N维向量中。然后使用卷积层在每个单词周围产生局部特征,并且卷积层的输出大小取决于句子中单词的数量。通过组合由卷积层提取的局部特征向量来构造全局特征向量。全局特征向量的维数是固定的,与句子的长度无关,以便应用后续的标准仿射图层。广泛使用两种方法来提取全局特征:对句子中的位置(即“时间”步长)进行最大值或平均运算。最后,将这些固定大小的全局特征输入到标签解码器中,以计算网络输入中单词的所有可能标签的分配分数。在Collobert的工作之后,Yao等人。 [94]提出将Bio-NER用于生物医学NER。 Wu等。 [120]利用卷积层生成由许多全局隐藏节点表示的全局特征。然后将局部特征和全局特征都输入到标准仿射网络中,以识别临床文本中的命名实体。
周等。 [96]观察到,在RNN中,后一个词比前一个词对最终句子表示的影响更大。但是,重要的单词可能出现在句子中的任何位置。在他们提出的名为BLSTMRE的模型中,BLSTM用于捕获长期依赖性并获得输入序列的完整表示。然后,利用CNN来学习高级表示,然后将其输入到S型分类器中。最后,整个句子表示(由BLSTM生成)和关系表示(由S型分类器生成)被馈送到另一个LSTM中以预测实体。
传统上,长度为N的序列的LSTM的时间复杂度以并行方式为O(N)。 Strubell等。 [91]提出了ID-CNN,称为迭代膨胀卷积神经网络,由于能够处理更大的上下文和结构化的预测,它的计算效率更高。图6显示了一个扩张的CNN块的架构,其中四个堆叠的宽度为3的扩张的卷积产生令牌表示。实验结果表明,与Bi-LSTM-CRF相比,ID-CNN的测试时间加快了14-20倍,同时保持了相当的准确性。
递归神经网络及其变体,例如门控递归单元(GRU)和长期短期记忆(LSTM),已证明在建模顺序数据方面取得了令人瞩目的成就。特别是,双向RNN在特定的时间范围内有效地利用了过去的信息(通过正向状态)和将来的信息(通过反向状态)[18]。因此,由双向编码的令牌RNN将包含来自整个输入句子的证据。因此,双向RNN成为构成文本的深层上下文相关表示的事实上的标准[91],[97]。图7显示了基于RNN的上下文编码器的典型架构。
黄等人的工作。 [18]率先使用双向LSTM CRF体系结构对标记任务(POS,分块和NER)进行排序。继[18]之后,大量的作品[19],[20],[89],[90],[95] – [97],[101],[105],[112],[113]应用了BiLSTM作为编码序列上下文信息的基本架构。杨等。 [106]在字符和单词级别都采用了深层GRU来编码形态和上下文信息。他们通过共享体系结构和参数,进一步将模型扩展到跨语言和多任务联合训练。
Gregoric等。 [121]在同一输入上采用了多个独立的双向LSTM单元。他们的模型通过使用模型间正则化术语来促进LSTM单元之间的多样性。通过将计算分布在多个较小的LSTM中,他们发现参数总数有所减少。最近,一些研究[122],[123]设计了用于嵌套命名实体识别的基于LSTM的神经网络。 Katiyar和Cardie [122]提出了对基于标准LSTM的序列标签模型的修改,以处理嵌套的命名实体识别。 Ju等。 [123]提出了一种神经模型,通过动态堆叠平坦的NER层直到没有外部实体被提取来识别嵌套实体。每个平坦的NER层都使用双向LSTM来捕获顺序上下文。该模型将LSTM层的输出合并到当前平面NER层中,以构造检测到的实体的新表示形式,然后将其输入到下一个平面NER层中。
递归神经网络是非线性自适应模型,能够通过以拓扑顺序遍历给定的结构来学习深度的结构化信息。命名实体与语言成分(例如名词短语)高度相关[98]。但是,典型的顺序标注方法很少考虑句子的短语结构。为此,李等人。 [98]提出对NER的选区结构中的每个节点进行分类。该模型递归地计算每个节点的隐藏状态向量,并通过这些隐藏向量对每个节点进行分类。图8显示了如何为每个节点递归计算两个隐藏状态特征。自下而上的方向计算每个节点的子树的语义组成,自上而下的对应对象将包含该子树的语言结构传播到该节点。给定每个节点的隐藏矢量,网络将计算实体类型加上特殊的非实体类型的概率分布。
语言模型是描述序列生成的一系列模型。给定令牌序列(t1,t2,…,tN),前向语言模型通过对令牌的历史概率(t1,…,tk-1)建模来计算序列的概率[21] :
后向语言模型与前向语言模型相似,不同之处在于后向语言模型以相反顺序在序列上运行,并根据给定的未来上下文预测前一个标记:
对于神经语言模型,可以通过递归神经网络的输出来计算令牌tk的概率。在每个位置k,我们可以获得两个上下文相关的表示(向前和向后),然后将它们组合为嵌入标记tk的最终语言模型。这种语言模型增强的知识已通过经验验证,可用于许多序列标记任务[21],[103],[124]-[127]。
Rei [124]提出了一个具有次要目标的框架-学习预测数据集中每个单词的周围单词。图9展示了带有NER任务的简短句子的体系结构。在每个时间步长(即令牌位置),网络都经过优化以预测序列中的前一个令牌,当前标签和下一个令牌。添加的语言建模目标鼓励系统学习更丰富的功能表示,然后将这些功能表示重新用于序列标记。
彼得斯等。 [21]提出了TagLM,一种语言模型增强序列标记器。该标记器为序列标记任务的输入序列中的每个标记都考虑了预训练的词嵌入和双向语言模型嵌入。图10显示了LM-LSTM-CRF模型[125],[126]的体系结构。语言模型和序列标记模型以多任务学习的方式共享相同的字符级层。来自字符级嵌入,预训练的单词嵌入和语言模型表示的向量被串联起来,并输入到单词级LSTM中。实验结果表明,多任务学习是指导语言模型学习特定于任务的知识的有效方法。
图4显示了使用Akbik等人的神经字符级语言建模进行上下文字符串嵌入。 [107]。他们利用前向递归神经网络的隐藏状态来创建上下文化的词嵌入。该模型的主要优点是字符级语言模型独立于标记化和固定的词汇表。彼得斯等。 [103]提出了ELMo表示,该表示是在具有字符卷积的两层双向语言模型的基础上计算的。这种新型的深层上下文化词表示法能够对词用法的复杂特征(例如,语义和语法)以及跨语言上下文的用法变化(例如,多义性)进行建模。
神经序列标记模型通常基于复杂的卷积或循环网络,该网络由编码器和解码器组成。变压器,由Vaswani等人提出。 [128],完全省去了递归和卷积。变压器利用堆叠的自我注意和逐点,完全连接的层来构建编码器和解码器的基本块。在各种任务[128] – [130]上进行的实验表明,变压器的质量更高,而所需的培训时间却少得多。
基于变压器,Radford等。 [131]提出了用于语言理解任务的通用预训练变压器(GPT)。 GPT有两个阶段的培训程序。首先,他们对未标记的数据使用带有Transformers的语言建模目标来学习初始参数。然后,他们使用监督的目标将这些参数调整为目标任务,从而对预训练模型进行最小的更改。与GPT(从左到右的体系结构)不同,提出了来自变压器的双向编码器表示(BERT),通过在所有层的左上下文和右上下文上共同进行条件化来预训练深度双向变压器[119]。图11总结了BERT [119],GPT [131]和ELMo [103]。此外,Baevski等。 [132]提出了一种基于双向变压器的克洛什驱动的预训练机制,该克洛兹用克洛塞式目标进行训练,并在所有左右上下文的情况下预测中心词。
使用Transformer预训练的这些语言模型嵌入正在成为NER的新范例。首先,这些嵌入是上下文相关的,可以用来代替传统的嵌入,例如Google Word2vec和Stanford GloV e。一些研究[108],[110],[133]-[136]通过利用传统嵌入和语言模型嵌入的组合获得了令人鼓舞的性能。其次,这些语言模型嵌入可以通过一个附加的输出层进行进一步的微调,以完成包括NER和组块在内的各种任务。特别是,李等人。 [137],[138]将NER任务定义为机器阅读理解(MRC)问题,可以通过微调BERT模型来解决。
标签解码器是NER模型的最后阶段。它使用上下文相关的表示作为输入和产生与输入序列相对应的标签序列。图12总结了标签解码器的四种体系结构:MLP + softmax层,条件随机字段(CRF),递归神经网络和指针网络。
NER通常被表述为序列标记问题。使用多层Perceptron + Softmax层作为标签解码器层,序列标记任务将转换为多类分类问题。每个单词的标签是根据上下文相关表示独立预测的,无需考虑其邻居。
较早引入的许多NER模型[91],[98],[116],[119],[139]使用MLP + Softmax作为标签解码器。作为域特定的NER任务,Tomori等人。 [140]使用softmax作为标签解码器来预测日本象棋游戏的游戏状态。他们的模型同时接受来自文本的输入和来自国际象棋棋盘的输入(9×9正方形,有40种14种不同类型的棋子),并预测21种特定于该游戏的命名实体。文本表示和游戏状态嵌入都被馈送到softmax层,以使用BIO标签方案预测命名实体。
条件随机场(CRF)是一个以观察序列为整体条件的随机场[73]。 CRF已广泛用于基于特征的监督学习方法中(请参见第2.4.3节)。许多基于深度学习的NER模型使用CRF层作为标签解码器,例如,在双向LSTM层[18],[90],[103],[141]顶部和CNN层[17]顶部,[91],[94]。表3列出了CRF是标签解码器最常见的选择,[107]使用CRF标签解码器可以实现CoNLL03和OntoNotes5.0的最新性能。
但是,CRF无法充分利用段级别的信息,因为段的内部属性无法用单词级别的表示形式进行完全编码。卓等。 [142]然后提出了门控递归半马尔可夫CRF,其直接对片段而不是单词进行建模,并通过门控递归卷积神经网络自动提取片段级特征。最近,Ye和Ling [143]提出了用于神经序列标记的混合半马尔可夫CRF。这种方法采用片段而不是单词作为特征提取和过渡建模的基本单位。单词级标签用于得出细分得分。因此,这种方法能够利用词级和句段级信息进行句段分数计算。
一些研究[88] – [90],[96],[144]探索了RNN来解码标签。沉等。 [88]报道,当实体类型的数量很大时,RNN标签解码器的性能优于CRF,并且训练速度更快。图12(c)说明了基于RNN的标签解码器的工作流程,该流程用作语言模型以贪婪地生成标签序列。第一步的[GO]符号作为y1提供给RNN解码器。随后,在每个时间步骤i,RNN解码器根据前一步标签yi,前一步解码器隐藏状态hDec i和当前步编码器隐藏状态hEnc i + 1计算当前解码器隐藏状态hDec i + 1;当前输出标签yi + 1通过使用softmax损失函数进行解码,并进一步作为输入提供给下一个时间步长。最后,我们获得所有时间步长的标签序列。
指针网络应用RNN来学习具有与输入序列中的位置相对应的离散令牌的元素的输出序列的条件概率[145],[146]。它通过使用softmax概率分布作为“指针”来表示可变长度词典。翟等。 [95]首先应用指针网络来产生序列标签。如图12(d)所示,指针网络首先识别块(或段),然后对其进行标记。重复该操作,直到处理了输入序列中的所有单词。在图12(d)中,给定起始标记“ ”, 首先识别“ Michael Jeffery Jordan”细分,然后将其标记为“ PERSON”。分割和标记可以通过指针网络中的两个独立的神经网络来完成。接下来,将“ Michael Jeffery Jordan”作为输入并输入到指针网络中。结果,段“是”被识别并标记为“ O”。
体系结构摘要。表3总结了根据神经网络NER的架构选择而进行的最新工作。 BiLSTM-CRF是使用深度学习的NER最常见的体系结构。方法[132]以Cloze风格预先训练了双向Transformer模型,在CoNLL03上达到了最新的性能(93.5%)。 BERT和骰子损失[138]的工作在OntoNotes5.0上达到了最先进的性能(92.07%)。
NER系统的成功很大程度上取决于其输入表示。集成或微调预训练的语言模型嵌入正成为神经NER的新范例。利用这些语言模型嵌入时,可以显着提高性能[103],[107],[108],[132]-[138]。表3的最后一列列出了一些基准数据集的F分数报告的性能。虽然正式文件(例如CoNLL03和OntoNotes5.0)的F分数很高,但噪声数据(例如W-NUT17)的NER仍然具有挑战性。
体系结构比较。我们从三个角度讨论利弊:输入,编码器和解码器。首先,关于是否应该使用外部知识或如何将其集成到基于DL的NER模型方面尚未达成共识。一些研究[108],[110],[133],[142]表明,外部知识可以提高NER的表现。但是,缺点也很明显:1)获取外部知识是劳动密集型的(例如,地名词典)或计算上昂贵的(例如,依赖项); 2)集成外部知识会对端到端学习产生不利影响,并损害基于DL的系统的通用性。
其次,当在大型语料库上对Transformer进行预训练时,Transformer编码器比LSTM更有效。如果未预先训练且训练数据有限,则变压器将无法完成NER任务[147],[148]。另一方面,当序列n的长度小于表示形式d的维数(复杂度:自注意力O(n2·d)和递归O(n·d2))时,Transformer编码器比递归层更快[128] 。
第三,RNN和指针网络解码器的主要缺点在于贪婪地解码,这意味着当前步骤的输入需要前一步的输出。此机制可能会对速度产生重大影响,并且是并行化的障碍。 CRF是标签解码器的最常见选择。当采用非语言模型(即非上下文化)嵌入(例如Word2vec和GloVe)时,CRF可以捕获标签转换相关性。但是,当实体类型的数量很大时,CRF在计算上可能会很昂贵。更重要的是,当采用上下文化语言模型嵌入(例如BERT和ELMo [137],[139])时,与softmax分类相比,CRF并不总是导致更好的性能。
对于最终用户,选择哪种体系结构取决于数据和域任务。如果数据丰富,则可以考虑从头开始使用RNN训练模型,并对上下文语言模型进行微调。如果数据稀缺,则采用传输策略可能是更好的选择。对于新闻专线领域,有许多可用的预训练的现成模型。对于特定领域(例如,医学和社交媒体),使用特定领域的数据对通用的上下文化语言模型进行微调通常是一种有效的方法。
NER适用于不同的语言。在本次调查中,我们主要关注英语和一般领域的NER。除英语外,还有许多其他语言或跨语言环境的研究。 Wu等。 [120]和Wang等。 [149]在中文临床文献中调查了NER。 Zhang and Yang [150]提出了一种针对中文NER的格子结构LSTM模型,该模型对输入字符序列以及所有与词典匹配的潜在单词进行编码。除中文外,许多其他语言的研究。示例包括蒙古语[151],捷克语[152],阿拉伯语[153],乌尔都语[154],越南语[155],印度尼西亚语[156]和日语[157]。每种语言都有其自己的特性,可以理解该语言上NER任务的基础。也有许多研究[106],[158]-[160]旨在通过将知识从源语言转移到目标语言而很少或没有标签来解决跨语言环境中的NER问题。
3.2、3.3和3.4节概述了NER的典型网络体系结构。在本节中,我们调查了针对NER探索的最新应用深度学习技术。
多任务学习[161]是一种可以一起学习一组相关任务的方法。通过考虑不同任务之间的关系,期望多任务学习算法比单独学习每个任务的算法获得更好的结果。
Collobert等。 [17]训练了一个窗口/句子方法网络来共同执行POS,Chunk,NER和SRL任务。这种多任务机制使训练算法能够发现对所有感兴趣的任务都有用的内部表示。杨等。 [106]提出了一种多任务联合模型,以学习特定于语言的规律性,共同训练POS,Chunk和NER任务。 Rei [124]发现,通过在训练过程中包含无监督语言建模目标,序列标记模型可以实现持续的性能改进。 Lin等。 [160]提出了一种针对低资源环境的多语言多任务架构,该架构可以有效地传递不同类型的知识以改善主模型。
除了将NER与其他序列标记任务一起考虑外,多任务学习框架可用于实体和关系的联合提取[90],[96],或将NER建模为两个相关的子任务:实体分割和实体类别预测[ [114],[162]。在生物医学领域,由于不同数据集的差异,每个数据集上的NER被视为多任务设置中的一项任务[163],[164]。这里的主要假设是不同的数据集共享相同的字符和单词级别的信息。然后,应用多任务学习以更有效地利用数据并鼓励模型学习更通用的表示形式。
转移学习旨在通过利用从源域中学到的知识来在目标域上执行机器学习任务[165]。在NLP中,转移学习也称为领域适应。对于NER任务,传统方法是通过自举算法[166]-[168]。最近,已经提出了一些使用深度神经网络的低资源跨域NER的方法[127],[169]-[173]。
Pan等。 [169]提出了一种跨域NER的转移联合嵌入(TJE)方法。 TJE使用标签嵌入技术将多类分类转换为低维潜在空间中的回归。 Qu等。 [174]观察到相关的命名实体类型经常共享词汇和上下文特征。他们的方法使用两层神经网络来学习源命名实体类型和目标命名实体类型之间的相关性。他们的方法适用于源域与目标域具有相似(但不相同)的命名实体类型的设置。 Peng和Dredze [162]在多任务学习环境中探索了转移学习,他们在两个领域中分别考虑了新闻和社交媒体这两个领域:分词和NER。
在转移学习的设置中,不同的神经模型通常在源任务和目标任务之间共享模型参数的不同部分。杨等。 [175]首先研究了表示的不同层次的可传递性。然后,他们针对跨域,跨语言和跨应用程序场景提出了三种不同的参数共享架构。如果两个任务具有可映射的标签集,则存在一个共享的CRF层,否则,每个任务将学习一个单独的CRF层。实验结果表明,在资源匮乏的情况下(即更少的可用注释),各种数据集都有了显着改善。 Pius和Mark [176]扩展了Yang的方法,允许对非正式语料库进行联合训练(例如,WNUT 2017),并结合句子级特征表示。他们的方法在NER的WNUT 2017共享任务中排名第二,获得F1分数为40.78%。赵等。 [177]提出了一种具有领域适应性的多任务模型,其中完全连接层适用于不同的数据集,并且CRF特征是分别计算的。赵氏模型的主要优点是,在数据选择过程中会筛选出分布不同且注释准则未对齐的实例。与这些参数共享架构不同,Lee等人。 [170]通过训练源任务模型并将训练后的目标任务模型用于微调,在NER中应用了转移学习。最近,Lin and Lu [171]还通过引入三个神经适应层(单词适应层,句子适应层和输出适应层)为NER提出了一种微调方法。 Beryozkin等。 [178]提出了一种用于异构标签集NER设置的标签层次模型,其中在推理过程中使用层次结构将细粒度标签映射到目标标签集。此外,一些研究[164],[179],[180]探索了生物医学NER中的转移学习,以减少所需的标记数据量。
主动学习背后的关键思想是,如果允许机器学习算法选择要从中学习的数据,则它可以用更少的训练数据来实现更好的性能[181]。深度学习通常需要大量的培训数据,而这些数据的获取成本很高。从而,将深度学习与主动学习相结合,有望减少数据注释工作。
积极学习的训练会进行多轮。然而,传统的主动学习方案对于深度学习而言是昂贵的,因为在每一轮之后,它们都需要使用新注释的样本对分类器进行完全重新训练。由于从头开始进行再培训对于深度学习不切实际,因此Shen等人。 [88]建议对每批新标签进行NER的增量培训。他们将新注释的样本与现有样本混合,并在新一轮查询标签之前为少数时期更新神经网络权重。具体而言,在每个回合开始时,主动学习算法将要注释的句子选择为预定义的预算。在接收到选定的注释后,通过对扩充数据集进行训练来更新模型参数。主动学习算法在选择要注释的句子时采用不确定性抽样策略[182]。实验结果表明,仅使用英语数据集上24.9%的训练数据和中文数据集上30.1%的训练数据,主动学习算法就可以在完整数据上训练的最佳深度学习模型中实现99%的性能。此外,训练数据的12.0%和16.9%足以使深度主动学习模型优于在完整训练数据上学习的浅层模型[183]。
强化学习(RL)是受行为主义心理学启发的机器学习的一个分支,它与软件代理如何在环境中采取行动以最大程度地累积一些奖励有关[184],[185]。这个想法是,代理将通过与环境交互并从执行操作中获得奖励而从环境中学习。具体而言,RL问题可以表述为[186]:将环境建模为具有输入(来自代理的动作)和输出(对代理的观察和回报)的随机有限状态机。它由三个关键部分组成:(i)状态转换功能,(ii)观察(即输出)功能和(iii)奖励功能。该代理还被建模为具有输入(来自环境的观察/奖励)和输出(对环境的作用)的随机有限状态机。它由两个部分组成:(i)状态转换功能和(ii)策略/输出功能。代理的最终目标是通过尝试使累积奖励最大化来学习良好的状态更新功能和策略。
Narasimhan等。 [187]将信息提取的任务建模为马尔可夫决策过程(MDP),该过程动态地合并了实体预测,并提供了从一组自动生成的替代方案中选择下一个搜索查询的灵活性。该过程包括发出搜索查询,从新来源中提取以及对提取的值进行核对,然后重复该过程,直到获得足够的证据为止。为了学习代理的良好策略,他们利用深层Q网络[188]作为函数逼近器,其中,通过使用深层神经网络来近似状态作用值函数(即Q函数)。最近,Yang等。 [189]利用远距离监督产生的数据来在新领域中执行名为实体识别的新类型。实例选择器基于强化学习,并从NE标记器获取反馈奖励,旨在选择肯定的句子以减少噪声注释的影响。
对抗学习[190]是明确训练对抗实例模型的过程。目的是使模型对攻击更健壮或减少其在纯输入上的测试错误。对抗网络学习通过2人游戏从训练分布中产生:一个网络生成候选(生成网络),另一个评估候选(区分网络)。通常,生成网络学习从潜在空间映射到感兴趣的特定数据分布,而区分网络则在生成器生成的候选对象与真实数据分布的实例之间进行区分[191]。
对于NER,通常以两种方式产生对抗性示例。一些研究[192] – [194]将源域中的实例视为目标域的对抗示例,反之亦然。例如,Li等。 [193]和曹等人。 [194]都结合了来自其他领域的对抗性例子,以鼓励跨领域NER的领域不变特征。另一种选择是通过添加带有扰动的原始样本来准备对抗样本。例如,在[195]中提出的双重对抗传输网络(DATNet)旨在解决资源匮乏的NER问题。对抗性样本是通过添加原始样本而产生的,该样本的扰动受一个小范数ǫ限制,以使损失函数最大化,如下所示:ηx= arg maxη:kηk2≤ǫl(Θ; x +η),其中Θ是当前模型参数可以根据验证集确定。一个对抗性的例子是由xadv = x +ηx构成的。对分类器进行原始示例和对抗示例混合训练,以提高通用性。
注意力机制大致基于人类发现的视觉注意力机制[196]。例如,人们通常以“高分辨率”聚焦于图像的特定区域,而以“低分辨率”感知周围的区域。神经注意机制使神经网络能够专注于其输入的子集。通过应用注意力机制,NER模型可以捕获输入中信息最多的元素。特别是,第3.3.5节中介绍的Transformer体系结构完全依赖于注意力机制来绘制输入和输出之间的全局依存关系。
在NER任务中还有许多其他方法可以应用注意力机制。 Rei等。 [105]应用了一种注意机制来动态地决定从端到端NER模型中的字符或单词级别组件使用多少信息。 Zukov-Gregoric等。 [197]探索了NER中的自我注意机制,其中权重取决于单个序列(而不是取决于两个序列之间的关系)。徐等。 [198]提出了一种基于注意力的神经NER体系结构,以利用文档级的全局信息。特别地,从具有神经注意力的预训练双向语言模型表示的文档获得文档级信息。张等。 [199]在推文中为NER使用了一个自适应共同注意网络。该自适应共同注意网络是使用共同注意过程的多模式模型。共同注意包括视觉注意和文本注意,以捕获不同形式之间的语义交互。
在第3.5节中讨论,选择标签解码器的变化不如输入表示形式和上下文编码器的选择大。从Google Word2vec到最新的BERT模型,基于DL的NER都得益于建模语言中预训练嵌入技术的进步。无需复杂的功能设计,我们现在有机会重新审视NER任务的挑战和潜在的未来方向。
数据注释。受监督的NER系统(包括基于DL的NER)在训练中需要大批注解的数据。然而,数据注释仍然是耗时且昂贵的。对于许多资源匮乏的语言和特定领域而言,这是一个巨大的挑战,因为需要域专家来执行注释任务。
由于语言的含糊性,注释的质量和一致性都是主要问题。例如,相同的命名实体可以用不同的类型标注。例如,句子“巴尔的摩击败了洋基”中的“巴尔的摩”在MUC-7中被标记为位置,在CoNLL03中被标记为组织。在CoNLL03和ACE数据集中,“帝国州”和“帝国州建筑物”都标记为“位置”,从而导致实体边界混乱。由于数据注释的不一致,即使两个数据集中的文档来自同一域,在一个数据集上训练的模型也可能不适用于另一个数据集。
为了使数据注释更加复杂,Katiyar和Cardie [122]报告说嵌套实体相当普遍:GENIA语料库中有17%的实体被嵌入到另一个实体中。在ACE语料库中,有30%的句子包含嵌套实体。需要开发通用的注释方案以适用于嵌套实体和细粒度实体,其中一个命名实体可以被分配多种类型。
非正式小组和看不见的实体。在表3中列出,在具有正式文档(例如新闻报道)的数据集上报告了不错的结果。但是,在用户生成的文本(例如WUT17数据集)上,最佳F得分略高于40%。由于简短和嘈杂,非正式文本(例如,推文,评论,用户论坛)的NER比正式文本更具挑战性。许多用户生成的文本也是特定于域的。在许多应用场景中,NER系统必须处理用户生成的文本,例如电子商务和银行业务中的客户支持。
评估NER系统的健壮性和有效性的另一个有趣的方面是它在新兴讨论的背景下识别不寻常,以前未见过的实体的能力。对于WUT-17数据集[200]的这一研究方向,存在共同的任务2。
随着建模语言的进步和实际应用中的需求,我们希望NER能够引起研究人员的更多关注。另一方面,NER通常被视为下游应用程序的预处理组件。这意味着特定的NER任务是由下游应用程序的需求定义的,例如,命名实体的类型以及是否需要检测嵌套实体[201]。根据本次调查的研究,我们列出了NER研究中进一步探索的以下方向。
细粒度的NER和边界检测。尽管许多现有研究[19],[97],[109]都关注普通域中的粗粒度NER,但我们希望在特定领域中对细粒度NER进行更多的研究,以支持各种实词应用[202]。细粒度的NER面临的挑战是NE类型的显着增加以及允许命名实体具有多种NE类型而带来的复杂性。这要求重新访问通用NER方法,其中例如通过使用BI-ES-S-(实体类型)和O作为解码标签来同时检测实体边界和类型。值得考虑将命名实体边界检测定义为专用的任务,以在不考虑网元类型的情况下检测网元边界。边界检测和NE类型分类的解耦实现了可以在不同域之间共享的边界检测的通用且强大的解决方案,以及用于NE类型分类的专用于域的专用方法。正确的实体边界还可以有效减轻链接到知识库的实体中的错误传播。已经有一些研究[95],[203]将实体边界检测视为NER中的中间步骤(即子任务)。据我们所知,没有现有的工作单独关注实体边界检测以提供可靠的识别器。我们希望将来在这一研究方向上有所突破。
NER和实体联合链接。实体链接(EL)[204],也称为命名实体规范化或歧义消除,旨在参考知识库(例如通用领域的Wikipedia和统一医学语言系统, UMLS)。大多数现有工作将NER和EL作为管道设置中的两个单独任务单独解决。我们认为,成功链接的实体(例如,通过知识库中的相关实体)所承载的语义得到了显着丰富[66],[205]。即,链接的实体有助于成功检测实体边界和正确分类实体类型。值得探索的方法是联合执行NER和EL,甚至进行实体边界检测,实体类型分类和实体链接,以便每个子任务都可以从其他子任务的部分输出中受益,并减轻管道设置中不可避免的错误传播。
基于DL的带有辅助资源的非正式NER上的NER。如5.1节所述,基于DL的NER在非正式文本或用户生成的内容上的性能仍然很低。这要求在这一领域进行更多研究。特别是,我们注意到NER的性能显着受益于辅助资源的可用性[206]-[208],例如用户语言中的位置名称字典。尽管表3并没有提供强有力的证据来证明地名词典的功能,因为附加功能会导致NER在一般领域的性能提高,但我们认为通常需要辅助资源来更好地理解用户生成的内容。问题是如何为用户生成的内容或特定于域的文本上的NER任务获取匹配的辅助资源,以及如何有效地将辅助资源合并到基于DL的NER中。
基于DL的NER的可伸缩性。使神经NER模型更具可扩展性仍然是一个挑战。此外,仍然需要一种解决方案,以在数据大小增长时优化参数的指数增长[209]。一些基于DL的NER模型已经以大量计算能力为代价获得了良好的性能。例如,ELMo表示使用3×1024维矢量表示每个单词,并在32个GPU上对模型进行了5周的训练[107]。 Google BERT表示形式已在64个云TPU上进行了培训。但是,如果最终用户无法访问强大的计算资源,则无法微调这些模型。开发平衡模型复杂性和可伸缩性的方法将是一个有希望的方向。另一方面,模型压缩和修剪技术也是减少模型学习所需的空间和计算时间的选择。
面向NER的深度转移学习。许多针对实体的应用程序都使用现成的NER系统来识别命名实体。但是,由于语言特性的差异以及注释的差异,在一个数据集上训练的模型可能无法在其他文本上很好地工作。尽管有一些将深度迁移学习应用于NER的研究(请参阅第4.2节),但尚未充分探讨此问题。通过探索以下研究问题,应致力于未来的更多努力:如何有效地将知识从一个领域转移到另一个领域:(a)开发一个健壮的识别器,该识别器能够在不同领域中很好地工作; (b)在NER任务中探索零散,单发和少发学习; (c)提供解决域不匹配和跨域设置中标签不匹配的解决方案。
基于DL的NER的易于使用的Toolkit。最近,Röder等人。 [210]开发了GERBIL,它为研究人员,最终用户和开发人员提供了易于使用的界面,用于对实体注释工具进行基准测试,目的是确保可重复和可存档的实验。但是,它不涉及最新的基于DL的技术。 Ott [211]提出了FAIRSEQ,这是一种快速,可扩展的工具包,用于序列建模,尤其是机器翻译和文本污名化。 Dernoncourt等。 [212]实现了一个名为NeuroNER的框架,该框架仅依赖于递归神经网络的变体。近年来,许多深度学习框架(例如TensorFlow,PyTorch和Keras)已被设计为通过高级编程接口提供用于设计,训练和验证深度神经网络的构建块。3为了重新实现架构在表3中,开发人员可以使用现有的深度学习框架从头开始编写代码。我们设想了一个易于使用的NER工具包可以指导开发人员使用一些标准化模块来完成它:数据处理,输入表示,上下文编码器,标签解码器和有效性度量。我们相信,专家和非专家都可以从此类工具包中受益。
这项调查旨在回顾基于深度学习的NER解决方案的最新研究,以帮助新的研究人员对该领域进行全面的了解。在本次调查中,我们包括了NER研究的背景,传统方法的简要介绍,当前的最新技术,挑战和未来的研究方向。首先,我们合并了可用的NER资源,包括带标签的NER语料库和现成的NER系统,重点是一般领域的NER和英语的NER。我们以表格形式显示这些资源,并提供指向它们的链接以便于访问。其次,我们介绍了诸如NER任务的定义,评估指标,NER的传统方法以及深度学习的基本概念之类的预备知识。第三,我们回顾了基于各种深度学习模型的文献,并根据新的分类法对这些研究进行了映射。我们进一步调查了在新的问题设置和应用中最近应用的深度学习技术的最具代表性的方法。最后,我们总结了NER的应用,并向读者介绍NER以及未来方向的挑战。我们希望这项调查可以为设计基于DL的NER模型提供良好的参考。