EMNLP21 - Few-Shot Named Entity Recognition: An Empirical Baseline Study

Huang J, Li C, Subudhi K, et al. Few-Shot Named Entity Recognition: An Empirical Baseline Study[C]//Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing. 2021: 10408-10423. EMNLP 2021.

Website: https://few-shot-ner-enchmark.github.io/index.html

Abstract

  • 基于Transformer的自监督预训练语言模型(PLMs),本文用了三种完全不同的方案提升小样本NER模型的泛化能力

    • 元学习:为不同的实体类构造原型网络
    • 特定任务的监督预训练
    • 利用领域内无标签数据进行自训练
  • 本文在10个公共NER数据集上,大量实验表明:

    • 在小样本中,本文提出的NER方案显著改进或优于常规方案(基于PLMs预训练 + 微调的模型)
    • 在小样本或无训练的情况下,本文创造了SOTA的结果

Introduction

  • 用三种完全不同的方法,提高 PLMs 模型的泛化能力:

    • 为每个不同的实体创建原型表示,并以最近邻原则进行标注
    • 重复在 web 数据中预训练
    • 通过自训练的方式标注无标签数据,然后在有限的带标签数据中进行半监督学习(Xie et al., 2020),
  • 本文主要贡献:

    • 对小样本NER做了系统的研究,研究了三种不同的方法的组合
    • 在10个数据集上,对这三种方法做了彻底的对比
    • 对比目前的小样本和无训练NER,本文提出的方法达到了SOTA表现
  • 本文研究建议:

    • 带噪音的监督预训练可以显著提高NER的准确率
    • 当无标签数据所占比例大时,自监督训练一直能够提升小样本学习的效果
    • 原型网络学习在不同数据集上表现不一样,在标签数据少或者无训练条件下给出新实体类型的时候会有效

Method

Prototype-based Methods

基于下面这篇论文构建原型网络
Snell J, Swersky K, Zemel R S. Prototypical networks for few-shot learning[J]. ACL 2017.

