Auto Byte

专注未来出行及智能汽车科技

微信扫一扫获取更多资讯

Science AI

关注人工智能与其他前沿技术、基础学科的交叉研究与融合发展

微信扫一扫获取更多资讯

Few-NERD:一个Few-shot场景的命名实体识别数据集

近来,围绕着 "少样本命名实体识别"(few-shot NER)这一主题,出现了大量的工作和文献。“少样本命名实体识别”任务具有实际应用价值,也充满挑战性。但是目前鲜有专门针对该任务的基准数据,之前的大多数研究都是通过重新组织现有的有监督NER数据集,使其成为“少样本”场景下的数据集。这些策略通常旨在通过少量的例子来识别粗粒度的实体类型,而在实践中,大多数实体类型都是细粒度的。本文被ACL-IJCNLP 2021录用。


 一 、引言

在本文中,我们发布了Few-NERD,一个大规模的人工标注的用于few-shot NER任务的数据集。该数据集包含8种粗粒度和66种细粒度实体类型,每个实体标签均为粗粒度+细粒度的层级结构,共有188,238个来自维基百科的句子,4,601,160个词,每个词都被注释为上下文(context)或一个实体类型的一部分。这是第一个few-shot NER数据集,也是最大的人工标注NER数据集之一。我们构建了具有不同侧重点的基准任务来全面评估模型的泛化能力。广泛的实证结果和分析表明,few-shot NER任务充满挑战性,亟待进一步研究。

论文名称:Few-NERD: A Few-Shot Named Entity Recognition Dataset
论文作者:Ning Ding, Guangwei Xu, Yulin Chen, Xiaobin Wang, Xu Han, Pengjun Xie, Hai-Tao Zheng, Zhiyuan Liu
论文链接:https://arxiv.org/abs/2105.07464
网站链接:http://ningding97.github.io/fewnerd/
开源链接:https://github.com/thunlp/Few-NERD

 二 、问题定义:少样本命名实体识别(few-shot named entity recognition)


命名实体识别即在文本中标出实体。假设输入为 ,模型最终的输出需要给每一个词 打上一个标签 ,该标签集合 是一个给定的集合。
在少样本的场景下,样本被按照批次(episode)组织成N-way-K-shot形式的数据。每个批次的数据又被组织成两个集合,support set 和 query set,其中support set用于学习,query set用于预测。其含义是,在每一批(episode)的support set中含有N种类型的实体,每种类型有K个实体,query set含有与support set同类型的实体。模型通过对support set的学习,来预测query set的标签。

三、采样策略

由于NER是一个跟语境强相关的任务,采样通常在句子层面进行。又由于一句话中可能含有多个类型的多个实体,一般很难通过句子级别的采样严格满足N-way-K-shot的场景设定。因此,我们设计了基于贪心策略的更为宽松的采样方法。该采样方法能够将每个实体类型的数量限制在K~2K之间,即每次随机抽样一句话加入集合,计算当前集合中的实体类型数量和每个实体类型的实例数量,若它们超过N或2K,则舍弃这句话;否则,将这句话加入集合中,直到满足N个实体类型,每个类型至少K个实体为止。
四 、数据收集

4. 1 实体类型模式设计
Few-NERD的实体类型是基于FIGER设计的。FIGER包含了112个实体标签类型。我们首先将这112个标签组织成8个大类,然后删掉了在FIGER中出现频率较低的类型。最后,为了标注的可行性,我们进行了预标注,将一些通过上下文难以区分的类型进行了合并,比如我们将Country, Province/State, City, Restrict 这几类合并为一类 GPE。最终我们确定了含有8个大类,66个小类的标签模式。

4.2 标注策略
为了使得每种类型的实体数量尽量均衡,我们收集了FIGER中每个实体类型对应的实体词典,通过远监督的方式对每个实体抽取包含该实体的10篇文章作为标注候选集。最后我们从该候选集中对每个细粒度实体类型随机抽取1000篇文章,共计66000篇文章进行人工标注,平均每篇文章包含61.3个词。标注过程中,每篇文章被分配给两个标注员进行独立标注,标注的kappa一致性为76.44%。

五、数据分析

5.1 数据集大小和分布

Few-NERD是第一个为Few-shot场景设计的数据集,同时也是最大的人工标注的NER数据集之一,相关的统计如表2所示。可以看出,Few-NERD包含了18万余条句子,49万余个标注的实体,460余万个字符,并且有66个类别,显著超越了之前的基准数据集。因此,Few-NERD不光可以做Few-shot NER任务,在标准的监督学习NER任务上同样具有挑战性(见实验章节)。
5.2 类别之间的知识关联

小样本学习场景中,模型的知识迁移能力是十分重要的。为了挖掘在Few-NERD中各个类别之间的知识联系,我们做了相关的分析性实验。在这里,本文实现了一个BERT的基线模型(BERT+CLS),在70%的数据上进行训练,并且用10%的数据进行验证,在另外20%的数据上进行测试。对于20%的测试数据,训练的到的编码器将计算出每一个数据的上下文化实体表示(Contextualized Entity Mention Representation)。然后,对于每一个细粒度类,我们随机选取100个实例的实体表示,两两计算类别之间实体表示的点乘并且取平均值,来计算出不同类别之间的上下文相似度,以近似表示实体类别之间的关联程度。如图2所示,可以看出,大类内的实体拥有着较高的关联程度,可见跨大类的知识迁移将更加具有挑战性。


 六、基准数据集构建

