分类:NER以及RE的负采样方法
负采样
自然语言处理领域中,判断两个单词是不是一对上下文词(context)与目标词(target),如果是一对,则是正样本,如果不是一对,则是负样本。
采样得到一个上下文词和一个目标词,生成一个正样本(positive example),生成一个负样本(negative example),则是用与正样本相同的上下文词,再在字典中随机选择一个单词,这就是负采样(negative sampling)。
比如给定一句话“这是去上学的班车”,则对这句话进行正采样,得到上下文“上”和目标词“学”,则这两个字就是正样本。 负样本的采样需要选定同样的“上”,然后在训练的字典中任意取另一个字,“梦”、“目”,这一对就构成负样本。 训练需要正样本和负样本同时存在。
NER的负采样
目前学界主流的命名实体识别方法有基于BIO序列标注的方法,以及近年来使用比较多的基于Span的方法。
- 基于BIO/BILOU标注的命名实体识别:
- 标注方式为对token进行标注,e.g. 今年海钓比赛在厦门市与金门之间的海域举行。
我们对这句话进行序列标注之后的结果:
今(O)年(O)海(O)钓(O)比(O)赛(O)在(O)厦(B-LOC)门(I-LOC)市(E-LOC)与(O)金(B-LOC)门(E-LOC)之(O)间(O)的(O)海(O)域(O)举(O)行(O)。
- 负采样方式为:
- 基于Span的命名实体识别:用于解决一些类似于嵌套命名实体识别的问题。
1. Empirical Analysis of Unlabeled Entity Problem in Named Entity Recognition[2]
未标注会造成两类问题:1)降低正样本量。2)将未标注视为负样本。1 可以通过 adaptive pretrain 缓解,而 2 后果却更严重,会对于模型造成误导,怎么消除这种误导呢,那就是负采样。 本文 NER 框架使用了片段排列分类的框架,即每个片段都会有一个实体类型进行分类,也更适合负采样。
负采样过程如下图所示:
我们将已标注实体集合记为y,则可以得到除y之外的其它实体集合Sk(包括负实例和未标注实体)
Sk={(i, j) | 1 ≤ i ≤ j ≤ n;∃ l ∈ L; (i, j, l) ∈ y}
Sk中的所有span都会被标记成O,正如图中所表示那样,得到
Sk={(1, 1, O) (1, 3, O),……,(6, 7, O) (7, 7, O)}
再从k中进行均匀分布采样,得到y'={(3, 5, O),(7, 7, O)},作为负采样样本加入模型进行训练
为了保证使用本方法进行负采样的结果能够有效降低未标注样本对于模型的影响,同时还需要进行loss函数的修改,损失函数如下:
论文也通过下述公式证明:通过负采样,可以将未标注实体当作负样本训练、维持在一个很低水平。
- 2. Rethinking Negative Sampling for Unlabeled Entity Problem in Named Entity Recognition[3]
实验证明,第一篇论文中提到的负采样方法可以在一定程度上降低未标注实体对于模型性能的负面影响,但是仍存在一些问题:
- 最终只有一小部分负实例被抽取用作模型训练
- 当未标记实体问题严重(未标记实体占比过大)时,这种方法并不能起到很好的效果————会导致误采样率过高
为了解决这些问题,本论文的研究人员基于上篇论文的负采样方法,提出了基于加权抽样的负采样方法。
简单来说,就是在上述方法(span-level的数据标注,生成Sk的集合)的基础上,将均分分布抽样改成了加权抽样,这样可以使y'集合中的未标注实体进一步降低。得到抽样结果之后,再和正样本一起加入模型进行训练。
具体加权抽样方法如下:
加权方法依赖于两个权重参数:uij(不确定性得分) 和 vij(非实体分数)
公式如下:
不确定性得分uij 较高表示模型对其预测的分数很低,表明候选(i,j,O)很可能是一个负实例; 非实体分数vij 较高意味着候选(i,j,O)是未标记实体的可能性较低。
基于这两个参数,我们就可以在抽取的时候进行加权控制:
其中µ≥1放大非实体分数vij 的影响,T≥1控制抽样分布的平滑性。设置高的µ以确保对未标记实体具有良好的鲁棒性。T为√(C−c),其中C为训练epoch的个数,0≤c<C为当前epoch的个数。
需要注意的是,由于NER模型在训练初期是不准确的,所以更均匀的抽样分布(即更高的T)更安全,随着训练阶段的推进,T会降低,抽取权重也会发生变化。
理想情况下,这种加权的抽样分布为负实例设置高概率,为未标记实体设置低概率。前文中提到的问题就可以很好地解决。此外,两个权重参数:uij 和 vij是通过NER模型自适应学习的,不需要借助外部资源。
参考文献
- ↑ Span-based Joint Entity and Relation Extraction with Transformer Pre-training https://arxiv.org/abs/1909.07755
- ↑ 2.0 2.1 Empirical Analysis of Unlabeled Entity Problem in Named Entity Recognition https://arxiv.org/abs/2012.05426
- ↑ 3.0 3.1 Rethinking Negative Sampling for Unlabeled Entity Problem in Named Entity Recognition https://arxiv.org/abs/2108.11607
本分类目前不含有任何页面或媒体文件。