李智恒 基于对抗网络的命名实体识别方法
新闻来源:IR实验室       发布时间:2019/10/9 15:55:21


1.引言

  对抗思想被人们熟知源于生成对抗网络[1]在图像领域的兴起。作为经典的生成模型,生成对抗网络中通过生成器与判别器之间的零和博弈达到生成符合真实数据分布的虚假数据。如图1所示,生成对抗网络中左侧的判别器实际上是一个二分类器,用于区分输入数据是真实数据还是生成器生成的虚假数据。其损失函数如下所示:

image.png     1

  此处存在的最大最小博弈在于:判别器D希望最大化真实数据x与生成数据G(z)之间的差异,而G希望最小化二者差异使得D无法分辨。

image.png

图1 生成对抗网络示意图

  对抗思想已被应用于很多领域:在领域适应方向,Gannin等人致力于利用对抗学习策略将源领域迁移到相关的目标领域[2];在经典自然语言处理任务中,Liu等人将原始的二分类对抗训练扩展到多类别,并实现基于多任务学习的文本分类方法[3];Cao等人利用对抗思想将中文分词任务与中文命名实体识别任务相结合,从而提升中文命名实体识别的性能[4]。

  在后续章节中我们先介绍对抗思想在领域适应方向的应用,以及梯度反转层的概念。之后介绍两篇论文,均为利用对抗思想解决少量标注语料上的命名实体识别问题。这两篇论文分别发表于EMNLP 2018和ACL 2019。

2.领域适应方向上的对抗思想和梯度反转层

通过反向传播实现无监督领域适应[2]这篇文章利用对抗思想实现从源领域到目标域的迁移学习,其中提出的梯度反转层实现了对抗思想中的最大最小博弈。

文中基于4个假设:

(1)模型的输入实例image.png有对应的确定的标签image.png

(2)假设image.png上存在两个分布S(x,y)和T(x,y);

(3)假设这两个都是复杂且未知的,并且二者之间相似但是不同;

(4)训练目标为,给定目标域输入x,模型能够预测出它对应的标签y。

这里,模型可以对来自源域的大量标记数据和来自目标域的大量未标记数据进行训练。其中,目标域的实例标签未知。

模型结构图如图2所示,整个模型分为三个部分:绿色——特征提取器,蓝色——标签预测器,粉色——领域分类器。该模型的目标是希望通过特征提取器之后,源领域提取的特征和目标领域提取的特征尽可能的相似,从而提取出领域不变特征。

image.png

图2 领域适应方法模型结构图

以文中输入为例,在正向训练过程中,首先,输入x为图片,通过绿色特征提取器进行卷积、池化等一系列特征提取的操作,得到x对应的特征f。接下来,标签预测器是一个分类器,在利用源领域数据进行标签预测器训练的过程中,x对应的特征f输入给标签预测器,进行标签预测。粉色部分的输入与生成对抗网络的判别器D相似,其本质为一个而分类器,用于区分输入特征f来自源领域还是目标领域。

在反向传播过程中,标签预测器与普通的分类器一样。而从领域分类器到特征提取器的反向传播过程中间会经过梯度反转层(gradient reversal layer, GRL)。梯度反转层中没有参数,其作用在于正向传播的时候记录模型参数,反向传播的时候,经过该反转层的梯度乘上-λ。在这里,领域分类器和特征提取器之间存在一个最大最小博弈,即领域分类器希望最大化来自不同领域特征的差异,而特征提取器希望最小化该差异。

图3为文中实验数据,可以看出,源领域和目标领域存在一定差异,但是二者存在相似的特征和相同的分类标签。图4左侧为特征提取器的输出,在经过对抗学习的领域适应之后,源领域和目标领域的特征明显融合,说明特征提取器学到了领域不变特征。图4右侧为标签预测器的特征输出,在经过领域适应之后,可以看到红色点代表的目标域能够很好的被预测器区分。

image.png

图3 领域适应方法实验数据

image.png

图4 领域适应方法特征可视化

3.基于对抗迁移的中文命名实体识别

3.1 任务描述

中文命名实体识别标注语料数量较少,而可获得的中文分词的标注语料数量比较大。同时,中文分词任务和中文命名实体识别任务具有一定的相似性。如图5所示,中文分词任务和中文命名实体识别任务中的一些词语的边界信息有相似之处。因此,Cao等人[4]希望利用中文分词任务促进提升中文命名实体识别任务的性能。文中提出了一种基于对抗学习的框架,用于学习中文分词任务和中文命名实体识别任务之间的相似性。同时,利用自注意力机制获取全局特征。由于本文关注点为对抗思想的运用,因此自注意力机制这部分不做讲解。

image.png

