0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一种单独适配于NER的数据增强方法

深度学习自然语言处理 来源:深度学习自然语言处理 作者: JayLou娄杰 2021-01-18 16:28 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

本文首先介绍传统的数据增强在NER任务中的表现,然后介绍一种单独适配于NER的数据增强方法,这种方法生成的数据更具丰富性、数据质量更高。

0

前言

在NLP中有哪些数据增强技术?这一定是当今NLP面试中的必考题了吧。在《标注样本少怎么办?》(链接:https://zhuanlan.zhihu.com/p/146777068)一文中也详细总结过这个问题。 但是,目前来看:大多数「数据增强」方法通常被用于文本分类、文本匹配等任务中,这类任务有一个共性:是“句子级别”(sentence level)的分类任务,大多数关于「文本增强」的研究也都针对这个任务。 在2020年5月的时候,JayJay突然在想:NER如何进行数据增强?有什么奇思妙想可以用上?于是我陷入沉思中......

NER做数据增强,和别的任务有啥不一样呢?很明显,NER是一个token-level的分类任务,在进行全局结构化预测时,一些增强方式产生的数据噪音可能会让NER模型变得敏感脆弱,导致指标下降、最终奔溃。 在实践中,我们也可以把常用的数据增强方法迁移到NER中,比如,我们通常采用的「同类型实体」随机替换等。但这类方法通常需要获得额外资源(实体词典、平行语料等),如果没有知识库信息,NER又该如何做数据增强呢?有没有一种单独为NER适配的数据增强方法呢? 本文JayJay主要介绍在最近顶会中、对NER进行数据增强的2篇paper:

COLING20:《An Analysis of Simple Data Augmentation for Named Entity Recognition》

EMNLP20:《DAGA: Data Augmentation with a Generation Approach for Low-resource Tagging Tasks》

COLING20主要是将传统的数据增强方法应用于NER中、并进行全面分析与对比。 EMNLP20主要是提出了一种适配于NER的数据增强方法——语言模型生成方法:1)这种方式不依赖于外部资源,比如实体词典、平行语料等;2)可同时应用于有监督、半监督场景。 具体效果如何,我们来一探究竟吧~本文的组织结构为:

bce652b2-58b2-11eb-8b86-12bb97331649.png

1

传统的数据增强方法迁移到NER,效果如何?

bd986998-58b2-11eb-8b86-12bb97331649.png

在COLING20的paper中,作者借鉴sentence-level的传统数据增强方法,将其应用于NER中,共有4种方式(如上图所示):

Label-wise token replacement (LwTR):即同标签token替换,对于每一token通过二项分布来选择是否被替换;如果被替换,则从训练集中选择相同的token进行替换。

Synonym replacement (SR):即同义词替换,利用WordNet查询同义词,然后根据二项分布随机替换。如果替换的同义词大于1个token,那就依次延展BIO标签

Mention replacement (MR):即实体提及替换,与同义词方法类似,利用训练集中的相同实体类型进行替换,如果替换的mention大于1个token,那就依次延展BIO标签,如上图:「headache」替换为「neuropathic pain syndrome」,依次延展BIO标签。

Shuffle within segments (SiS):按照mention来切分句子,然后再对每个切分后的片段进行shuffle。如上图,共分为5个片段: [She did not complain of], [headache], [or], [any other neurological symptoms], [.]. 。也是通过二项分布判断是否被shuffle(mention片段不会被shuffle),如果shuffle,则打乱片段中的token顺序。

论文也设置了不同的资源条件:

Small(S):包含50个训练样本;

Medium (M):包含150个训练样本;

Large (L):包含500个训练样本;

Full (F):包含全量训练集;

be1fd5fe-58b2-11eb-8b86-12bb97331649.png

由上图可以看出:

各种数据增强方法都超过不使用任何增强时的baseline效果。

对于RNN网络,实体提及替换优于其他方法;对于Transformer网络,同义词替换最优。

总体上看,所有增强方法一起使用(ALL)会由于单独的增强方法。

低资源条件下,数据增强效果增益更加明显;

充分数据条件下,数据增强可能会带来噪声,甚至导致指标下降;

2

DAGA:单独适配于NER的数据增强方法

EMNLP这篇NER数据增强论文DAGA来自阿里达摩院,其主要是通过语言模型生成来进行增强,其整体思路也非常简单清晰。

be993f7a-58b2-11eb-8b86-12bb97331649.png

DAGA的核心思路也十分清晰,就是标签线性化:即将原始的「序列标注标签」与「句子token」进行混合,也就是变成「Tag-Word」的形式,如上图所示:将「B-PER」放置在「Jose」之前,将「E-PER」放置在「Valentin」之前;对于标签「O」则不与句子混合。标签线性化后就可以生成一个句子了,基于这个句子就可以进行「语言模型生成」训练啦~是不是超级简单?!

bf17e67c-58b2-11eb-8b86-12bb97331649.png