原型核心思想:通过计算 support set 中的嵌入中心,然后衡量新样本与这些中心的距离来完成分类。

  • support set:包含少量标注的样本
  • query set:包含未标注样本,和support set的样本空间一致
  • 计算嵌入中心公式,简单的取平均
    • S k S_k Sk:类别为 k 的 support set
    • f θ f_θ fθ:嵌入函数
    • x i x_i xi:输入
      c k = 1 ∣ S k ∣ ∑ i f θ ( x i ) c_k = \frac{1}{|S_k|} \sum_i f_θ(x_i) ck=Sk1ifθ(xi)
  • 计算新样本到每个类别k的嵌入中心的距离: d ( f θ ( x ) , c k ) d(f_θ(x), c_k) d(fθ(x),ck),然后再用softmax对距离做映射,得到每个类别的概率 y ^ i = s o f t m a x ( l 1 , . . . , l k ) \hat y_i = softmax(l_1,...,l_k) y^i=softmax(l1,...,lk)
  • 训练目标优化交叉熵损失函数:
    • y y y:真实值
    • y ^ \hat y y^:预测值
      L ( y , y ^ ) = − ∑ i = 1 N ′ y i l o g y ^ i L(y, \hat y) = - \sum^{N'}_{i = 1}y_i log\hat y_i L(y,y^)=i=1Nyilogy^i
Noisy Supervised Pre-training
  • PLMs主要通过 mask 的方式进行训练,对所有词一视同仁,训练目标和具体任务无关。而NER和任务强相关,标注的词有重点
  • 作者的idea是:在PLMs上提高NER实体的权重
  • 使用的数据集是WiFiNE,一个大规模包含噪音的web数据,可以用来做noisy supervised pretraining(NSP)

NSP的两个预训练目标(其实都是softmax):

  • 使用线性分类器的目标: q ( y ∣ x ) = Softmax ⁡ ( W ⋅ f θ 0 ( x ) + b ) q({y} | {x})=\operatorname{Softmax}\left(\mathbf{W} \cdot f_{\theta_{0}}(\boldsymbol{x})+\boldsymbol{b}\right) q(yx)=Softmax(Wfθ0(x)+b)
  • 原型网络的目标: q ( y = I m ∣ x ) = exp ⁡ ( − d ( f θ 0 ( x ) , c m ) ) ∑ m ′ exp ⁡ ( − d ( f θ 0 ( x ) , c m ′ ) ) q\left({y}=\mathbb{I}_{m} \mid {x}\right)=\frac{\exp \left(-d\left(f_{\theta_{0}}(\boldsymbol{x}), \boldsymbol{c}_{m}\right)\right)}{\sum_{m^{\prime}} \exp \left(-d\left(f_{\theta_{0}}(\boldsymbol{x}), \boldsymbol{c}_{m^{\prime}}\right)\right)} q(y=Imx)=mexp(d(fθ0(x),cm))exp(d(fθ0(x),cm))
  • 对比两个目标,实验结果发现线性分类器对预训练的提升更显著
Self-training

采用最新的半监督 self-training 模式,算法步骤如下:

  1. 用标注好的数据 D L D^L DL,通过交叉熵学习 teacher 模型 θ t e a θ^{tea} θtea
  2. 使用 teacher 模型,对未标注数据生成软标签 soft labels
    y ~ i = f θ tea  ( x ~ i ) , ∀ x ~ i ∈ D U \tilde{y}_{i}=f_{\theta^{\text {tea }}}\left(\tilde{x}_{i}\right), \forall \tilde{x}_{i} \in \mathcal{D}^{\mathrm{U}} y~i=fθtea (x~i),x~iDU
  3. 用带标签数据和第二步生成的 soft labels 数据,用交叉熵学习 student 模型 θ s t u θ^{stu} θstu
    L S T = 1 ∣ D L ∣ ∑ x i ∈ D L L ( f θ s t u ( x i ) , y i ) + λ U ∣ D U ∣ ∑ x ~ i ∈ D U L ( f θ s t u ( x ~ i ) , y ~ i ) \begin{aligned} \mathcal{L}_{\mathrm{ST}}=& \frac{1}{\left|\mathcal{D}^{\mathrm{L}}\right|} \sum_{x_{i} \in \mathcal{D}^{\mathrm{L}}} \mathcal{L}\left(f_{\theta^{\mathrm{stu}}}\left(x_{i}\right), y_{i}\right) \\ &+\frac{\lambda_{\mathrm{U}}}{\left|\mathcal{D}^{\mathrm{U}}\right|} \sum_{\tilde{x}_{i} \in \mathcal{D}^{\mathrm{U}}} \mathcal{L}\left(f_{\theta^{\mathrm{stu}}}\left(\tilde{x}_{i}\right), \tilde{y}_{i}\right) \end{aligned} LST=DL1xiDLL(fθstu(xi),yi)+DUλUx~iDUL(fθstu(x~i),y~i)
  • 其中 λ U λ_U λU 是权重超参数

Experiments

  • 10个数据集描述如下:
    请添加图片描述

  • 模型缩写名如下:

    • LC:线性分类器
    • P:基础原型网络
    • NSP:噪音监督预训练
    • ST:自学习
  • 在10个数据集上分别做了6组对比实验,数据量有5-shot、10%、100%,实验结果如下:
    请添加图片描述
    实验结果表明:

  • 带噪音的监督学习预训练(NSP)在大部分数据集上表现都很好,特别是在 5-shot 的情况下。说明NSP能更好的抽取NER相关特征

  • 原型网络方法在带标签数据量特别少的情况下,比线性分类器要好

  • 先对无标签数据进行自训练 self-train,一般都必必直接微调要好

  • LC + NSP + ST 三种方法结合,效果最好

对比当前few-shot NER SOTA模型

当前few-shot NER SOTA模型包括:

  • StructShot:
  • L-TapNet+CDT:
  • SimBERT:BERT后接一个简单的最近邻分类器,作为基准

实验结果如下:
请添加图片描述

  • 最好的模型LC+NSP+ST相比于之前的SOTA模型StructShot提升了8个点的F1值
对比当前 training-free NER SOTA模型

两个 training-free NER 模型是:

  • Neighbor-tagging
  • Example-based,2020年SOTA

实验结果如下:
请添加图片描述

  • 本文给出的模型都取得了不错的效果,特别是在ATIS和MIT数据集上,效果拔群
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值