图5 中文分词任务和中文命名实体识别任务实例

3.2 模型结构

文章提出的模型结构如图6所示,该模型整体分为3部分。其中左右分别为两个对称的序列标注模型。文中采用双向LSTM-CRF作为基础模型。值得注意的是,CRF的输入包括两部分:私有BiLSTM(粉色和绿色部分)和共享BiLSTM(蓝色部分)的输出。其中,共享BiLSTM也作为中间任务判别器的特征提取器。中间的任务判别器为一个而分类器,与前文中的领域分类器一样,用于区分输入特征来自哪个任务。在任务判别器中用到了前文提到的梯度反转层。这里的梯度反转层与前文作用一致,即实现分类器与特征提取器的最大最小博弈。其损失函数如下:

image.png   (2)

image.png

图6 基于对抗迁移的中文命名实体识别模型示意图

3.3 实验结果

实验数据如表1所示,其中MSR为中文分词语料,WeiboNER与SighanNER为中文命名实体识别语料。命名实体识别语料中均包含人名,地名,机构名,SighanNER还包括地缘政治实体。可以看出,WeiboNER语料规模远小于另外两个语料。

表1 基于对抗迁移的中文命名实体识别实验数据

image.png

表2为WeiboNER数据集上基于对抗迁移的方法与其他方法比较的实验结果,可以看到与基础模型相比,对抗迁移方法取得很好的效果。表3为WeiboNER更新的数据集上的实验结果。可以得出结论,对抗方法对召回率的提升很有效。这是因为共享特征提取器从中文分词任务的数据中学习到了更多特征,有利于召回更多实体。表4为模型在SighanNER数据集上的结果。

表5为简化模型的性能,可以看到,使用迁移和对抗方法均可提升召回率。但是在WeiboNER语料上,使用对抗方法效果并没有使用迁移方法效果好。由此可以看出,对抗迁移方法并不是在所有语料上均有提升,要具体问题具体分析。

表2 WeiboNER数据集上与其他方法比较结果

image.png

表3 WeiboNER更新数据集上与其他方法比较结果

image.png

表4 SighanNER数据集上与其他方法比较结果

image.png

表5模型消融实验

image.png

图7为实验结果分析,与基线方法相比,对抗迁移方法能够更好地找到命名实体的边界位置。同时自注意力机制对于纠正实体标签也有一定效果。

image.png

图7 实验结果分析

3.4 总结

使用对抗迁移方法首先要有至少两个领域或者任务的数据集,即源领域和目标领域。目前已有方法尝试多个领域之间进行对抗迁移,后续也可在此方向上进行更进一步尝试。此外,源领域与目标领域要求要有相似性,同时也要有不同点。若源领域与目标领域完全相同,对抗的思想就没有意义,反而迁移学习或者直接加入训练数据可以获得更好结果。

4.DATNet

4.1 任务描述

与上一篇文章类似,Zhou等人同样针对小数据集上的命名实体识别任务,提出了一种双对抗迁移网络,命名为DATNet[5]。本文针对的问题为:(1)低资源的命名实体识别问题;(2)不同领域的表达不同,而之前的工作忽略不同的表达进行跨语言或者跨领域迁移;(3)利用高资源的数据进行训练时,高资源的训练数据往往多于低资源,模型可能会倾向于学习更多高资源的特征。

4.2 模型结构

图8为DATNet模型结构图,其中(a)为经典的双向LSTM-CRF模型,其输入为词向量与字符向量的拼接。该模型也是本文模型的基础框架结构。在(a)的基础上,提出(b)和(c)模型。(b)模型与前文提到的中文命名实体识别的对抗迁移框架很相似,均为左右对称结构。不同点在于,本文模型的判别器(GRAD)针对源领域和目标领域数据不平衡问题和易分类实例导致损失偏向问题进行了改进。(b)和(c)的差异在于是否用到私有的特征提取器。(c)中只有一个共有特征提取器,它学到的特征不再只有共有特征,而是包含了源领域和目标领域的私有特征的。因为在反向更新过程中,共有特征提取器会被三部分损失函数共同更新。

image.png

图8 DATNet模型结构示意图

本文创新点之一是改进领域判别器。由于源领域标注数据一般多于目标领域,因此,在训练模型的时候,模型会偏向学习源领域的特征。另外,对于一些容易被判别器区分的实例,它们的特征过于明显,会使模型偏向于学习更多这样的明显特征。针对上述两个问题,本文提出GRAD加以解决。其目标函数如下:

image.png         (3)

其中,α用于平衡模型对领域的依赖。当α变小时,强制模型学习更多的目标领域的特征。同理,image.png为预测概率值,image.png越大说明输入实例以极大概率被分成源领域。这里用image.png控制模型对这种易于分类的实例的学习。本文中γ=2。

