分类:NER以及RE的负采样方法

来自Big Physics
Luohuiying讨论 | 贡献2021年12月14日 (二) 10:46的版本 →‎NER的负采样

负采样

自然语言处理领域中,判断两个单词是不是一对上下文词(context)与目标词(target),如果是一对,则是正样本,如果不是一对,则是负样本。

采样得到一个上下文词和一个目标词,生成一个正样本(positive example),生成一个负样本(negative example),则是用与正样本相同的上下文词,再在字典中随机选择一个单词,这就是负采样(negative sampling)。

比如给定一句话“这是去上学的班车”,则对这句话进行正采样,得到上下文“上”和目标词“学”,则这两个字就是正样本。 负样本的采样需要选定同样的“上”,然后在训练的字典中任意取另一个字,“梦”、“目”,这一对就构成负样本。 训练需要正样本和负样本同时存在。

NER的负采样

  • 1. Empirical Analysis of Unlabeled Entity Problem in Named Entity Recognition

未标注会造成两类问题:1)降低正样本量。2)将未标注视为负样本。1 可以通过 adaptive pretrain 缓解,而 2 后果却更严重,会对于模型造成误导,怎么消除这种误导呢,那就是负采样。 本文 NER 框架使用了片段排列分类的框架,即每个片段都会有一个实体类型进行分类,也更适合负采样。

采样过程如下图所示:

Negative Sampling.jpg


采样进行loss计算的非实体片段共有λn个,n为序列长度,λ为0.1,0.2...0.9.

负采样对于所有非实体的片段组合使用下采样,因为非实体的片段组合中有可能存在正样本,所以负采样一定程度能够缓解未标注问题。注意是缓解不是解决。损失函数如下: LOSS.jpg

论文也通过公式证明:通过负采样,可以将未标注实体当作负样本训练、维持在一个很低水平。 Prove.jpg

上述公式表明:通过负采样,不将未标注实体作为负样本的概率大于 1-2/(n-5),可以大幅缓解未标注实体导致NER指标下降。


  • 2. Rethinking Negative Sampling for Unlabeled Entity Problem in Named Entity Recognition

负采样的一个性质是,对于一个句子,只有很小一部分的负采样用于训练。因此,有负采样实例并没有应用于NER模型。这会一定程度上导致模型的泛化能力的降低。除此之外,在实验中,当无标签实体对于整个模型的性能影响较大时,误采样率是不可忽略的。为了解决这些问题,本论文的研究人员提出了负采样的加权抽样分布。

首先需要知道两个权重参数:uij 和 vij

U ij.jpg V ij.jpg

不确定性得分uij 较高表示模型对其预测的分数很低,表明候选(i,j,O)很可能是一个负实例; 非实体分数vij 较高意味着候选(i,j,O)是未标记实体的可能性较低。

在此基础上,研究人员设计了一个加权抽样分布来代替负抽样中使用的均匀抽样分布: Weighted.jpg

其中µ≥1放大非实体分数vij 的影响,T≥1控制抽样分布的平滑性。设置高的µ以确保对未标记实体具有良好的鲁棒性。T安排为√(C−c),其中C为训练epoch的个数,0≤c<C为当前epoch的个数。由于NER模型在训练初期是不准确的,所以更均匀的抽样分布(即更高的T)更安全。

理想情况下,这种加权的抽样分布为负实例设置高概率,为未标记实体设置低概率。前文中提到的问题就可以很好地解决。此外,两个权重参数:uij 和 vij是通过NER模型自适应学习的,不需要借助外部资源。


Span-based model:这里的Span可以理解成Ngram,对Ngram进行分类进行的Named entity recognition. 目前大多命名实体识别的负采样都是基于Span-level来进行的,具体做法有:

  • 对每一个可能的Ngram进行分类,将所有被分类为None的Span作为负样本集合,在该集合中随机抽样

本分类目前不含有任何页面或媒体文件。