我们在Few-NERD数据集上进行了一系列实验,包括传统的有监督模式和两种few-shot模式。

6.1 有监督模式(supervised)

我们首先在传统的有监督模式上训练并测试了NER任务,数据集按照7:2:1的比例被随机划分为训练集、测试集和验证集,三个集合都包含66个实体类型。我们使用了基础的BERT模型,结果表明,即使是在有监督模式下,在拥有66个实体类型的Few-NERD数据集上完成NER任务也较为困难。

6.2 少样本模式(Few-shot)
少样本学习的核心在于从较少的样本中学习新的类型。因此,我们首先将含有66个标签的标签集划分为训练集、验证集和测试集,三个集合中的标签互不相等。再将数据集中的每一个句子分到它含有的实体类型所在的对应集合,且每句话只能被分到一个集合中。具体来说,如果一句话包含实体A和B,A对应的类型在训练集而B对应的类型在验证集,则该句话被随机地放入训练集或验证集中。最后,为了让模型在每个阶段只能看到该阶段相应的实体类型,我们将每个集合中不符合类型要求的实体都重新标注为上下文类型(O)。在上例中,若该句话被放入训练集,则B的标签将变为O。基于这种方法,我们划分了两类few-shot数据集。

6.2.1 INTRA

INTRA模式的数据集标签是按照粗粒度划分的,即,不同集合的数据含有不同粗粒度类型的实体。为了尽量减少被重新标注为O的实体数量,我们将People, MISC, Art, Product类归为训练集,Event, Building类为验证集,ORG, LOC 类归为测试集。

6.2.2 INTER

在INTER模式中,三个集合包含粗粒度类型相同但细粒度类型不同实体。训练集中大约包含60%的细粒度实体类型,测试集和验证集分别包含20%。
下表是三类基准数据集的句子数量统计。


七 、实验

我们在supervised模式下训练并测试了基础的BERT模型,实验结果如下,评价指标均为实体级别。

同时,在监督学习场景下,我们还评估了每一类的F1分数以衡量不同类别的难度,如下图所示:

在两类few-shot模式下训练并测试了ProtoBERT,NNShot和StructShot模型,实验结果如下,包含了4种采样设定。

在INTER模式基础上,我们做了进一步的错误分析。Span error是以词为单位的统计,FP(false positive)表示原标签为O的词被标为某个实体类型,FN(false negative)表示原标签为某个实体类型的词被预测为O。type error是在实体span正确的基础上统计的,within表示错标为同一粗粒度类型的不同细粒度类型,outer表示错标为不同粗粒度类型。

清华NLP实验室
清华NLP实验室

实验室瞄准以中文为核心的自然语言处理前沿课题,进行系统、深入的研究,取得了一系列有世界影响力的原创成果,培养了一批人工智能优秀人才。

http://nlp.csai.tsinghua.edu.cn/
专栏二维码
理论NLPFew-NERD
相关数据
数据分析技术

数据分析是一类统计方法,其主要特点是多维性和描述性。有些几何方法有助于揭示不同的数据之间存在的关系,并绘制出统计信息图,以更简洁的解释这些数据中包含的主要信息。其他一些用于收集数据,以便弄清哪些是同质的,从而更好地了解数据。 数据分析可以处理大量数据,并确定这些数据最有用的部分。

基准技术

一种简单的模型或启发法,用作比较模型效果时的参考点。基准有助于模型开发者针对特定问题量化最低预期效果。

验证集技术

验证数据集是用于调整分类器超参数(即模型结构)的一组数据集,它有时也被称为开发集(dev set)。

监督学习技术

监督式学习(Supervised learning),是机器学习中的一个方法,可以由标记好的训练集中学到或建立一个模式(函数 / learning model),并依此模式推测新的实例。训练集是由一系列的训练范例组成,每个训练范例则由输入对象(通常是向量)和预期输出所组成。函数的输出可以是一个连续的值(称为回归分析),或是预测一个分类标签(称作分类)。

命名实体识别技术

命名实体识别(NER)是信息提取(Information Extraction)的一个子任务,主要涉及如何从文本中提取命名实体并将其分类至事先划定好的类别,如在招聘信息中提取具体招聘公司、岗位和工作地点的信息,并将其分别归纳至公司、岗位和地点的类别下。命名实体识别往往先将整句拆解为词语并对每个词语进行此行标注,根据习得的规则对词语进行判别。这项任务的关键在于对未知实体的识别。基于此,命名实体识别的主要思想在于根据现有实例的特征总结识别和分类规则。这些方法可以被分为有监督(supervised)、半监督(semi-supervised)和无监督(unsupervised)三类。有监督学习包括隐形马科夫模型(HMM)、决策树、最大熵模型(ME)、支持向量机(SVM)和条件随机场(CRF)。这些方法主要是读取注释语料库,记忆实例并进行学习,根据这些例子的特征生成针对某一种实例的识别规则。

批次技术

模型训练的一次迭代(即一次梯度更新)中使用的样本集。

小样本学习技术

人类非常擅长通过极少量的样本识别一个新物体,比如小孩子只需要书中的一些图片就可以认识什么是“斑马”,什么是“犀牛”。在人类的快速学习能力的启发下,研究人员希望机器学习模型在学习了一定类别的大量数据后,对于新的类别,只需要少量的样本就能快速学习,这就是 Few-shot Learning 要解决的问题。

推荐文章
暂无评论
暂无评论~