DAGA 网络(如上图)仅仅通过一层LSTM进行自回归的语言模型训练,网络很轻,没有基于BERT做。 DAGA的一大优点就是不需要额外资源,比如同义词替换就需要一个WordNet。但是论文也考虑到了使用外部资源时的情况,比如:1)有大量无标注语料时;2)有外部知识库时;

bfe5bd54-58b2-11eb-8b86-12bb97331649.png

对于不同的3种资源条件下,具体的训练语料构建如上图所示:

对于标注语料,用[labeled]在句首作为条件标记;

对于无标注语料,用[unlabeled]在句首作为条件标记;

对于知识库,对无标注语料进行词典匹配后(正向最大匹配),用[KB]在句首作为条件标记;

只要输入[BOS]+[labeled]/[unlabeled]/[KB],即可通过上述语言模型、自回归生成新的增强数据啦~ 下面我们分别对上述3种资源条件下的生成方法进行验证:2.1 只使用标注语料进行语言生成共采用4种实验设置:

gold:通过标注语料进行NER训练

gen:即DAGA,1)通过标注语料进行语言模型训练、生成新的数据:2) 过采样标注语料; 3)新数据+过采样标注语料,最后一同训练NER;

rd:1)通过随机删除进行数据增强; 2)过采样标注语料;3)新数据+过采样标注语料,最后一同训练NER;

rd*:同rd,只是不过采样标注语料。

c05f590c-58b2-11eb-8b86-12bb97331649.png

具体结果由上图展示(设置了6种不同语言数据、不同的原始标注数据量进行对比),可以看出:DAGA方式(gen)明显超过其他数据增强方法,特别是在低资源条件下(1k和2k数据量)。2.2 使用无标注语料进行语言生成共采用3种实验设置:

gold:通过标注语料进行NER训练;

wt:即弱监督方法,采用标注语料训练好一个NER模型,然后通过NER模型对无标注语料伪标生成新数据,然后再重新训练一个NER模型;

gen-ud:通过标注和无标注语料共同进行语言模型训练、生成新数据,然后再训练NER模型;

c0f47884-58b2-11eb-8b86-12bb97331649.png

由上图的红框进行对比,可以看出:DAGA方法在所有设置下、均超过了弱监督数据方法。其实弱监督方法生成的数据质量较低、噪声较大,而DAGA可以有效改善这一情况。 可以预见的是:当有大量无标注语料时,DAGA进行的NER数据增强,将有效提升NER指标。2.3 使用无标注语料+知识库进行语言生成同样也是采用3种实验设置:

gold:通过标注语料进行NER训练;

kb:从全量训练集中积累实体词典(实体要在训练集上中至少出现2次),然后用实体词典匹配标注无标注语料、生成新数据,最后再训练NER模型;

gen-kb:与kb类似,将kb生成的新数据训练语言模型,语言模型生成数据后、再训练NER模型;

c173a168-58b2-11eb-8b86-12bb97331649.png

如上图红框所示,总体上DAGA超过了kb方式,低资源条件(1k)下,kb方式还是强于DAGA。

3

DAGA为何如此有效?

c1c9bd64-58b2-11eb-8b86-12bb97331649.png

DAGA更具多样性:

如上图所示,在原始的训练集中「Sandrine」只会和「Testud」构成一个实体span,而DAGA生成的数据中,「Sandrine」会和更丰富的token构成一个实体。

此外,DAGA会生成更丰富的实体上下文,论文以相同实体mention的1-gram作为评估指标进行了统计。如下图所示,桔色代表DAGA生成的实体上下文,比原始的训练集会有更丰富的上下文。

c2120e2a-58b2-11eb-8b86-12bb97331649.png

DAGA可以有效利用无标注语料:DAGA通过无标注语料来生成有用的数据,新数据中会出现那些未在标注语料中出现的新实体。

4

总结

本文就「NER如何进行数据增强」进行了介绍:

虽然传统的数据增强方法也可用于NER中,不过,JayJay认为:传统的数据增强方法应用到NER任务时,需要外部资源,且数据增强的丰富性不足、噪音可能较大。

基于语言生成的DAGA方法是NER数据增强的一种新兴方式,再不利用外部资源时会有较好的丰富性、数据质量较好。

责任编辑:xj

原文标题:打开你的脑洞:NER如何进行数据增强 ?

文章出处:【微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 数据
    +关注

    关注

    8

    文章

    7314

    浏览量

    93982
  • 自然语言处理

    关注

    1

    文章

    629

    浏览量

    14563
  • nlp
    nlp
    +关注

    关注

    1

    文章

    491

    浏览量

    23191

原文标题:打开你的脑洞:NER如何进行数据增强 ?