另一方面,为了提升模型的泛化能力,本文引入了对抗训练的方法。对抗训练是利用普通训练样本与对抗样本共同训练模型的方法。这里对抗样本是通过普通训练样本叠加一个微小扰动得到的,该对抗样本无法扰乱人类判断却可以达到扰乱模型预测结果的目的。想要得到对抗样本,求出这个微小扰动是关键,因为不是任意一个微小扰动都会达到扰乱模型预测结果的效果。求出对抗样本的理论方法为固定模型参数,在反向传播时更新输入。这种方法在训练模型中一般很难达到,因此本文用一种近似估计的方法,扰动解法如下:

image.png     (4)

image.png    (5)

其中image.png为所求的微小扰动,ε为超参,要求image.png,g是模型梯度。得到这个微小扰动之后,叠加到输入x上就可以得到对抗样本image.png。最终的GRAD的损失函数为:

image.png  (6)

4.3 实验结果

表6为实验数据,其中CoNLL-2003为源领域数据,CoNLL-2002为跨语言目标数据,WNUT-2016和WNUT-2017为跨领域目标数据。可以看到,跨领域目标数据规模远小于源领域数据。

表7是和其他先进方法对比实验结果。可以看到,文中基础模型和其他先进方法对比,取得了可比的效果。文中提出的DATNet模型在基础模型上有了很大的提升。另外,在跨语言迁移任务上,DATNet-P效果明显优于DATNet-F。而DATNet-F在跨领域数据集上效果更好。

表6 DATNet实验数据

image.png

表7 与其他先进方法对比

image.png

从图9中横坐标为目标领域上的数据量。随着数据量的增长,所有模型的性能都有所提升。另外,加入对抗训练是有效的,尤其是当目标领域数据少的时候,DATNet明显优于基础模型。

image.png

图9 对抗训练效果对比

表8为跨语言和跨领域实验在小规模数据集上的结果。可以得出结论,在跨语言大数据上,DATNet-P性能优于DATNet-F。实际上1000条句子数的训练规模并不很大,因此,领域特征对实验结果的影响可能更多于目标域训练数据的规模。

表8 小数据规模上的实验结果

image.png

图10是将共享LSTM层的输出特征可视化的结果。可以看到加入对抗判别器之后源领域与目标领域之间与部分重叠,而加入GRAD之后,重叠部分分布更为均衡。

image.png

图10 对抗迁移方法特征可视化

表9为消融实验结果,可以看到加入对抗判别器之后模型的性能提升效果并不明显,但是加入对抗训练之后模型性能的提升效果更为明显。

表9 消融实验

image.png

表10 α参数对实验结果的影响

image.png

表11 α参数对实验结果的影响

image.png

表10中展示了是GRAD的损失函数中的α对实验结果的影响。可以看到,目标领域训练集多的时候,需要α更大以减少对目标领域训练数据的依赖。表11为ε对实验结果的应影响,当训练数据少的时候需要更大的ε来产生扰动,从而产生对抗样本来防止过拟合。

4.4 总结

针对低资源领域的命名实体识别问题,本文提出了一种双对抗深度模型框架来提升其性能。本文提出的框架在整体上与Cao等人提出的对抗迁移学习框架相似,只是在细微处进行了改进:1.针对源领域与目标领域之间的数据不平衡问题和易分类的实例对损失函数的偏向问题,提出了GRAD的方法,加以改进;2.加入对抗训练方法提升模型的泛化能力。实际上,无论是哪里的赶紧,应用对抗思想的时候一定要注意源领域与目标领域训练数据的相似性与不同点,针对具体问题设计适合的模型加以解决。

5. 参考文献

[1]I. Goodfellow et al., “Generative Adversarial Nets,” in Advances in neural information processing systems, 2014, pp. 2672–2680.

[2]Y. Ganin and V. Lempitsky, “Unsupervised Domain Adaptation by Backpropagation,” no. i, 2014.

[3]P. Liu, X. Qiu, and X. Huang, “Adversarial Multi-task Learning for Text Classification,” 2017.

[4]P. Cao, Y. Chen, K. Liu, J. Zhao, and S. Liu, “Adversarial Transfer Learning for Chinese Named Entity Recognition with Self-Attention Mechanism,” in Proceedings ofthe 2018 Conference on Empirical Methods in Natural Language Processing, 2018, pp. 182–192.

[5]J. T. Zhou et al., “Dual Adversarial Neural Transfer for Low-Resource Named Entity Recognition,” Proc. 57th Annu. Meet. Assoc. Comput. Linguist., pp. 3461–3471, 2019.