文章出处:【微信号:zenRRan,微信公众号:深度学习自然语言处理】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    指令集测试的一种纠错方法

    本文描述在进行指令集测试的一种纠错方法 1.打开测试指令集对应的dump文件 dump文件是指由汇编文件进行反汇编之后,可以供人阅读指令的反汇编文件。其包含了每条指令的具体操作的信息。指令集测试
    发表于 10-24 14:04

    当不同的数据放在同个Flash页面上时,请问如何在不影响其他数据的情况下更改单独数据

    当不同的数据放在同个Flash页面上时,如何在不影响其他数据的情况下更改单独数据
    发表于 08-22 06:25

    一种新的无刷直流电机反电动势检测方法

    无位置传感器无刷直流电机的控制算法是近年来研究的热点之,有霍尔位置信号直流电机根据霍尔状态来确定通断功率器件。利用无刷直流电机的数学模型,根据反电动势检测原理,提出了一种新的线反电动势检测方法
    发表于 08-07 14:29

    一种永磁同步电机转子位置传感器零位偏差高精度测量方法

    电势模型的基础上,结合旋转变压器解码数据,提出了一种通过拖动电机被动转动,测量电机绕组反电势及旋变解码数据高位信号的零位偏差直接测量方法。实验表明该
    发表于 08-04 15:01

    一种新的无刷直流电机反电动势检测方法

    无位置传感器无刷直流电机的控制算法是近年来研究的热点之,有霍尔位置信号直流电机根据霍尔状态来确定通断功率器件。利用无刷直流电机的数学模型,根据反电动势检测原理,提出了一种新的线反电动势检测方法
    发表于 08-04 14:59

    一种无序超均匀固体器件的网格优化方法

    近日,天津大学精密仪器与光电子工程学院的光子芯片实验室研发了一种无序超均匀固体器件的网格优化方法,成果获中国发明专利(ZL202410659505.2)授权。
    的头像 发表于 07-28 16:10 741次阅读
    <b class='flag-5'>一种</b>无序超均匀固体器件的网格优化<b class='flag-5'>方法</b>

    瑞萨MCU方案:瑞萨RZ/G2L Bootloader单独编译方法详解

    会提出需要单独编译Bootloader的需求。为了满足用户需求,本文将介绍一种RZ/G2L上脱离Yocto的单独编译Bootloader的方法,从而能够快
    的头像 发表于 07-08 14:47 2282次阅读
    瑞萨MCU方案:瑞萨RZ/G2L Bootloader<b class='flag-5'>单独</b>编译<b class='flag-5'>方法</b>详解

    汉思新材料取得一种PCB板封装胶及其制备方法的专利

    汉思新材料取得一种PCB板封装胶及其制备方法的专利汉思新材料(深圳市汉思新材料科技有限公司)2023年取得了项关于PCB板封装胶及其制备方法
    的头像 发表于 06-27 14:30 452次阅读
    汉思新材料取得<b class='flag-5'>一种</b>PCB板封装胶及其制备<b class='flag-5'>方法</b>的专利

    一种分段气隙的CLLC变换器平面变压器设计

    气隙设计的优点。 目录1 概述2 一种分段气隙的CLLC平面变压器设计3 实验验证4 参考文献 1 概述学者们从LLC拓扑原理、新型器件、改进拓扑、先进调制方法、谐振参数优化方法、磁性器件设计
    发表于 03-27 13:57

    一种永磁电机用转子组件制作方法

    一种永磁电机所使用的转子组件,是由磁钢与芯轴组装而成,产品工作转速80 000 r /mi n,磁钢相对于芯轴的同轴度要小于O.015 mm。现有的装配方法是:先在芯轴两端面制作中心孔,然后直接
    发表于 03-25 15:20

    一种无刷直流电机霍耳信号与定子绕组关系自学习方法

    的关系。提出了一种无刷直流电机霍耳信号与定子绕组关系自学习方法,该方法通过不同的绕组通电组合将电机转子依次转到6个不同的位置并记录对应的霍耳信号,然后得出霍耳信号与定子绕组的对应关系。所提出的
    发表于 03-25 15:15

    解决电源适配器的干扰问题,用以下方法解决!

    电源适配器在使用过程中有时候可能会受到外界因素的干扰,那么我们应该如何解决这种干扰呢?对电源适配器产生的对外干扰,如电源线谐波电流、电源线传导干扰、电磁场辐射干扰等,只能用减小干扰的方法
    发表于 01-17 10:16

    电源适配器和开关电源之间的区别

    们使用的开关电源又有哪些区别呢?今天就来为大家分析下关于电源适配器和开关电源之间的区别。 开关电源:   开关电源是将220V电压变成低压直流的一种方法,他区别传统的工频变压器。采用这种开关变换电压技术的电源
    发表于 01-16 10:57

    三大方法解决开关电源适配器绝缘掩护!

    ,比较常见的绝缘掩护技术有以下三是加强绝缘技术,二是附加绝缘技术,三是基础绝缘。什么情况下会使用绝缘掩护技术呢?般开关电源适配器在工作过程中,偶尔会出现电路内涌突然比风险电压高
    发表于 01-10 10:37

    一种降低VIO/VSLAM系统漂移的新方法

    本文提出了一种方法,通过使用点到平面匹配将VIO/VSLAM系统生成的稀疏3D点云与数字孪生体进行对齐,从而实现精确且全球致的定位,无需视觉数据关联。所提
    的头像 发表于 12-13 11:18 1183次阅读
    <b class='flag-5'>一种</b>降低VIO/VSLAM系统漂移的新<b class='flag-5'>方法</b>